Skip to main content
POST
Document Verification — Kenya ID
Verify a customer’s Kenyan national ID card by uploading a photo — no manual ID entry required. OCR extraction plus a required face match against a selfie — no liveness check (no video, no blink/motion challenge).
This is a two-sided document — supply both document_front and document_back for the most complete extraction. Kenya has two ID card generations in circulation: the older laminated design and the newer “Maisha Card.” Fields specific to the Maisha Card (serial_number, place_of_issue, expiry date) will come back empty on an older card — that’s expected, not an error.
selfie_image is required — the face extracted from the document is compared against it. This is a still-image comparison (not liveness).

Endpoint

Request

Headers

Body Parameters

Example

Response

200 OK

Extra Fieldsextra_fields carries whatever else the card printed beyond the fields listed above: district_of_birth, and — only when document_back was supplied — district, division, location, sub_location, barcode_number, and the three MRZ lines (mrz_line1/mrz_line2/mrz_line3, exactly as printed, including < fill characters — not decoded). Only fields actually present on the card are included.
Face Match Notes — if the comparison service itself fails, attempted reflects whether a comparison was actually run and verified comes back null with a reason field explaining why — this is different from verified: false, which means the comparison ran and the faces didn’t match. A face-match problem never blocks the underlying document data — the rest of data is still returned.

400 Bad Request

401 Unauthorized

For a full list of error codes, see the Error Codes reference.

Authorizations

x-access-token
string
header
required

Your Adhere API secret key

Body

multipart/form-data
document_front
file
required

Front of the ID card. JPG or PNG, max 5MB.

document_back
file

Back of the card. Optional, but recommended — extraction may be less complete without it.

selfie_image
file

A selfie to compare against the face extracted from the document. JPG or PNG, max 5MB. Required.

Response

Document details extracted successfully

status
string
Example:

"success"

data
object
message
string
Example:

"Document details retrieved successfully"