Cardsmobile Promo API использует модель REST, данные передаются в виде объектов JSON.
Взаимодействие партнера и Cardsmobile
Параметры подключения
Провайдером Promo API выступает узел Cardsmobile. Партнеру передаются следующие параметры для подключения к API:
Параметры
Описание
host:port
Адрес узла Cardsmobile, предоставляющего API.
login:password
Имя пользователя и пароль для авторизации API-запросов.
Авторизация запросов
Взаимодействие осуществляется по протоколу HTTPS. Для авторизации запросов необходимо использовать HTTP Basic Authentication (RFC 7617). Данные для авторизации запросов передаются в HTTP-заголовке Authorization.
Формат и структура сообщений
Все методы API ожидают в заголовке запроса:
1
Content-type ="application/json;charset=utf-8"
Copied!
Требования к формату изображений
Ожидаемый формат изображений: JPG или PNG. Требования к разрешению изображений приведены в описаниях запросов API.
Коды HTTP
В случае успешного выполнения запроса, со стороны узла Cardsmobile будет возвращен тип данных, описанный в документации запроса, и 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:
1
{
2
"code": string,//Код ошибки. Не равен HTTP-коду. Осмысленное значение в формате UPPER_SNAKE_CASE.
3
"details": string //Описание ошибки на английском языке. Не предназначено для отображения конечному пользователю.
4
}
Copied!
Описания возможных ошибок формата запроса и бизнес-ошибок приведены в описании методов API.