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

# Uganda National ID

> Verify a customer's identity using their Ugandan National Identification Number.

The Uganda National ID endpoint validates a customer's National Identification Number against Uganda's national registry and returns the associated personal details.

## Endpoint

```
POST /api/onboarding/uganda_kyc/national_id/
```

## Request

### Headers

| Header           | Value               | Required |
| ---------------- | ------------------- | -------- |
| `x-access-token` | Your API secret key | Yes      |
| `Content-Type`   | `application/json`  | Yes      |

### Body Parameters

| Parameter       | Type   | Required | Description                                                                   |
| --------------- | ------ | -------- | ----------------------------------------------------------------------------- |
| `national_id`   | string | Yes      | The customer's Ugandan National Identification Number (e.g. `NO0987654321BE`) |
| `surname`       | string | Yes      | Customer's surname                                                            |
| `given_name`    | string | Yes      | Customer's given name                                                         |
| `date_of_birth` | string | Yes      | Date of birth in `YYYY-MM-DD` format                                          |
| `document_id`   | string | Yes      | Document ID number                                                            |

### Example

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST "https://adhere-api.smartcomply.com/api/onboarding/uganda_kyc/national_id/" \
    -H "x-access-token: YOUR_SECRET_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "national_id": "NO0987654321BE",
      "surname": "Doe",
      "given_name": "John",
      "date_of_birth": "1990-01-01",
      "document_id": "1234567890"
    }'
  ```
</CodeGroup>

## Response

### 200 OK

| Field                | Type   | Description           |
| -------------------- | ------ | --------------------- |
| `data.national_id`   | string | National ID number    |
| `data.surname`       | string | Customer's surname    |
| `data.given_name`    | string | Customer's given name |
| `data.date_of_birth` | string | Date of birth         |
| `data.gender`        | string | Gender                |
| `data.nationality`   | string | Nationality           |

```json theme={null}
{
  "status": "success",
  "data": {
    "national_id": "NO0987654321BE",
    "surname": "Doe",
    "given_name": "John",
    "date_of_birth": "1990-01-01",
    "gender": "Male",
    "nationality": "Ugandan"
  },
  "message": "National ID details retrieved successfully"
}
```

### 400 Bad Request

```json theme={null}
{
  "status": "failed",
  "data": [],
  "message": "Missing required fields"
}
```

### 401 Unauthorized

```json theme={null}
{
  "status": "failed",
  "message": "Authentication credentials were not provided."
}
```


## OpenAPI

````yaml POST /api/onboarding/uganda_kyc/national_id/
openapi: 3.0.3
info:
  title: Adhere API
  description: >-
    Identity verification, credit checks, transaction monitoring, and loan fraud
    detection across Africa.
  version: 3.0.0
servers:
  - url: https://adhere-api.smartcomply.com
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Nigeria KYC
  - name: Kenya KYC
  - name: Ghana KYC
  - name: Rwanda KYC
  - name: Uganda KYC
  - name: Biometrics
  - name: Individual Credit
  - name: Business Credit
  - name: Transaction Monitoring
  - name: Transaction Screening
  - name: Transaction KYC
  - name: Loan Fraud
  - name: User Journey
paths:
  /api/onboarding/uganda_kyc/national_id/:
    post:
      tags:
        - Uganda KYC
      summary: Uganda National ID
      operationId: ugandaNationalId
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - national_id
                - surname
                - given_name
                - date_of_birth
                - document_id
              properties:
                national_id:
                  type: string
                surname:
                  type: string
                given_name:
                  type: string
                date_of_birth:
                  type: string
                  format: date
                  example: '1990-01-15'
                document_id:
                  type: string
                  description: Document serial number from the physical card
      responses:
        '200':
          description: National ID verified
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                example: failed
              data:
                type: array
                items: {}
              message:
                type: string
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                example: failed
              message:
                type: string
                example: Authentication credentials were not provided.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-access-token
      description: Your Adhere API secret key

````