DEVELOPER DOCUMENTATION

Documentation without the guesswork.

Inspect fictional payloads, compare response signals, and take a proposed contract into your integration review.

Start with the scope.

ValidAPI.com is a static reference website. The examples below are local, predefined fixtures—not results from an identity, postal, telephone, or government database. There is no live API endpoint, API key issuance, document upload, or account system here.

No personal information needed

Every example is fictional. The explorer only switches between included JSON fixtures. It does not accept, transmit, or verify information about a person. Read the complete scope.

Use the proposed shapes to discuss your client interface. Before connecting a real provider, replace the illustrative contract with its documented capabilities, authentication, terms, coverage, and failure behavior.

INSPECT · SWITCH · COPY

Example explorer

Choose a data family, then switch between request and response. A passed structure signal in these fixtures is a demonstration value, not the output of a running validator.

address.response.json
{
  "demo": true,
  "request_id": "sample_address_001",
  "status": "needs_review",
  "checks": {
    "structure": "pass",
    "postal_reference": "not_checked",
    "residence": "not_checked"
  },
  "reasons": [
    {
      "code": "example_only",
      "message": "Fictional fixture; no real-world validation performed."
    }
  ],
  "next_action": "review_requirements"
}
LOCAL EXAMPLE · NO NETWORK REQUESTJSON / UTF-8

Home address: fictional response example. These predefined signals illustrate a proposed contract, not a check of real data. View service scope.

Request design

The proposed contract uses JSON POST requests and a distinct route for each data shape. These are illustrative routes only. The downloadable specification points to a non-operational example hostname so it is not confused with an available ValidAPI service.

Data familyProposed routeFixture fields
Driver’s license/v1/validate/drivers-licensedocument_type, issuing_country, issuing_region, document_number
Passport/v1/validate/passportdocument_type, issuing_country, document_number, capture_source
Home address/v1/validate/addresscountry, line1, line2, city, region, postal_code
Mobile number/v1/validate/mobilecountry, number
Legal name/v1/validate/legal-namefull_name, purpose

Specify which context is required, what transformations are permitted, and how unknown properties are handled. Keep source comparison, document capture, and possession challenges separate from basic structure checks unless the real integration explicitly supports those methods.

Response model

Keep observations, overall workflow state, and next action distinct. In every published fixture, real-world checks remain unperformed and the overall state is needs_review. The broader states below are proposed contract vocabulary for discussion, not current service capabilities.

FieldTypeMeaning
demoBooleanAlways true in the published fixtures. Do not remove this label and present a fixture as a live result.
request_idStringA fictional correlation value. A production identifier would need defined generation and diagnostic rules.
statusEnumOverall workflow state under an explicit policy—not a universal identity verdict.
checksObjectIndependent findings such as pass, fail, not_checked, or unknown.
reasonsArrayStable codes plus an explanatory message. Do not rely on parsing the message to choose behavior.
next_actionEnumA proposed action such as correction, review, or retry. Map it to a real supported route.

Proposed overall states

StatusInterpretationNext-step principle
passAll checks required by the specified policy completed with an acceptable finding.Only proceed for the action covered by that policy.
needs_correctionThe submitted input needs a defined correction or missing context.Point to the field and explain what is needed.
needs_reviewEvidence is incomplete or a finding requires review.Keep the uncertainty visible; use the approved review process.
unsupportedThe requested method or input context is outside defined coverage.Offer an actually supported alternative.
unavailableAn operational condition prevented completion.Follow a bounded retry or pause policy, not an input accusation.
Not checked is not failed

A source that was never queried has not returned a mismatch. A successful HTTP response is also not evidence that a person, document, address, or telephone number was verified.

Errors & recovery

Keep malformed requests separate from completed checks with unresolved findings. Choose a documented problem envelope for request and operational errors, stable reason codes for client behavior, and reviewed wording for the person using the product.

Before adding automatic retries, decide which failures are transient and how repeated or delayed responses are reconciled. A missing country needs clarification; an unavailable provider needs an operational route. Neither should become an unexplained “invalid identity” message.

Before a production integration

A sample contract is not a production readiness assessment. Resolve these questions with the responsible engineering, product, security, and legal reviewers for the real implementation.

Review areaDecision to document
PurposeName the action and the evidence required to support it.
Actual providerConfirm the enabled methods, authorization, supported inputs, and geographical coverage.
ContractUse the actual service’s schema, authentication, error model, limits, and version policy.
SecurityKeep secrets out of browser code. Approve secure collection, access, and diagnostic controls.
Data lifecycleMap all data destinations. Agree on processing terms and operational retention and deletion rules.
RecoveryImplement correction, review, unsupported, and unavailable states with real destinations.
TestingExercise the complete workflow with fictional fixtures, including asynchronous and failure paths.
Public claimsReview every label, promise, price, and assurance statement against the deployed capability.

Take the reference with you.

These local files are included in the website package. They contain no credentials or real customer records.