Создать верификацию

Назначение

Метод workflow-instances регистрирует верификацию по настроенному сценарию (workflow) и позволяет запустить одну или несколько проверок в одном запросе.

Сервис принимает запрос синхронно, валидирует входные данные и возвращает статус постановки задания в обработку. Итоговый результат получают отдельно через POST /api/v2/verifications/results или через callback.

Эндпоинт

Боевой контур:

POST https://api.mts.ru/ID-KYC-Verification-API-Prod/2.0/api/v2/verifications/workflow-instances

Prodlike:

POST https://api.mts.ru/ID-KYC-Verification-API-Prodlike/2.0/api/v2/verifications/workflow-instances

Авторизация

В запросе передается JWT-токен:

Authorization: Bearer <JWT>

Пример получения токена:

curl --location "https://api.mts.ru/token" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --header "Authorization: Basic <base64(ID клиента:Секрет клиента)>" \
  --data-urlencode "grant_type=client_credentials"

Тело запроса

Тело запроса содержит:

  • идентификатор сценария workflowId;
  • массив данных заявителей personalData;
  • версию сценария workflowVersion (опционально);
  • параметры callback.

Пример запроса

{
  "workflowId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "personalData": [
    {
      "verificationExternalId": "122222222009090003109000005",
      "applicantExternalId": "ivanov1999",
      "document": {
        "documentType": "passport",
        "countryCode": "RU",
        "series": "4939",
        "number": "200399",
        "firstName": "Андрей",
        "surname": "Семьянов",
        "middleName": "Владимирович",
        "birthdate": "1989-10-21",
        "sex": "male"
      },
      "userData": {
        "phone": "79276984837",
        "email": "test@mts.ru",
        "snils": "145-723-212 11"
      }
    }
  ],
  "callbackEnabled": true,
  "callbackUrl": "https://your-system.example.com/verification/callback"
}

Входные параметры

АтрибутТипОписаниеКомментарий
workflowIdstring (UUID)Идентификатор сценария верификацийОбязательное. Предоставляется администратором.
workflowVersionstring (UUID)Версия сценарияОпционально. Если не указано, используется последняя активная версия.
personalDataarrayМассив данных заявителейОбязательное. Минимум один элемент.
verificationExternalIdstringВнешний идентификатор верификацииРекомендуется указывать для связки с вашей системой.
applicantExternalIdstringВнешний идентификатор заявителяГенерируется на стороне клиента.
documentobjectДанные документаОбязательное.
document.documentTypeenumТип документаpassport, id, drvlic, foreign, и др.
document.countryCodestringСтрана документаКод страны, например RU.
document.seriesstringСерия документаРекомендуется.
document.numberstringНомер документаРекомендуется.
document.firstNamestringИмяОбязательное.
document.surnamestringФамилияОбязательное.
document.middleNamestringОтчествоПри наличии.
document.birthdatedateДата рожденияФормат YYYY-MM-DD.
document.sexenumПолmale / female.
userDataobjectДанные клиентаДля ЕСИА и других проверок.
userData.phonestringНомер телефонаФормат 7XXXXXXXXXX (11 цифр).
userData.emailstringEmailМожет использоваться для ЕСИА.
userData.snilsstringСНИЛСФормат с дефисами.
userData.innstringИННБез пробелов и дефисов.
callbackEnabledbooleanВключение callbackОпционально. Если не указано, используется настройка из сценария.
callbackUrlstringURL для callbackОпционально. Если не указан, используется URL из сценария.

Ответ

Метод возвращает результат приема заданий в обработку:

{
  "jobResults": [
    {
      "verificationExternalId": "1111111111",
      "verificationId": "b6c2f8a1-9e3d-4c5f-9a7b-1234567890ab",
      "jobStatus": "accepted",
      "errors": null
    },
    {
      "verificationExternalId": "222222222",
      "jobStatus": "notValid",
      "errors": {
        "document.firstName": [
          "'firstName' must not be empty."
        ]
      }
    }
  ]
}
АтрибутОписание
jobResultsМассив результатов приема заданий.
verificationExternalIdВнешний идентификатор верификации (если был передан).
verificationIdВнутренний UUID верификации, сгенерированный системой.
jobStatusСтатус: accepted – принята в работу, notValid – ошибка валидации.
errorsОписание ошибок валидации (ключ – путь к полю, значение – массив ошибок).

Коды ответов

КодСтатусОписание
200OKЗапрос создан успешно.
400Validation errorНевалидный запрос (отсутствует workflowId, некорректный формат даты, недопустимый тип документа).
401UnauthorizedНедействительный или отсутствующий токен.
404Not FoundСценарий с указанным workflowId не найден или неактивен.

Что смотреть дальше