Appearance
Create NIRA Identity Retrieval Request
Creates a request to query the NIRA database using a NIN to provide an official confirmation of the customer's identity records. This is an asynchronous operation — submit the request, then poll the Get Result endpoint until requestStatus is Completed or Failed.
Retrieved Information:
- Surname
- Given Names
- Date of Birth
- Living Status
- Gender
Endpoints
| Environment | URL |
|---|---|
| Sandbox | https://api-test.streamline.laboremus.ug/idv/api/identities/verify?v=2.0 |
| Production | https://api.streamline.laboremus.ug/idv/api/identities/verify?v=2.0 |
Request
Request Type: POST
Authorization
All requests must be authenticated using OAuth 2.0 Client Credentials. Follow the steps in the Authentication section to obtain an access token.
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| nin | string | Yes | National Identity Number (14 characters) |
| externalReference | string or null | No | Your reference ID to track this request |
NIN Format
The NIN must be exactly 14 characters in length.
Example Request
Content-Type
application/json
bash
curl --request POST \
--url 'https://api.streamline.laboremus.ug/idv/api/records?v=2.0' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"nin": "CM83046701HJKL",
"externalReference": "my-ref-12345"
}'curl --request POST \
--url 'https://api.streamline.laboremus.ug/idv/api/records?v=2.0' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"nin": "CM83046701HJKL",
"externalReference": "my-ref-12345"
}'Example Request Body
json
{
"nin": "CM930121003EGE",
"externalReference": "my-ref-12345"
}{
"nin": "CM930121003EGE",
"externalReference": "my-ref-12345"
}Response
A successful request returns a 202 Accepted status. The request is queued for processing.
Response Fields
| Name | Type | Description |
|---|---|---|
| id | string | Unique identifier for this request |
| requestUri | string or null | URL to retrieve the request status and results |
| status | string | Current processing status of the request |
Example Response
Content-Type
application/json
json
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"requestUri": "/api/identities/497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Pending"
}{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"requestUri": "/api/identities/497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "Pending"
}Next Steps
Use the id or requestUri to poll for results using the Get National ID Retrieval Details endpoint.
Error Response
400 The request data is invalid
application/json
| Name | Type | Description |
|---|---|---|
| type | string or null | Type of error response |
| title | string or null | The title of the error response |
| status | integer(int32) | The status of the error response |
| traceId | string or null | The traceId of the error request producing the error |
| errors | object | Object defining the errors |
errors
| Name | Type | Description |
|---|---|---|
| property | Array of strings | The definition of the errors |
401 Not authorized to access the endpoint
application/json
| Name | Type | Description |
|---|---|---|
| error | object(Error) | Type of error response |
Error
| Name | Type | Description |
|---|---|---|
| code | string or null | The Error code |
| message | string or null | The Error message |
403 Refuse to authorize access to the endpoint
application/json
| Name | Type | Description |
|---|---|---|
| error | object(Error) | Type of error response |
Error
| Name | Type | Description |
|---|---|---|
| code | string or null | The Error code |
| message | string or null | The Error message |
404 Request does not exist
application/json
| Name | Type | Description |
|---|---|---|
| error | object(Error) | Type of error response |
Error
| Name | Type | Description |
|---|---|---|
| code | string or null | The Error code |
| message | string or null | The Error message |
500 The server encountered an unexpected error
application/json
| Name | Type | Description |
|---|---|---|
| error | object(Error) | Type of error response |
Error
| Name | Type | Description |
|---|---|---|
| code | string or null | The Error code |
| message | string or null | The Error message |