VeroID

API Reference

Complete VeroID API documentation

Base URL: https://api.veroid.com.au

All requests must include the X-API-Key header.

Verify Document

Verify an identity document against official government records.

POST /v1/verify

Request Headers

HeaderRequiredDescription
Content-TypeYesMust be application/json
X-API-KeyYesYour API key

Common Request Fields

Every request requires documentType, consentAttestedAt, and consentVersion, plus the document-specific fields — see Document Types for per-document schemas.

FieldTypeRequiredDescription
documentTypestringYesOne of: drivers_licence, passport, medicare, visa, birth_certificate, citizenship, immicard, marriage_certificate, change_of_name_certificate, death_certificate, centrelink, asic_msic
consentAttestedAtstringYesISO 8601 datetime recording when the subject gave consent to their identity being verified (e.g. 2026-05-19T10:30:00Z). Required by DVS T&Cs clause 19.2.
consentVersionstringYesVersion of the privacy disclosure shown to the subject at the time of consent (e.g. "1.0"). Required by DVS T&Cs clause 19.3.
givenNamestringMost typesGiven name. Field limits vary by document type. Not used for Medicare (use fullName instead), Centrelink (use name), or ASIC/MSIC (use nameOnCard).
familyNamestringMost typesFamily name. Field limits vary by document type. Not used for Medicare, Centrelink, or ASIC/MSIC.
dateOfBirthstringMost typesFull date YYYY-MM-DD required for driver's licence, Centrelink, ASIC/MSIC, change of name certificate, and death certificate. Partial dates (YYYY, YYYY-MM) accepted for passport, visa, birth certificate, citizenship, immicard. Optional for Medicare.

Response (POST /v1/verify)

The real-time verification result is returned in the response body. The status and match fields reflect the DVS outcome and are only available here — they are not stored or retrievable via the GET endpoints.

{
  "success": true,
  "verificationId": "ver_abc123xyz",
  "documentType": "drivers_licence",
  "status": "success",
  "match": true,
  "responseCode": "Y",
  "message": "The data in the request matches data held by the issuer",
  "timestamp": "2024-01-15T10:30:00.000Z",
  "environment": "live",
  "requestId": "req_xyz789"
}

When responseCode is N or D with VersionNumber=2, an errors array may be present with field-level detail from the issuer:

{
  "success": true,
  "verificationId": "ver_abc123xyz",
  "status": "failed",
  "match": false,
  "responseCode": "N",
  "errors": [
    { "source": "DVS", "field": "FamilyName", "message": "Name does not match" }
  ]
}

DVS Response Codes

These are the only four codes returned by the DVS Hub (per DVS Interface Specification Table 22):

CodeStatusMeaning
YsuccessThe data in the request matches data held by the issuer
NfailedThe data in the request does not match data held by the issuer
DfailedA data error occurred at the issuer (e.g. record not held at source)
SerrorA system error occurred at the issuer or in the DVS Hub — safe to retry

GET Endpoint Status Values

The GET /v1/verify/:id and GET /v1/verify endpoints return a status field representing the processing state of the request — not the match outcome, which is only in the real-time POST response.

StatusMeaning
pendingVerification in progress
completedDVS processed the request and returned a result (Y, N, or D)
errorSystem error occurred (DVS returned S, or network/timeout failure)

Get Verification

Retrieve the processing state of a previous verification. The match result (match, responseCode) is not stored and will not appear here — it is only available in the real-time POST response. See DVS T&Cs 12.5.

GET /v1/verify/:id

Response (GET /v1/verify/:id)

{
  "verificationId": "ver_abc123xyz",
  "documentType": "drivers_licence",
  "status": "completed",
  "environment": "live",
  "requestedAt": "2026-05-19T10:30:00.000Z",
  "completedAt": "2026-05-19T10:30:01.200Z"
}

If the verification encountered a system error, an error object is included:

{
  "verificationId": "ver_abc123xyz",
  "documentType": "drivers_licence",
  "status": "error",
  "environment": "live",
  "requestedAt": "2026-05-19T10:30:00.000Z",
  "completedAt": "2026-05-19T10:30:01.200Z",
  "error": {
    "code": "DVS_SYSTEM_ERROR",
    "message": "A system error occurred at the issuer or in the Hub"
  }
}

List Verifications

List your recent verifications.

GET /v1/verify

Query Parameters

ParameterDefaultDescription
limit20Max results (1-100)
offset0Pagination offset

Health Check

Check API status. No authentication required.

GET /health