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
| Header | Required | Description |
|---|---|---|
Content-Type | Yes | Must be application/json |
X-API-Key | Yes | Your API key |
Common Request Fields
Every request requires documentType, consentAttestedAt, and consentVersion, plus the document-specific fields — see Document Types for per-document schemas.
| Field | Type | Required | Description |
|---|---|---|---|
documentType | string | Yes | One of: drivers_licence, passport, medicare, visa, birth_certificate, citizenship, immicard, marriage_certificate, change_of_name_certificate, death_certificate, centrelink, asic_msic |
consentAttestedAt | string | Yes | ISO 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. |
consentVersion | string | Yes | Version 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. |
givenName | string | Most types | Given name. Field limits vary by document type. Not used for Medicare (use fullName instead), Centrelink (use name), or ASIC/MSIC (use nameOnCard). |
familyName | string | Most types | Family name. Field limits vary by document type. Not used for Medicare, Centrelink, or ASIC/MSIC. |
dateOfBirth | string | Most types | Full 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):
| Code | Status | Meaning |
|---|---|---|
Y | success | The data in the request matches data held by the issuer |
N | failed | The data in the request does not match data held by the issuer |
D | failed | A data error occurred at the issuer (e.g. record not held at source) |
S | error | A 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.
| Status | Meaning |
|---|---|
pending | Verification in progress |
completed | DVS processed the request and returned a result (Y, N, or D) |
error | System 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
| Parameter | Default | Description |
|---|---|---|
limit | 20 | Max results (1-100) |
offset | 0 | Pagination offset |
Health Check
Check API status. No authentication required.
GET /health