Справочник API
АутентификацияPOST

Запустить аутентификацию по коду

Запускает поток входа по коду подтверждения. После этого вызова отправьте код через /auth/code; при необходимости 2FA — продолжите через /auth/password. WhatsApp использует тот же эндпоинт для сопряжения по номеру телефона — номер считывается из аккаунта (сохранённого при создании через provider_data.phone) и здесь его указывать не нужно.

https://api.unifyport.ai/v1/accounts/{account_id}/auth/start

Заголовки

X-Api-Key
stringобязательно

API-ключ рабочей области. Рабочая область определяется по этому заголовку.

Content-Type
stringобязательно

Используйте application/json при отправке JSON-тела запроса.

Параметры пути

account_id
stringобязательно

Идентификатор для маршрута раздела authentication.

Тело запроса

Этот эндпоинт принимает пустой JSON-объект; отправьте {} как в примере запроса.

Тело ответа

account_id
string

Аккаунт провайдера, к которому относится этот ответ.

status
string

Текущий статус потока авторизации, например pending_auth, awaiting_qr_scan, awaiting_code, pending, passkey_required, passkey_pending, passkey_confirmation, passkey_confirmation_sent, authorized или failed.

auth_fields[]
object[]

Описывает, что требуется на следующем шаге — каждый элемент содержит type и признак обязательности.

type
string

Тип ввода для следующего шага аутентификации, например code или password.

required
boolean

Обязательно ли предоставить это значение аутентификации.

label
string

Отображаемая подпись поля от provider, если доступна.

placeholder
string

Подсказка поля ввода от provider, если доступна.

auth_payload
object

Стандартная полезная нагрузка для текущего шага. QR использует qr_code; шаг проверки кода использует type=code; Passkey использует type=passkey и public_key. Полезные нагрузки взаимоисключающих шагов не появляются вместе.

expires_at
string

Метка времени RFC3339, после которой текущий auth_payload становится недействительным.

Ответы

200
200 OK

Запрос выполнен. См. пример тела ответа.

400
Bad Request

Тело запроса, путь или параметры некорректны.

401
Unauthorized

Заголовок X-Api-Key отсутствует или недействителен.

409
Conflict

Запрошенная операция конфликтует с существующим аккаунтом провайдера или ресурсом.

500
Internal Server Error

Сервис столкнулся с неожиданной ошибкой.

502
Bad Gateway

Адаптер или вышестоящий провайдер не смог завершить операцию.

Запрос

curl -X POST https://api.unifyport.ai/v1/accounts/{account_id}/auth/start \
  -H "X-Api-Key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{}'

Ответ

{
  "data": {
    "account_id": "acc_example",
    "status": "awaiting_code",
    "auth_fields": [
      { "type": "code", "required": true }
    ],
    "auth_payload": {
      "verify_code": "ABCD-EFGH"
    },
    "expires_at": "2026-01-01T00:00:00Z"
  }
}