Интеграция с информационной системой

Структуры данных API-интерфейса

Структуры данных API-интерфейса

Программный интерфейс СБИС (API) использует формат JSON-RPC для обмена данными с сервером online.sbis.ru посредством HTTP-запросов/ответов.

  • POST — запросы на выполнение команд;
  • GET — запросы для получения содержимого указанного ресурса: данных вложений или электронных подписей (ЭП).

Заголовок запроса

В заголовке передаваемого запроса обязательно указывается:

  • адрес сервера:
  • идентификатор сессии X-SBISSessionID
  • кодировка символов в поле Content-Type:
    • «utf-8»: application/json-rpc;charset=utf-8 —рекомендуемая
    • либо«windows-1251»: application/json-rpc;charset=windows-1251
  • данные о вашей информационной системе (в заголовке "User-Agent"): название и ее версия

Объект запроса

Объект запроса должен содержать:

  • значение "jsonrpc":"2.0", указывающее на версию спецификации JSON-RPC;

  • параметр "method" с названием команды;

  • параметр "params" с объектом передаваемых параметров команды;

  • параметр "id" с целочисленным значением.

Объект ответа

В ответ на запрос с сервера возвращается аналогичная JSON-структура:

  • значение "jsonrpc":"2.0" указывающее на версию спецификации JSON-RPC;
  • параметр "id" со значением, равным одноимённому из объекта запроса;
  • значение объекта "result" где упаковывается ответ на команду.

Если произошла ошибка, в ответе на запрос должно появиться значение "error".

Объект ошибки

В случае ошибки в объекте ответа в поле "error" содержится значения:

  • "code" — целочисленный код ошибки;
  • "message" — текстовое сообщение об ошибке;
  • "details" — детальное сообщение с подробным описанием причины проблемы;
  • "data" информации о типе ошибки.

Пример POST-запроса

Пример ответа(упрощенный для наглядности)

Пример GET-запроса на получение содержимого вложения

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

Пример ошибки