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

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

Для обмена данными программный интерфейс Saby API использует формат JSON. Обмен с online.sbis.ru происходит с помощью HTTP-запросов/ответов.

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

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

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

  • адрес сервера:
    1. для команд аутентификацииhttps://online.sbis.ru/auth/service/;
    2. для прочих командhttps://online.sbis.ru/service/?srv=1 HTTP/1.1;
  • идентификатор сессии «X-SBISSessionID»;
  • кодировка символов в поле «Content-Type»:
    1. application/json-rpc;charset=utf-8 — рекомендуем «utf-8»;
    2. application/json-rpc;charset=windows-1251 — «windows-1251».
  • размер запроса в байтах в «Content-Length»;
  • название и версия информационной системы в заголовке «User-Agent».

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

Объект запроса содержит:

  • значение и версию спецификации JSON-RPC — «jsonrpc»:«2.0»;
  • параметр «method» с названием команды;
  • параметр «params» с объектом параметров команды;
  • параметр «id» со строковым или целочисленным значением.

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

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

  • значение и версия спецификации JSON-RPC — «jsonrpc»:«2.0»;
  • параметр «id» со значением из объекта запроса;
  • значение объекта «result», содержащее ответ на команду.

Если произошла ошибка, в ответе на запрос вернется «error».

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

Если вернулась ошибка, в объекте ответа в поле «error» будут указаны:

  • «code» — код ошибки;
  • «message» — текст ошибки;
  • «details» — подробное описание;
  • «data» — тип ошибки.

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

Пример ответа (упрощенный)

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

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

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

Нашли неточность? Выделите текст с ошибкой и нажмите ctrl + enter.