Verify — Kenya National ID
Extract and verify data from a Kenyan National ID card image. The endpoint runs OCR over the uploaded document and returns structured fields plus a confidence score.
Endpoint
POSThttps://gateway.startappz.co.ke/api/v1/sandbox/verify-national-id
Swap sandbox for live once you have production credentials.
Authentication
Send your credentials as headers:
| Header | Value |
|---|---|
X-API-Key | Your public key |
X-API-Secret | Your secret (shown once at issue time) |
Request parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
file |
File (multipart) | required | JPEG / PNG / PDF of the front of the National ID. Max 10 MB. |
Response parameters
All responses follow the standard envelope: { code, message, data }.
| Field | Type | Description |
|---|---|---|
code | String | Internal status code (e.g. 200.001). |
message | String | Human-readable status / error description. |
data | Object | Endpoint-specific payload (fields below). |
data.success |
Boolean | True when the document was successfully processed. |
data.verified |
Boolean | True when the document looks authentic. |
data.action |
String | Recommendation: `accept`, `review`, or `reject`. |
data.confidence |
Float | OCR confidence score (0–1). |
data.extracted.full_name |
String | Full name as printed on the ID. |
data.extracted.id_number |
String | Kenya National ID number (8 digits). |
data.extracted.date_of_birth |
String (YYYY-MM-DD) | Holder date of birth. |
data.extracted.sex |
String | `M` or `F`. |
Sandbox masking
By default, sandbox responses mask PII (names, IDs, dates, phone numbers). Accept the Data Processing Addendum once from your dashboard to see real data on all your sandbox keys.