> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Проверка двухфакторной аутентификации по номеру телефона API

> Identity Authentication 集成指南 - XHuoAPI

В данной статье будет представлено описание интеграции API для проверки двухфакторной аутентификации по номеру телефона, который может использоваться для проверки подлинности и согласованности номера телефона и имени.

## Процесс подачи заявки

Чтобы использовать API, необходимо сначала перейти на страницу [API проверки двухфакторной аутентификации по номеру телефона](https://api.xhuoapi.ai/documents/1f39c948-6d9b-48f5-83fb-0719da4f6ab0) и подать заявку на соответствующую услугу. После перехода на страницу нажмите кнопку «Acquire», как показано на изображении:

![](https://cdn.xhuoapi.ai/q6ytrc.png)

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

При первой подаче заявки будет предоставлен бесплатный лимит, который можно использовать для бесплатного доступа к этому API.

## Основное использование

Сначала ознакомьтесь с основным способом использования, который заключается в вводе номера телефона, после чего вы получите обработанный результат. Сначала необходимо просто передать поле `mobile`. Далее мы можем заполнить соответствующие данные на интерфейсе, как показано на изображении:

<p>
  <img src="https://cdn.xhuoapi.ai/v6k96j.png" width="500" className="m-auto" />
</p>

Как видно, здесь мы настроили заголовки запроса, включая:

* `accept`: в каком формате вы хотите получить ответ, здесь указано `application/json`, то есть формат JSON.
* `authorization`: ключ для вызова API, который можно выбрать из выпадающего списка после подачи заявки.

Также настроено тело запроса, включая:

* `name`: имя пользователя, которое необходимо обработать, является обязательным параметром.
* `mobile`: номер телефона, который необходимо обработать, является обязательным параметром.
* `encryption`: необязательный параметр для шифрования чувствительных данных (если необходимо отправить зашифрованные данные).

После выбора можно заметить, что справа также сгенерирован соответствующий код, как показано на изображении:

<p>
  <img src="https://cdn.xhuoapi.ai/lq800o.png" width="500" className="m-auto" />
</p>

Нажмите кнопку «Try», чтобы провести тестирование, как показано на изображении, и мы получим следующий результат:

```json theme={null}
{
  "result": "0",
  "description": "Результат проверки совпадает"
}
```

Возвращаемый результат содержит несколько полей, описание которых приведено ниже:

* `result`, код результата аутентификации, условия оплаты следующие.
  * Платные коды результата:
    * 0: Результат проверки совпадает
    * 1: Результат проверки не совпадает
  * Бесплатные коды результата:
    * -1: Запись не найдена
    * -2: Неизвестная ошибка движка
    * -3: Аномалия в работе сервиса движка
    * -4: Проверка имени не прошла
    * -5: Номер телефона недействителен
    * -6: Количество аутентификаций превышает дневной лимит, попробуйте снова на следующий день
* `description`, описание бизнес-результата.

Можно увидеть, что подлинность и согласованность номера телефона и имени уже проверены.

Кроме того, если вы хотите сгенерировать соответствующий код интеграции, вы можете просто скопировать его, например, код CURL выглядит следующим образом:

```shell theme={null}
curl -X POST 'https://api.xhuoapi.ai/v1/identity/phone/check-2e' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "name": "***",
  "mobile": "***"
}'
```

Код интеграции на Python выглядит следующим образом:

```python theme={null}
import requests

url = "https://api.xhuoapi.ai/v1/identity/phone/check-2e"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "name": "***",
    "mobile": "***"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

## Обработка ошибок

При вызове API, если возникнет ошибка, API вернет соответствующий код ошибки и информацию. Например:

* `400 token_mismatched`: Неверный запрос, возможно, из-за отсутствия или недействительных параметров.
* `400 api_not_implemented`: Неверный запрос, возможно, из-за отсутствия или недействительных параметров.
* `401 invalid_token`: Неавторизовано, недействительный или отсутствующий токен авторизации.
* `429 too_many_requests`: Слишком много запросов, вы превысили лимит частоты.
* `500 api_error`: Внутренняя ошибка сервера, что-то пошло не так на сервере.

### Пример ответа об ошибке

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "не удалось получить данные"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## Заключение

С помощью данного документа вы узнали, как использовать API проверки двухфакторной аутентификации по номеру телефона для проверки подлинности и согласованности номера телефона и имени. Надеемся, что этот документ поможет вам лучше интегрировать и использовать данный API. Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь обращаться в нашу техническую поддержку.
