Реализация Loyalty Online API
Принципы реализации интерфейса
Документация перемещена
Информация на этой странице не обновляется и может быть устаревшей.
Наиболее полная и актуальная версия документации для разработчиков доступна по новому адресу:
Веб-сервис, реализующий Cardsmobile Loyalty Online API, развертывается на узле партнера и интегрируется с его информационной системой в соответствии с документацией Cardsmobile Developers. Для обмена сообщениями используется стандартная модель RESTful, данные передаются в формате JSON по протоколу HTTPS:

Поскольку веб-сервис, реализующий API, разворачивается на узле партнера, нео бходимо предоставить Cardsmobile следующие данные для интеграции:
Параметры | Описание |
---|---|
host:port | Адрес узла партнера, предоставляющего API. |
login:password | Имя пользователя и пароль для авторизации API-запросов со стороны Cardsmobile. |
Взаимодействие осуществляется по протоколу HTTPS. Для авторизации запросов необходимо использовать HTTP Basic Authentication (RFC 7617). Данные для авторизации запросов передаются в заголовке
Authorization
.Как в запросах, так и в ответах API используется кодировка UTF-8.
Ответ со стороны партнера должен содержать заголовок:
Content-Type: application/json; charset=utf-8;
Коды HTTP-ответов со стороны партнера:
Код | Назначение |
---|---|
200 | Возвращается в случае успешного выполнения запроса API. |
422 | Возвращается в случае любой ошибки выполнения запроса. |
Тело ответа со стороны партнера должно соответствовать требованию к ответу, указанному в описании соответствующего запроса.
В случае ошибки необходимо вернуть JSON-объект, содержащий код ошибки и строковое сообщение с техническим описанием причины ошибки на русском языке.
Пример ответа:
HTTP/1.1 422 Unprocessable Entity
<заголовки>
{
"code": "123",
"description": "Недоступен сервер баз данных"
}
Обратите внимание:
API предполагает, что все «элементарные» поля объектов JSON, возвращаемых в ответах, имеют строковый тип (string), даже если они содержат значения других типов (числовой, булев и т.п.).
См. пример возврата числового кода ошибки выше.