Формат взаимодействия

API методы системы SPN24 работают по спецификации JSON-RPC (JavaScript Object Notation Remote Procedure Call)

Спецификация формата JSON RPC

Все передаваемые данные — простые объекты, сериализованные в JSON. Запрос — вызов определённого метода, предоставляемого удалённой системой. Он должен содержать три обязательных свойства:

Сервер должен отослать правильный ответ на каждый полученный запрос. Ответ должен содержать следующие свойства:

Список всех публичных методов API можно найти на этой странице

Пример запроса к серверу

Пример простого запроса к серверу с использованием bash:

   1 QUERY_HOST="https://someserver/path/to/api"
   2 QUERY_ID="833105db-2dbe-d9ba-2ef4-0afe715dfe93"
   3 QUERY_METHOD="Session.signin"
   4 QUERY_HEADER="Content-Type: application/json"
   5 
   6 LOGIN="mylogin"
   7 PASSWORD="mypassword"
   8 
   9 QUERY_BODY="{
  10     'id': '$QUERY_ID',
  11     'method': '$QUERY_METHOD',
  12     'jsonrpc': '2.0',
  13     'params': {
  14         'username': '$LOGIN',
  15         'password': '$PASSWORD',
  16         'is_subagent': true
  17     }
  18 }"
  19 
  20 curl -i -X POST -H $QUERY_HEADER -d $QUERY_BODY $QUERY_HOST

Результат запроса

Результат запроса представляет собой объект следующего содержания:

   1 {
   2   "id": "833105db-2dbe-d9ba-2ef4-0afe715dfe93", 
   3   "jsonrpc": "2.0", 
   4   "result": {
   5     "access": {
   6       "actions_log": true, 
   7     }, 
   8     "access_level": 40, 
   9     "email": "foo@bar.baz", 
  10   }
  11 }