---
title: "Registraduria validation - Colombian id"
url: "https://developer.incode.com/api-reference/api-validate-registraduria/"
section: "api-reference"
group: "API validations"
version: "v1.1"
status: "live"
endpoint: "POST /api/validate/registraduria"
---
# Registraduria validation - Colombian id

`POST /api/validate/registraduria`

Base URL: `https://demo-api.incodesmile.com` — Incode demo environment

Check for valid Colombian ID and return corresponding values of that person.
Optionally, you can set isForeign flag to true to check for foreign people living in Colombia.
An example could be a Mexican person with a Colombian ID.

## Path & query parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `api-version` | header | string | yes |  |

## Request body

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string |  |  |
| `emissionDate` | string (dd/mm/yyyy) |  | mandatory if isForeign is true, otherwise optional |
| `fullName` | string |  |  |
| `isForeign` | boolean |  |  |
| `nameBean` | NameBean |  |  |
| `nameBean.fullName` | string |  |  |
| `nameBean.fullNameNativeScript` | string |  |  |
| `nameBean.firstNameNativeScript` | string |  |  |
| `nameBean.paternalLastNameNativeScript` | string |  |  |
| `nameBean.maternalLastNameNativeScript` | string |  |  |
| `nameBean.machineReadableFullName` | string |  | Full name from Barcode or MRZ |
| `nameBean.firstName` | string |  |  |
| `nameBean.middleName` | string |  |  |
| `nameBean.givenName` | string |  |  |
| `nameBean.givenNameMrz` | string |  |  |
| `nameBean.nameSuffix` | string |  |  |
| `nameBean.paternalLastName` | string |  |  |
| `nameBean.maternalLastName` | string |  |  |
| `nameBean.lastNameMrz` | string |  |  |
| `nameBean.familyName` | string |  |  |

## Responses

### 200

Response: - data: Object with following fields. - anio_resolucion: Integer. - codigo_error_datos_cedula: Integer. - codigo_respuesta: Integer. - date: String. - departamento_expedicion: String. - descripcion_estado: String. - estado_cedula: Integer. - fecha_expedicion: String. - informacion_adicional: String. - municipio_expedicion: String. - nombre_completo: String. - nuip: Integer. - numero_resolucion: Integer. - particula: String. - primer_apellido: String. - primer_nombre: String. - segundo_apellido: String. - segundo_nombre: String. - error: String. - findings: String []. - status: Boolean. A response example for foreigners is: ``` { "data": { "ce": "456123", "estado": "VIGENTE", "fecha_expedicion": "02/10/2019", "fecha_nacimiento": "05/03/1956", "fecha_vencimiento": "01/10/2024", "nacionalidad": "CHILENA", "nombre_completo": "JUAN ALEJANDRO PEREZ LOPEZ" }, "error": "", "findings": [], "status": true } ```

### 400

Bad Request

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `timestamp` | integer (int64) |  | UTC timestamp in milliseconds |
| `status` | integer (int32) |  | Custom error code or HTTP status code |
| `error` | string |  | HTTP status error |
| `message` | string |  | Custom error message |
| `path` | string |  | Endpoint path |
| `details` | object |  | Custom error details |

## Code samples

Generated from this endpoint's method, path, and the conventional Incode headers. The base URL is the Incode demo environment; replace `<YOUR_API_KEY>` with a key for your region.

### cURL

```bash
curl -X POST https://demo-api.incodesmile.com/api/validate/registraduria \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "api-version: 1.0" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "",
    "emissionDate": "",
    "fullName": "",
    "isForeign": false,
    "nameBean": "",
    "nameBean.fullName": "",
    "nameBean.fullNameNativeScript": "",
    "nameBean.firstNameNativeScript": "",
    "nameBean.paternalLastNameNativeScript": "",
    "nameBean.maternalLastNameNativeScript": "",
    "nameBean.machineReadableFullName": "",
    "nameBean.firstName": "",
    "nameBean.middleName": "",
    "nameBean.givenName": "",
    "nameBean.givenNameMrz": "",
    "nameBean.nameSuffix": "",
    "nameBean.paternalLastName": "",
    "nameBean.maternalLastName": "",
    "nameBean.lastNameMrz": "",
    "nameBean.familyName": ""
  }'
```

### Node

```js
const res = await fetch("https://demo-api.incodesmile.com/api/validate/registraduria", {
  method: "POST",
  headers: {
      "x-api-key": "<YOUR_API_KEY>",
      "api-version": "1.0",
      "Content-Type": "application/json",
  },
    body: JSON.stringify({
      "id": "",
      "emissionDate": "",
      "fullName": "",
      "isForeign": false,
      "nameBean": "",
      "nameBean.fullName": "",
      "nameBean.fullNameNativeScript": "",
      "nameBean.firstNameNativeScript": "",
      "nameBean.paternalLastNameNativeScript": "",
      "nameBean.maternalLastNameNativeScript": "",
      "nameBean.machineReadableFullName": "",
      "nameBean.firstName": "",
      "nameBean.middleName": "",
      "nameBean.givenName": "",
      "nameBean.givenNameMrz": "",
      "nameBean.nameSuffix": "",
      "nameBean.paternalLastName": "",
      "nameBean.maternalLastName": "",
      "nameBean.lastNameMrz": "",
      "nameBean.familyName": ""
    }),
});
const data = await res.json();
```

### Python

```python
import requests

headers = {
    "x-api-key": "<YOUR_API_KEY>",
    "api-version": "1.0",
    "Content-Type": "application/json",
}
res = requests.post("https://demo-api.incodesmile.com/api/validate/registraduria", headers=headers, json={
  "id": "",
  "emissionDate": "",
  "fullName": "",
  "isForeign": False,
  "nameBean": "",
  "nameBean.fullName": "",
  "nameBean.fullNameNativeScript": "",
  "nameBean.firstNameNativeScript": "",
  "nameBean.paternalLastNameNativeScript": "",
  "nameBean.maternalLastNameNativeScript": "",
  "nameBean.machineReadableFullName": "",
  "nameBean.firstName": "",
  "nameBean.middleName": "",
  "nameBean.givenName": "",
  "nameBean.givenNameMrz": "",
  "nameBean.nameSuffix": "",
  "nameBean.paternalLastName": "",
  "nameBean.maternalLastName": "",
  "nameBean.lastNameMrz": "",
  "nameBean.familyName": ""
})
data = res.json()
```

### Java

```java
HttpRequest req = HttpRequest.newBuilder()
    .uri(URI.create("https://demo-api.incodesmile.com/api/validate/registraduria"))
    .header("x-api-key", "<YOUR_API_KEY>")
    .header("api-version", "1.0")
    .header("Content-Type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"id\": \"\",\n  \"emissionDate\": \"\",\n  \"fullName\": \"\",\n  \"isForeign\": false,\n  \"nameBean\": \"\",\n  \"nameBean.fullName\": \"\",\n  \"nameBean.fullNameNativeScript\": \"\",\n  \"nameBean.firstNameNativeScript\": \"\",\n  \"nameBean.paternalLastNameNativeScript\": \"\",\n  \"nameBean.maternalLastNameNativeScript\": \"\",\n  \"nameBean.machineReadableFullName\": \"\",\n  \"nameBean.firstName\": \"\",\n  \"nameBean.middleName\": \"\",\n  \"nameBean.givenName\": \"\",\n  \"nameBean.givenNameMrz\": \"\",\n  \"nameBean.nameSuffix\": \"\",\n  \"nameBean.paternalLastName\": \"\",\n  \"nameBean.maternalLastName\": \"\",\n  \"nameBean.lastNameMrz\": \"\",\n  \"nameBean.familyName\": \"\"\n}"))
    .build();
HttpResponse<String> res = HttpClient.newHttpClient()
    .send(req, HttpResponse.BodyHandlers.ofString());
```

### Example response

```json
{
  "success": true,
  "status": "OK"
}
```
