Promo API v1.0.0
API для загрузки рекламных акций в Кошелёк.
Общие сведения
Руководство предназначено для компаний-партнёров ООО «Бесконтакт», выпускающих карты лояльности своих клиентов в мобильном приложении «Кошелёк».
Promo API предоставляет партнёрам интерфейс для загрузки и обновления федеральных рекламных акций, предназначенных для пользователей Кошелька.
Модель взаимодействия
Promo API использует модель REST, данные передаются в виде объектов JSON.
Подключение
Провайдером API выступает узел платформы Кошелька. Партнёру передаются следующие параметры для подключения к API:
| Параметр | Описание |
|---|---|
| host:port | URL узла платформы Кошелька, предоставляющего API. |
| login:password | Имя пользователя и пароль для авторизации API-запросов. |
Авторизация
Взаимодействие осуществляется по протоколу HTTPS. Для авторизации запросов необходимо использовать HTTP Basic Authentication (RFC 7617). Данные для авторизации запросов передаются в заголовке Authorization.
Кодировки
Как в запросах, так и в ответах API используется кодировка UTF-8.
Формат и структура сообщений
1. Заголовки
Все методы API ожидают в заголовке запроса:
Content-Type: application/json; charset=utf-8;
2. Формат изображений
Ожидаемый формат изображений: JPG или PNG. Требования к разрешению изображений приведены в описаниях запросов API.
Коды HTTP
В случае успешного выполнения запроса со стороны узла платформы Кошелька будет возвращён тип данных, описанный в документации запроса, и HTTP-код 200.
| Код | Назначение |
|---|---|
| 200 OK | Возвращается в случае успешного выполнения запроса API. |
В случае ошибки обработки запроса будет возвращён один из HTTP-кодов с описанием ошибки в теле ответа в формате JSON:
| Код | Назначение |
|---|---|
| 400 Bad Request | Неверный формат запроса. |
| 401 Unauthorized | Ошибка авторизации. |
| 403 Forbidden | Ошибка аутентификации (недостаточно прав для осуществления запроса). |
| 422 Unprocessable Entity | Ошибка обработки бизнес-сценария запроса. |
| 500 Internal Server Error | Внутренняя ошибка сервера. |
В случае получения одного из допустимых 4XX HTTP-кодов в ответ на запрос, в теле ошибки будет передан объект JSON, содержащий поля code и details:
{
"code": "string",
"details": "string"
}
| Параметр | Описание |
|---|---|
code |
Код ошибки. Не равен HTTP-коду. Осмысленное значение в формате UPPER_SNAKE_CASE. |
details |
Описание ошибки на английском языке. Не предназначено для отображения конечному пользователю. |