Разработчикам

POST/v3/create_document

Создание профиля регистрации

Создайте профиль идентификации и адреса и сохраните его отдельные идентификаторы профиля и сущностей.

На этой странице
  1. Создайте профиль один раз
  2. Запрос на создание
  3. Сохраните все три идентификатора
  4. Дополнительно: прикрепление заранее загруженных подтверждений при создании
  5. Сбои и частичное создание

Создайте профиль один раз

Этот запрос создаёт локальный профиль регистрации вместе с записями идентификации и адреса у оператора. Начните с актуальных стран регистрации, типов номеров и требований. Требования зависят от страны и типа номера, который вы планируете зарегистрировать.

Успешный ответ на создание не является регуляторным одобрением или активацией номера. Сохраняйте UUID документа, ID идентификации и ID адреса по отдельности: они служат разным целям. Этот запрос изменяет данные учётной записи и не является операцией только для проверки.

Запрос на создание

Аутентифицируйтесь с помощью вашей включённой учётной записи MultiTEL API и разрешённого для неё IP-адреса. В примерах используются учётные данные HTTP Basic, хранящиеся в переменных окружения. Проверяйте и HTTP-ответ, и JSON-поле status.code; один лишь ответ HTTP 200 не подтверждает успех. Все значения в примерах вымышлены.

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header 'Content-Type: application/json' \
  --data @registration-profile.json \
  https://api.multitel.net/v3/create_document
{
  "identity_type": "Personal",
  "first_name": "Example",
  "last_name": "Person",
  "phone_number": "12025550123",
  "email": "end-user@example.com",
  "city": "Example City",
  "postal_code": "00000",
  "country": "US",
  "address": "1 Example Street",
  "nationality": "US",
  "signature": "BASE64_PNG_OF_THE_AUTHORIZED_END_USER_SIGNATURE"
}

Этот JSON — иллюстративный профиль Personal, а не готовая к отправке реальная идентификация. Замените его данные и подпись сведениями о конечном пользователе, которые требуются выбранными правилами регистрации. Также поддерживается ввод в формате form-encoded.

Поля профиля регистрации
ПолеОбязательность и формат
identity_typeОбязательное. Используйте точное значение Personal или Business; условная проверка зависит от регистра букв.
first_name, last_nameОбязательные, каждое не более 64 символов. Для компании укажите сведения о представителе, требуемые выбранной страной.
phone_numberОбязательное числовое значение телефона, не менее восьми символов. Международный номер только из цифр, включая код страны, подходит для этой проверки; это контактный номер, а не покупка номера.
city, postal_code, addressОбязательные, каждое не более 64 символов.
countryОбязательный ISO-код страны адреса из каталога регистрации. Сервис сопоставляет его с записью страны у оператора.
signatureОбязательные данные подписи. Текущий портал передаёт байты PNG-изображения в кодировке Base64 без префикса data:image/png;base64,. Получите подпись конечного пользователя через ваш авторизованный процесс; непустая заглушка не является значимой подписью.
nationalityОбязательно для Personal, в виде ISO-кода страны. Не подставляйте вместо него UUID страны.
company_name, incorporation_countryОбязательно для Business. Название компании — не более 64 символов; incorporation_country — ISO-код страны.
emailНеобязательный контактный адрес электронной почты конечного пользователя, не более 254 символов. Пропущенный или пустой адрес не наследует адрес электронной почты основной учётной записи.
company_reg_number, vat_id, id_number, personal_tax_id, birth_date, descriptionНеобязательные в этом обработчике, но выбранная страна или оператор может требовать некоторые из них. Передавайте форматы, требуемые для этой регистрации. Прямые вызовы API не применяют автоматически все нормализации, выполняемые порталом.

Этот прямой обработчик v3 требует поля адреса и создаёт адрес. Не предполагайте, что через него доступна опция портала для отложенного указания адреса.

Сохраните все три идентификатора

Ниже показаны отдельные поля ответа; фактический ответ также содержит отправленные сведения профиля и данные подписи. Обращайтесь со всем ответом как с конфиденциальным.

{
  "status": {
    "code": 200,
    "msg": "Success Create Registration Detail."
  },
  "response": {
    "uuid": "11111111111111111111111111111111",
    "identity_id": "22222222222222222222222222222222",
    "address_id": "33333333333333333333333333333333",
    "country_iso": "US",
    "email": "end-user@example.com"
  }
}
  • response.uuid идентифицирует локальный профиль. Используйте его с get_document. В ответах documents и get_document тот же идентификатор профиля называется id.
  • response.identity_id идентифицирует идентификацию для последующих подтверждений личности и сопроводительных документов.
  • response.address_id идентифицирует созданный адрес. Храните его отдельно; UUID локального профиля не является ID адреса. Совместимость последующего прикрепления подтверждений адреса для новосозданных профилей ещё находится на рассмотрении.

Две конечные точки чтения профиля не возвращают identity_id или address_id, поэтому сохраняйте исходный успешный ответ на создание. Если он утерян, используйте просмотр документов на портале или обратитесь в службу поддержки, прежде чем создавать замену.

Дополнительно: прикрепление заранее загруженных подтверждений при создании

Вы можете передать identity_encryptfiles и address_encryptfiles в виде массивов ID, возвращённых create_encrypt_files. Загружайте файлы с типом подтверждения для соответствующей категории сущности, затем отправьте запрос до истечения срока действия ссылки на файл, который составляет примерно 20 минут. Обработчик создания проверяет учётную запись, категорию и срок действия каждой переданной ссылки.

Эти поля называются иначе, чем encrypted_file_ids в последующей конечной точке прикрепления. При создании каждый файл отправляется как отдельный запрос подтверждения, даже если несколько файлов имеют один тип подтверждения. Для подтверждения личности, которое должно содержать несколько файлов вместе, используйте последующий запрос create_proof с одним массивом. Успешное создание профиля само по себе не даёт результатов одобрения отдельных подтверждений.

Если последующее подтверждение адреса отклонено для новосозданного адреса, не подставляйте UUID профиля и не создавайте идентификацию повторно снова и снова. Остановитесь и проверьте профиль на портале или через службу поддержки. Путь чтения и поиска подтверждений адреса остаётся ограничением проверки.

Сбои и частичное создание

Код API 400 охватывает проверку полей, сбои создания у оператора и сбои локального сохранения. Ошибки проверки могут отображаться в response в виде записей с ключами по полям. Код 500 используется для недоступной или недопустимой страны регистрации, а код 404 — для отсутствующих или просроченных заранее загруженных ссылок. Читайте status.msg наряду с кодом.

Операции с локальным профилем и вышестоящие операции у оператора не являются одной атомарной транзакцией. Неудавшийся запрос может оставить состояние на стороне оператора, даже если локальный профиль не отображается в списке. Клиентский ключ идемпотентности не предоставляется. После тайм-аута или неопределённого сбоя проверьте существующие профили и обратитесь в службу поддержки, прежде чем повторять создание; пустой список documents не доказывает, что на стороне оператора ничего не было создано.