CallSabyApi2 — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
Строка 50: Строка 50:
 
   },  
 
   },  
 
   "Stat": ...
 
   "Stat": ...
 +
}
 +
</source>
 +
 +
====Ответ с ошибкой====
 +
<source lang="json">
 +
{
 +
  [
 +
    {
 +
      'code': 100,
 +
      'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
      'dump': {},
 +
      'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
      'method_name': 'ExtSdk2.CallSabyApi2',
 +
      'stack': [
 +
                  {
 +
                    'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
 +
                    'method_name': 'SbisCallSabyApi'
 +
                  },
 +
                  {
 +
                    'method_name': 'ExtSdk2.CallSabyApi2'
 +
                  }
 +
              ]
 +
    }
 +
  ]
 
}
 
}
 
</source>
 
</source>
  
 
[[Категория:Методы ExtSdk2]]
 
[[Категория:Методы ExtSdk2]]

Версия 14:44, 29 ноября 2024

Описание

Прокси метод, позволяющий вызывать методы API ЭДО через ExtSdk2. Например, в статье API СБИС.ПрочитатьДокумент указан успешный вызов метода

{
   "jsonrpc": "2.0",
   "method": "СБИС.ПрочитатьДокумент",
   "params": {
      "Документ": {
         "Идентификатор": "f2a7c885-269a-44e4-8781-cb928df94163",
         "ДопПоля": "ДополнительныеПоля"
      }
   },
   "id": 0
}

В поле params переданные параметры имеют определенное название. В нашем случае параметр с именем "Документ". Для CallSabyApi2 нет необходимости указывать имя параметра, достаточно передать его значение, но необходимо соблюдать порядок передаваемых параметров. Подробнее в примере ниже.

Параметры

  • Method (строка) - название метода для вызова
  • Params (массив объектов) - массив объектов с параметрами для вызова метода

Результат

Исключения

Пример успешного вызова

Запрос

   "Method": "СБИС.ПрочитатьДокумент",
   "Params": 
   [
      {
         "Идентификатор": "f2a7c885-269a-44e4-8781-cb928df94163",
         "ДопПоля": "ДополнительныеПоля"
      }
   ]

Ответ

{
  "Result": {
       "Автор": {
         "Идентификатор": "",
         "Имя": "Иван",
         "Отчество": "Иванович",
         "Фамилия": "Иванов"
      },
      "Вложение": [],
      ...
  }, 
  "Stat": ...
}

Ответ с ошибкой

{
  [
    {
      'code': 100,
      'detail': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
      'dump': {},
      'message': "Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
      'method_name': 'ExtSdk2.CallSabyApi2',
      'stack': [
                  {
                    'error': " : error -1 Не найден документ с идентификатором 'f2a7c885-269a-44e4-8781-cb928df94163'",
                    'method_name': 'SbisCallSabyApi'
                  },
                  {
                    'method_name': 'ExtSdk2.CallSabyApi2'
                  }
               ]
    }
  ]
}