curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=ZAF" \
-F "services=zaf_drivers_license" \
-F "vendor_data=user-1234" \
-F "national_id=SAMPLE-NID-12345" \
-F "last_name=Doe" \
-F "initials=JD" \
-F "licence_number=LIC123456"
{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "ZAF",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"expiration_date": "2030-05-31",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"vehicle_codes": "EB"
},
"validation": {
"full_name": "full_match",
"identification_number": "full_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": false
},
"validation": {}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": true
},
"validation": {}
}
]
}
🇿🇦 ЮАР
Проверка водительских прав ЮАР — API Didit
Проверка водительских прав ЮАР через Didit: запрос к авторитетной базе данных. Оплата за вызов от $0.80, без контрактов и минимумов.
POST
/
v3
/
database-validation
/
curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=ZAF" \
-F "services=zaf_drivers_license" \
-F "vendor_data=user-1234" \
-F "national_id=SAMPLE-NID-12345" \
-F "last_name=Doe" \
-F "initials=JD" \
-F "licence_number=LIC123456"
{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "ZAF",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"expiration_date": "2030-05-31",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"vehicle_codes": "EB"
},
"validation": {
"full_name": "full_match",
"identification_number": "full_match"
}
}
]
}
{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": false
},
"validation": {}
}
]
}
{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": true
},
"validation": {}
}
]
}
Проверяет южноафриканское водительское удостоверение по реестру NATIS / Департамента транспорта. Didit предоставляет эту услугу через
POST /v3/database-validation/, чтобы вы могли сверить переданные данные с первоисточником и получить нормализованные результаты сопоставления.
Охват
- Охват: —
- Страна: Южная Африка
- ID сервиса:
zaf_drivers_license - Домен данных: Идентификация
- Категория: DriverLicence
Входные данные
| Поле | Обязательное | Пример |
|---|---|---|
national_id | Да | SAMPLE-NID-12345 |
last_name | Да | Doe |
initials | Да | JD |
licence_number | Да | LIC123456 |
first_name | Нет | John |
date_of_birth | Нет | 1990-01-01 |
vendor_data | Нет | user-1234 |
- Обязательные входные данные:
national_id,last_name,initials,licence_number - Необязательные входные данные:
first_name,date_of_birth,vendor_data - Согласие: не требуется
- Доступность в сценарии: доступно в сценарии с сопоставлением полей
- Охват: —
- Цена: $0.80 за успешный запрос
initials и licence_number не печатаются на удостоверении личности, поэтому ни один шаг сам по себе их не создаёт. Соберите их из ответа в анкете, из поля, извлечённого с помощью Document AI, или из значения, которое вы передаёте при создании сессии, и сопоставьте каждое из них на шаге Database Validation. Пока они не сопоставлены, редактор сценария показывает эту услугу как отключённую и называет недостающий входной параметр. Во время выполнения недостающий параметр означает, что проверка пропускается до любого запроса, поэтому с вас не взимается плата за базу данных, к которой не удалось обратиться.
Параметры тела запроса
string
по умолчанию:"ZAF"
обязательно
Трёхбуквенный код страны по ISO 3166-1 alpha-3 для этой услуги базы данных.Пример:
ZAFstring
по умолчанию:"zaf_drivers_license"
обязательно
Массив, содержащий ID этой услуги. Указание этого сервиса ограничивает запрос именно этой базой данных.Пример:
zaf_drivers_licensestring
по умолчанию:"SAMPLE-NID-12345"
обязательно
Национальный идентификационный номер для этой услуги.Пример:
SAMPLE-NID-12345string
по умолчанию:"Doe"
обязательно
Фамилия для проверки.Пример:
Doestring
по умолчанию:"JD"
обязательно
Значение
initials, обязательное для этой услуги базы данных.Пример: JDstring
по умолчанию:"LIC123456"
обязательно
Значение
licence_number, обязательное для этой услуги базы данных.Пример: LIC123456string
Имя для проверки.Пример:
Johnstring
Дата рождения в формате
YYYY-MM-DD.Пример: 1990-01-01string
по умолчанию:"user-1234"
Ваш постоянный идентификатор этого человека, например внутренний ID пользователя. Didit использует его, чтобы связать отдельные проверки с одним и тем же конечным пользователем и снизить количество ложных срабатываний при поиске дубликатов.Пример:
user-1234Правила ввода и примечания по валидации
- Передавайте перечисленные выше поля точно так, как они были получены от пользователя или из документа.
- Didit проверяет обязательные поля до обращения к базе данных. Запросы, отклонённые до обращения к источнику, не тарифицируются.
Как выполнить вызов
curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=ZAF" \
-F "services=zaf_drivers_license" \
-F "vendor_data=user-1234" \
-F "national_id=SAMPLE-NID-12345" \
-F "last_name=Doe" \
-F "initials=JD" \
-F "licence_number=LIC123456"
Каждый успешный вызов возвращает HTTP 200. Поле outcome_code показывает, что произошло на самом деле. Например, оно отличает реальное несовпадение биометрии (BIOMETRIC_NO_MATCH) от селфи, которое не удалось прочитать (BIOMETRIC_IMAGE_UNUSABLE). Показанный status — статус функции по умолчанию. Ваши настроенные действия при частичном совпадении и при отсутствии совпадения могут его переопределить.MATCH — Реестр вернул запись о водительском удостоверении с этим номером, и переданные данные совпали с ней.{
"request_id": "req_01H…",
"status": "Approved",
"issuing_state": "ZAF",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"expiration_date": "2030-05-31",
"first_name": "John",
"identification_number": "SAMPLE-ID-12345",
"last_name": "Doe",
"vehicle_codes": "EB"
},
"validation": {
"full_name": "full_match",
"identification_number": "full_match"
}
}
]
}
NO_MATCH — Реестр выполнил поиск удостоверения и сообщил, что оно не действительно. Применяется ваше действие при отсутствии совпадения.{
"request_id": "req_01H…",
"status": "Declined",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "NO_MATCH",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": false
},
"validation": {}
}
]
}
INCONCLUSIVE — Реестр принял запрос, но не вернул запись о водительском удостоверении, с которой можно сравнить переданные данные. Поэтому ничего о самом удостоверении не подтверждено, и проверка отправляется на проверку. Так происходит и тогда, когда другая услуга в том же запросе совпала с этим человеком.{
"request_id": "req_01H…",
"status": "In Review",
"issuing_state": "ZAF",
"match_type": null,
"validations": [
{
"outcome_code": "INCONCLUSIVE",
"service_id": "zaf_drivers_license",
"service_name": "South Africa - Driving License Verification",
"source_data": {
"licence_valid": true
},
"validation": {}
}
]
}
Возвращаемые данные
Точный набор полей, которые попадают вsource_data, зависит от того, что возвращает реестр. Сгенерированный пример для zaf_drivers_license сейчас описывает такую нормализованную структуру:
expiration_datefirst_nameidentification_numberlast_namelicence_validvehicle_codes
Цены и SLA
Запросы проверки водительского удостоверения Южной Африки оплачиваются только тогда, когда Didit получает окончательный результат от источника проверки.- Цена за вызов: $0.80 USD.
- Оплата: за успешный запрос. Плата не взимается, если реестр недоступен, если не заполнены обязательные поля или если запрос отклонён до обращения к источнику.
- Задержка: типичное p95 менее 2 с.
- Доступность: 99.9% в квартал со стороны Didit. Доступность источника данных зависит от страны и набора данных.
Что означает каждый результат
Эта проверка запрашивает в реестре водительских удостоверений ЮАР номер водительского удостоверения, который вы передаёте, вместе с номером южноафриканского удостоверения личности, фамилией и инициалами. Результат зависит от того, что возвращает реестр:MATCH- реестр вернул запись о водительском удостоверении с этим номером, и переданные данные совпали с ней.source_dataсодержит эту запись:identification_number(номер водительского удостоверения),first_nameиlast_name,vehicle_codes(категории водительского удостоверения, напримерEB,C1) иexpiration_date(срок действия карточки водительского удостоверения).INCONCLUSIVE- реестр принял запрос, но не вернул запись о водительском удостоверении, поэтому не с чем было сравнить переданные данные. В этом случаеsource_data.licence_validравноtrue,validationпусто, аmatch_typeравноnull. Ничего о водительском удостоверении не подтверждено, поэтому проверка направляется на ручную проверку. Так же происходит, если в том же запросе другая служба, например проверка национального удостоверения личности, подтвердила личность человека, потому что это подтверждает личность, а не водительское удостоверение.NO_MATCH- реестр выполнил поиск водительского удостоверения и сообщил, что оно недействительно (source_data.licence_valid: false). Применяется ваше действие при несовпадении.REGISTRY_ERROR- реестр не выполнил поиск, поэтому о водительском удостоверении ничего не установлено. Проверка направляется на ручную проверку и не тарифицируется.
MATCH нельзя формулировать для пользователей утверждение «водительское удостоверение действительно и в хорошем статусе». expiration_date, если реестр его возвращает, - единственный факт, косвенно относящийся к статусу удостоверения. Сравните его с датой сессии, чтобы определить, истёк ли срок действия удостоверения, и рассматривайте это как собственное правило, а не как часть результата совпадения.
Если нужно изложить это в условиях использования, сформулируйте так: Didit проверяет данные водительского удостоверения по национальному реестру и, когда реестр возвращает запись о водительском удостоверении, её категории и срок действия, но не подтверждает, что владелец имеет право управлять транспортным средством на сегодняшний день.
Продолжить чтение
Последнее изменение 7 ноября 2026 г.