Verify — Passport
Extract and verify the MRZ + photo page of an international passport.
Endpoint
POSThttps://gateway.startappz.co.ke/api/v1/sandbox/verify-passport
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 | Image / PDF of the passport bio-data page. |
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.verified |
Boolean | Authenticity check result. |
data.extracted.full_name |
String | Full name from the MRZ. |
data.extracted.passport_number |
String | Document number. |
data.extracted.nationality |
String | ISO 3166-1 alpha-3 country code. |
data.extracted.date_of_birth |
String (YYYY-MM-DD) | Holder date of birth. |
data.extracted.expiry_date |
String (YYYY-MM-DD) | Passport expiry date. |
data.extracted.sex |
String | `M` or `F`. |
Sandbox masking
By default, sandbox responses mask PII (names, IDs, dates, phone numbers). You can grant unmasked consent per key from your dashboard.