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

Описание

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

Предупреждение

Внимание! Для использования данного сервиса вам нужно обратиться в техническую поддержку support@devinotele.com для произведения необходимых настроек.

Запрос к API состоит из следующих элементов:

  • Основного URL запроса: https://phoneverification.devinotele.com/
  • Ресурса, например: /GenerateCode
  • Параметров запроса в кодировке UTF-8. Сервис реализован с использованием технологии ServiceStack , что позволяет передавать параметры в следующих форматах: XML, JSON, JSV, CSV.
  • ApiKey, переданного в заголовке запроса X-ApiKey, который можно получить у менеджера

Ответ API состоит из двух частей:

Код с описанием - эта часть присутствует во всех ответах. В качестве описания возвращается описание ошибки.

{
        "Code": "0",
        "Description": "Code Sent"
}

Все коды отличные от 0, считаются ошибками, информация о которых, содержится в поле Description.

Список методов

Ресурс Метод Описание
/GenerateCode POST Запрос на отправку короткого кода
/CheckCode POST Запрос на подтверждение кода

Отправить код абоненту

/GenerateCode POST

https://phoneverification.devinotele.com/GenerateCode

Метод генерирует и отправляет код на указанный в запросе номер телефона на основе настроек пользователя. Опционально можно передать параметр IMSICode. В этом случае сервис проверяет текущий IMSICode абонента, и сравнивает с переданным. Отправка кода осуществляется только в случае, если переданный IMSI код, совпадает с актуальным IMSI кодом абонента. Эта функция подключается отдельно.

Параметры запроса:

Параметр Тип данных Обязательность Описание
DestinationNumber String Да Номер получателя кода
IMSICode String Нет IMSI код абонента

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

{
        "DestinationNumber":"79169492211",
        "IMSICode": "D92C2B0A1D5C64BBA8DD8BCE43C4BA11"
}

Пример ответа:

{
        "Code": "0",
        "Description": "Code Sent"
}

Список кодов ответов:

Код Description Расшифровка
0 Code Sent Успешный статус работы метода
1 Invalid ApiKey Передан неизвестный ApiKey
2 Invalid Phone Передан невалидный номер получателя кода
3 Limit requsts by time is over Превышен лимит запросов в минуту
4 Internal Server Error Внутренняя ошибка сервиса
5 Error sending message Ошибка отправки СМС с кодом
6 Invalid IMSI Code Некорректный IMSI код
7 Code Exist Для данного номера уже есть неиспользованный код, у которого не кончилось время жизни

Проверить код от абонента

/CheckCode POST

https://phoneverification.devinotele.com/CheckCode

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

Параметр Тип данных Обязательность Описание
DestinationNumber String Да Номер получателя кода
Code String Да Код, полученный абонентом на телефон

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

{
        "DestinationNumber":"79169492283",
        "Code": "17565"
}

Пример ответа:

{
        "Code": 0,
        "Description": "Valid Code"
}

Список кодов ответов:

Код Description Расшифровка
0 Valid Code Успешный статус работы метода
1 Invalid ApiKey Передан неизвестный ApiKey
2 Invalid Phone Передан невалидный номер получателя кода
3 Limit requsts by time is over Превышен лимит запросов в минуту
4 Internal Server Error Внутренняя ошибка сервиса
5 Code not Found Переданный код не найден
6 Code Expired Код верен, но кончилось его время жизни