> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecontra.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# ID Verification API

> Standalone document verification — OCR, MRZ, NFC. Use when you only need a single document check (no full workflow).

## Request

```bash theme={null}
curl -X POST https://identity.contra.id/v1/id-verification \
  -H "x-api-key: $CONTRA_KEY" -H "Content-Type: application/json" \
  -d '{
    "country":   "GB",
    "id_type":   "PASSPORT",
    "image_front": "data:image/jpeg;base64,/9j/4AAQ…",
    "image_back":  null,
    "metadata": { "vendor_user_id": "user-123" }
  }'
```

| Body          | Type    | Required    | Description                                                             |
| ------------- | ------- | ----------- | ----------------------------------------------------------------------- |
| `country`     | ISO-2   | **yes**     | Issuing country code.                                                   |
| `id_type`     | enum    | **yes**     | `PASSPORT` · `DRIVERS_LICENSE` · `NATIONAL_ID` · `RESIDENCE_PERMIT` · … |
| `image_front` | string  | **yes**     | Base64-encoded JPEG of the front.                                       |
| `image_back`  | string  | conditional | Required for 2-sided documents.                                         |
| `enable_nfc`  | boolean | no          | Read NFC chip if available (mobile ePassports).                         |
| `metadata`    | object  | no          | Echoed back on the response.                                            |

## Response · 200

```json theme={null}
{
  "verification_id": "ver_b3f1c2a4",
  "status":          "passed",
  "result_code":     "0811",
  "checks": {
    "document_authentic":   "passed",
    "mrz_match":            "passed",
    "expiry_check":         "passed",
    "nfc_signature":        "skipped"
  },
  "issuing_country": "GB",
  "document_type":   "PASSPORT"
}
```

## Coverage

**4,000+ document types · 226 countries.** Combine with [Face Match](/api-reference/identity/face-match) for selfie-to-document verification.
