CallSabyApi2

Материал из razgovorov.ru
Перейти к: навигация, поиск

Описание

Прокси метод, позволяющий вызывать методы 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'
                  }
               ]
    }
  ]
}