Russian
Общие правила формирования запросов
Требования к запросам в рамках API

Заголовки

Все передаваемые от Cardsmobile запросы будут содержать заголовок x-cm-consumer-language в формате ISO 639-1 (двухбуквенный код языка). Значение этого заголовка используется для выбора нужного языка при передаче сообщения от эмитента пользователю. В случае необходимости передачи сообщения от эмитента к пользователю, заголовки ответного сообщения должны содержать это значение, соответствующее языку сообщения.
Любой HTTP-запрос в рамках API должен содержать заголовок:
1
Content-Type: application/json; charset=utf-8;
Copied!

Требования к кодировкам

Двоичные данные в запросах (например, криптограммы, значения хеш-функций) передаются в виде hex-строк. Как в запросах, так и в ответах используется кодировка UTF-8.

Требования к телу запросов

Тело HTTP-сообщений должно соответствовать требованиям, указанным в описании соответствующего запроса. В случае ошибки необходимо вернуть JSON-объект ErrorDescription.

Требования к статусам HTTP

Коды HTTP-ответов:
Код
Назначение
200
Возвращается в случае успешного выполнения запроса к API
422
Возвращается в случае любой ошибки выполнения запроса

Шифрование данных

Чувствительные данные подвергаются шифрованию при передаче. Используемые алгоритмы шифрования:
  • AES / CBC / PKCS7Padding – шифрование данных одноразовым случайным ключом (Random Generated Key — RGK) на основе инициализационного вектора (Initialisation Vector — IV). Размер ключа — 128 бит.
  • RSA / ECB / OAEPWithSHA512AndMGF1Padding — шифрование использованного RGK открытым ключом получателя. Размер ключа — 2048 бит.
Используется следующий принцип шифрования. Сторона, отправляющая данные:
  1. 1.
    Используя алгоритм AES, формирует RGK и IV.
  2. 2.
    Шифрует отправляемые данные, используя RGK.
  3. 3.
    Шифрует RGK открытым ключом получателя сообщения, используя алгоритм RSA.
  4. 4.
    Формирует хеш открытого ключа получателя, используя алгоритм SHA-1.
  5. 5.
    Полученные значения формируют объект EncryptedPayload, отправляемый получателю.
Last modified 18d ago