Для обмена данными программный интерфейс Saby API использует формат JSON. Обмен с online.sbis.ru происходит с помощью HTTP-запросов/ответов.
- POST — запросы на выполнение команд;
- GET — запросы для получения содержимого указанного ресурса, данных вложений или электронных подписей (ЭП).
Заголовок запроса
В заголовке запроса обязательно указывается:
- адрес сервера:
- для команд аутентификации — https://online.sbis.ru/auth/service/;
- для прочих команд — https://online.sbis.ru/service/?srv=1 HTTP/1.1;
- идентификатор сессии «X-SBISSessionID»;
- кодировка символов в поле «Content-Type»:
- application/json-rpc;charset=utf-8 — рекомендуем «utf-8»;
- 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.