curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=COL" \
-F "services=col_cedula" \
-F "vendor_data=user-1234" \
-F "personal_number=111111" \
-F "date_of_issue=1990-01-01"
from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.database_validation.validate(
issuing_state="COL",
services=["col_cedula"],
personal_number="111111",
date_of_issue="1990-01-01",
vendor_data="user-1234",
)
print(result)
import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.databaseValidation.validate({
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234",
});
console.log(result);
ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.DatabaseValidation.Validate(ctx, didit.DatabaseValidationValidateParams{
IssuingState: "COL",
Services: didit.Some([]string{"col_cedula"}),
PersonalNumber: didit.String("111111"),
DateOfIssue: didit.String("1990-01-01"),
VendorData: didit.String("user-1234"),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)
import java.time.LocalDate;
import java.util.List;
import me.didit.Didit;
import me.didit.types.DatabaseValidationValidateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.databaseValidation().validate(DatabaseValidationValidateParams.builder()
.issuingState("COL")
.services(List.of("col_cedula"))
.personalNumber("111111")
.dateOfIssue(LocalDate.parse("1990-01-01"))
.vendorData("user-1234")
.build());
System.out.println(result);
<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->databaseValidation->validate([
'issuing_state' => 'COL',
'services' => ['col_cedula'],
'personal_number' => '111111',
'date_of_issue' => '1990-01-01',
'vendor_data' => 'user-1234',
]);
print_r($result->toArray());
require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.database_validation.validate(
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234"
)
puts result.to_h
using System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.DatabaseValidation.ValidateAsync(new DatabaseValidationValidateParams
{
IssuingState = "COL",
Services = new string[] { "col_cedula" },
PersonalNumber = "111111",
DateOfIssue = "1990-01-01",
VendorData = "user-1234",
});
Console.WriteLine(JsonSerializer.Serialize(result));
{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "COL",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": true
}
},
"validation": {
"identification_number": "full_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": "partial_match",
"validations": [
{
"outcome_code": "PARTIAL_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": false
}
},
"validation": {
"identification_number": "no_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {},
"validation": {}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "DOCUMENT_NOT_FOUND",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
🇨🇴 Kolumbien
Kolumbien Cédula-Verifizierung API: Datenbankvalidierung
Didit: Cédula-Prüfung in der autoritativen kolumbianischen Datenbank. Abrechnung pro Aufruf ab $0.20, ohne Verträge und Mindestabnahme.
POST
/
v3
/
database-validation
/
curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=COL" \
-F "services=col_cedula" \
-F "vendor_data=user-1234" \
-F "personal_number=111111" \
-F "date_of_issue=1990-01-01"
from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.database_validation.validate(
issuing_state="COL",
services=["col_cedula"],
personal_number="111111",
date_of_issue="1990-01-01",
vendor_data="user-1234",
)
print(result)
import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.databaseValidation.validate({
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234",
});
console.log(result);
ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.DatabaseValidation.Validate(ctx, didit.DatabaseValidationValidateParams{
IssuingState: "COL",
Services: didit.Some([]string{"col_cedula"}),
PersonalNumber: didit.String("111111"),
DateOfIssue: didit.String("1990-01-01"),
VendorData: didit.String("user-1234"),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)
import java.time.LocalDate;
import java.util.List;
import me.didit.Didit;
import me.didit.types.DatabaseValidationValidateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.databaseValidation().validate(DatabaseValidationValidateParams.builder()
.issuingState("COL")
.services(List.of("col_cedula"))
.personalNumber("111111")
.dateOfIssue(LocalDate.parse("1990-01-01"))
.vendorData("user-1234")
.build());
System.out.println(result);
<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->databaseValidation->validate([
'issuing_state' => 'COL',
'services' => ['col_cedula'],
'personal_number' => '111111',
'date_of_issue' => '1990-01-01',
'vendor_data' => 'user-1234',
]);
print_r($result->toArray());
require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.database_validation.validate(
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234"
)
puts result.to_h
using System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.DatabaseValidation.ValidateAsync(new DatabaseValidationValidateParams
{
IssuingState = "COL",
Services = new string[] { "col_cedula" },
PersonalNumber = "111111",
DateOfIssue = "1990-01-01",
VendorData = "user-1234",
});
Console.WriteLine(JsonSerializer.Serialize(result));
{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "COL",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": true
}
},
"validation": {
"identification_number": "full_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": "partial_match",
"validations": [
{
"outcome_code": "PARTIAL_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": false
}
},
"validation": {
"identification_number": "no_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {},
"validation": {}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "DOCUMENT_NOT_FOUND",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
Verifiziert die Identitätsdaten kolumbianischer Staatsbürger anhand der amtlichen Datensätze der Registraduría General de la Nación / ANI. Didit stellt diesen Dienst über
POST /v3/database-validation/ bereit, damit Sie die übermittelten Daten mit der maßgeblichen Quelle abgleichen und normierte Übereinstimmungsergebnisse erhalten. Eingabeformat: personal_number akzeptiert die kolumbianische Cédula (6-10 Ziffern).
Abdeckung
- Abdeckung: 90-95%
- Land: Kolumbien
- Service-ID:
col_cedula - Datenbereich: Identität
- Kategorie: NationalIDRegistry
Eingaben
| Feld | Pflicht | Beispiel |
|---|---|---|
personal_number | Ja | 111111 |
date_of_issue | Ja | 1990-01-01 |
first_name | Nein | John |
last_name | Nein | Doe |
vendor_data | Nein | user-1234 |
- Pflichteingaben:
personal_number,date_of_issue - Optionale Eingaben:
first_name,last_name,vendor_data - Einwilligung: nicht erforderlich
- Verfügbarkeit im Workflow: Im Workflow verfügbar
- Abdeckung: 90-95%
- Preis: $0.20 pro erfolgreicher Abfrage
Body-Parameter
string
Standard:"COL"
erforderlich
ISO-3166-1-Alpha-3-Ländercode für diesen Datenbankdienst.Beispiel:
COLstring
Standard:"col_cedula"
erforderlich
Array mit dieser Service-ID. Das Festlegen des Dienstes beschränkt die Anfrage auf genau diese Datenbank.Beispiel:
col_cedulastring
Standard:"111111"
erforderlich
Länderspezifische persönliche Identitätsnummer.Beispiel:
111111string
Standard:"1990-01-01"
erforderlich
Von diesem Datenbankdienst benötigter Wert für
date_of_issue.Beispiel: 1990-01-01string
Zu validierender Vorname.Beispiel:
Johnstring
Zu validierender Nachname.Beispiel:
Doestring
Standard:"user-1234"
Ihre stabile Benutzerreferenz für diese Person, etwa Ihre interne Benutzer-ID. Didit nutzt sie, um eigenständige Prüfungen demselben Endbenutzer zuzuordnen und Fehlalarme durch die Dublettenerkennung zu verringern.Beispiel:
user-1234Eingaberegeln und Validierungshinweise
- Kolumbianische Cédula (6-10 Ziffern)
personal_numberdarf nur Ziffern enthalten; entfernen Sie vor dem Senden der Anfrage Leerzeichen, Bindestriche und Satzzeichen.personal_numbermuss 6-10 Zeichen lang sein.
So rufen Sie es auf
curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=COL" \
-F "services=col_cedula" \
-F "vendor_data=user-1234" \
-F "personal_number=111111" \
-F "date_of_issue=1990-01-01"
from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.database_validation.validate(
issuing_state="COL",
services=["col_cedula"],
personal_number="111111",
date_of_issue="1990-01-01",
vendor_data="user-1234",
)
print(result)
import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.databaseValidation.validate({
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234",
});
console.log(result);
ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.DatabaseValidation.Validate(ctx, didit.DatabaseValidationValidateParams{
IssuingState: "COL",
Services: didit.Some([]string{"col_cedula"}),
PersonalNumber: didit.String("111111"),
DateOfIssue: didit.String("1990-01-01"),
VendorData: didit.String("user-1234"),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)
import java.time.LocalDate;
import java.util.List;
import me.didit.Didit;
import me.didit.types.DatabaseValidationValidateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.databaseValidation().validate(DatabaseValidationValidateParams.builder()
.issuingState("COL")
.services(List.of("col_cedula"))
.personalNumber("111111")
.dateOfIssue(LocalDate.parse("1990-01-01"))
.vendorData("user-1234")
.build());
System.out.println(result);
<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->databaseValidation->validate([
'issuing_state' => 'COL',
'services' => ['col_cedula'],
'personal_number' => '111111',
'date_of_issue' => '1990-01-01',
'vendor_data' => 'user-1234',
]);
print_r($result->toArray());
require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.database_validation.validate(
issuing_state: "COL",
services: ["col_cedula"],
personal_number: "111111",
date_of_issue: "1990-01-01",
vendor_data: "user-1234"
)
puts result.to_h
using System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.DatabaseValidation.ValidateAsync(new DatabaseValidationValidateParams
{
IssuingState = "COL",
Services = new string[] { "col_cedula" },
PersonalNumber = "111111",
DateOfIssue = "1990-01-01",
VendorData = "user-1234",
});
Console.WriteLine(JsonSerializer.Serialize(result));
Jeder erfolgreiche Aufruf liefert HTTP 200 zurück. Das Feld outcome_code zeigt an, was tatsächlich passiert ist, und unterscheidet beispielsweise eine echte biometrische Nichtübereinstimmung (BIOMETRIC_NO_MATCH) von einem Selfie, das nicht gelesen werden konnte (BIOMETRIC_IMAGE_UNUSABLE). Der angezeigte status ist der Standardstatus der Funktion; Ihre konfigurierten Aktionen für Teilübereinstimmung / Keine Übereinstimmung können ihn überschreiben.MATCH: Das Register hat die Identität bestätigt und jedes geprüfte Feld stimmte überein.{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "COL",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": true
}
},
"validation": {
"identification_number": "full_match"
}
}
]
}
PARTIAL_MATCH: Eines oder mehrere der Felder, die dieser Dienst vergleicht, stimmten nicht vollständig überein. In diesem Beispiel stimmte identification_number nicht überein.{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": "partial_match",
"validations": [
{
"outcome_code": "PARTIAL_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"cedula_status": "sample_value",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"verifications": {
"identification_number": false
}
},
"validation": {
"identification_number": "no_match"
}
}
]
}
NO_MATCH: Das Register hat für die übermittelten Daten keine Übereinstimmung zurückgegeben.{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
INCONCLUSIVE: Das Register konnte nicht feststellen, ob die Person mit den Daten übereinstimmt. Das Ergebnis ist tatsächlich ungewiss (die Person kann im Register enthalten sein oder nicht). Dies ist weder eine Nichtübereinstimmung noch ein technisches Bildproblem; es wird kein Feld bestätigt, daher ist match_type null, und die Prüfung wird zur Prüfung weitergeleitet.{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "COL",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {},
"validation": {}
}
]
}
DOCUMENT_NOT_FOUND: Die übermittelte Dokumentnummer entspricht keinem Datensatz im Register.{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "COL",
"match_type": "no_match",
"validations": [
{
"outcome_code": "DOCUMENT_NOT_FOUND",
"service_id": "col_cedula",
"service_name": "Colombia - Cédula verification",
"source_data": {
"identification_number": "NO_MATCH"
},
"validation": {
"identification_number": "no_match"
}
}
]
}
Rückgabedaten
Welche Felder genau insource_data erscheinen, hängt davon ab, was das Register zurückgibt. Das generierte Beispiel für col_cedula dokumentiert derzeit diese normalisierte Struktur:
cedula_statusfirst_nameidentification_numberlast_name
Preise und SLAs
Kolumbien: Cédula-Verifizierungsabfragen werden nur berechnet, wenn Didit ein eindeutiges Ergebnis von der Validierungsquelle erhält.- Preis pro Aufruf: $0.20 USD.
- Abrechnung: pro erfolgreicher Abfrage. Ihnen wird nichts berechnet, wenn das Register nicht erreichbar ist, Pflichtfelder fehlen oder die Anfrage abgelehnt wird, bevor sie die Quelle erreicht.
- Latenz: typischer p95 unter 2 s.
- Verfügbarkeit: 99.9% pro Quartal auf Seiten von Didit; die Verfügbarkeit nachgelagerter Quellen variiert je nach Land und Datensatz.
Weiterlesen
Zuletzt geändert am 7. November 2026