Skip to main content
POST
Verifies a US driver’s license or state ID card against the issuing state’s motor vehicle records, confirming the license number, the holder’s names and date of birth. Didit exposes this service through POST /v3/database-validation/ so you can verify the submitted data against the authoritative source and receive normalized match results. Input format: document_number takes the US driver’s license or state ID number (4-20 letters and digits; dashes and spaces allowed).

Coverage

  • Coverage: ~ 90%
  • Country: United States
  • Service ID: usa_driver_license_dmv
  • Data domain: Document
  • Category: DriverLicence

Inputs

  • Required inputs: first_name, last_name, document_number, driver_license_state
  • Optional inputs: middle_name, date_of_birth, date_of_issue, expiration_date, gender, document_type, vendor_data
  • Consent: Not required
  • Workflow availability: Available in workflow
  • Coverage: ~ 90%
  • Price: $1.99 per successful query

Body parameters

string
default:"USA"
required
ISO 3166-1 alpha-3 country code for this database service.Example: USA
string
default:"usa_driver_license_dmv"
required
Array containing this service ID. Pinning the service keeps the request scoped to this exact database.Example: usa_driver_license_dmv
string
default:"John"
required
Given name to validate.Example: John
string
default:"Doe"
required
Family name to validate.Example: Doe
string
default:"SAMPLE-DOC-12345"
required
Document number extracted from or provided by the user.Example: SAMPLE-DOC-12345
string
default:"Sample State"
required
State or region that issued the driver licence.Example: Sample State
string
Middle name, when available.Example: Demo
string
Date of birth in YYYY-MM-DD format.Example: 1990-01-01
string
date_of_issue value required by this database service.Example: 1990-01-01
string
expiration_date value required by this database service.Example: 1990-01-01
string
Gender value, when required by the database.Allowed values: M (male), F (female), X (other or unknown).Example: M
string
Document type to validate against this database service.Allowed values: DL (driver’s license), ID (national ID).Example: DL
string
default:"user-1234"
Your stable user reference for this person, such as your internal user ID. Didit uses it to link standalone checks to the same end user and reduce duplicate-detection noise.Example: user-1234

Input rules & validation notes

  • US driver’s license or state ID number (4-20 letters and digits; dashes and spaces allowed)
  • document_number must be 4-20 characters long.
  • document_number must match [A-Za-z0-9][A-Za-z0-9 -]{2,18}[A-Za-z0-9].
  • Send driver_license_state as the issuing state’s two-letter code (TX) or name (Texas).
  • California and Pennsylvania licenses are not checked by this service.

How to call it

Returned data

The exact fields surfaced in source_data depend on what the registry returns. The generated example for usa_driver_license_dmv currently documents this normalized shape:
  • date_of_birth
  • first_name
  • identification_number
  • last_name
  • middle_name

Pricing & SLAs

United States - Driver’s License (DMV) queries are billed only when Didit receives a conclusive result from the validation source.
  • Per-call price: $1.99 USD.
  • Billing: per successful query. You are not charged when the registry is unreachable, when required fields are missing, or when the request is rejected before reaching the source.
  • Latency: typical p95 < 2 s.
  • Availability: 99.9% per quarter on Didit’s side; downstream source availability varies by country and dataset.

Continue reading

Last modified on November 8, 2026