Dpaverify Docs

API Reference

All Dpaverify verification endpoints, records management, and billing.

Overview

All endpoints are under https://api.dpaverify.com/v1. Requests and responses are JSON. Every call requires a Bearer API key.

Running a Verification

Every verification type shares the same URL shape:

POST /v1/verifications/{apiCode}
API CodeCheck
identity.national-idNational ID, alien ID or passport (IPRS)
identity.driving-licenceDriving licence & PSV badge (NTSA)
vehicle.registrationVehicle records by number plate (NTSA)
tax.kra-pinKRA PIN by national ID number
business.registrationCompany / business name (BRS)
phone.ownershipSafaricom number registered to an ID
phone.sim-swapRecent SIM swap on a Safaricom number
phone.age-on-networkHow long a Safaricom number has been active
background.police-clearanceCertificate of good conduct (DCI)

Verification Response Shape

Every verification returns the same envelope:

{
  "id": "cmhd2k7q80001s60h3x9f2a1b",
  "api": "identity.national-id",
  "status": "COMPLETED",
  "environment": "LIVE",
  "result": { "found": true, ... },
  "error": null,
  "cost": "50",
  "latencyMs": 412,
  "createdAt": "2026-11-02T10:00:00.000Z",
  "completedAt": "2026-11-02T10:00:00.412Z"
}
FieldDescription
statusCOMPLETED (includes not-found answers), FAILED (source error, refunded), PENDING
result.foundfalse when the source holds no matching record — still COMPLETED, still charged
costKES charged as a decimal string; "0" for test keys and failed calls
errorSet only when status is FAILED; includes code and message

Try it Live

Open the API Playground to test any endpoint interactively with your API key — no separate client needed.

Import into Postman

Download Postman CollectionImport into Postman: File → Import and drop the downloaded file. Your api_key variable is pre-wired — set it once and all requests inherit it.

On this page