Skip to content

Формат ответов API v1 ​

Успешный ответ ​

Все поддерживаемые legacy-маршруты используют общую обертку:

json
{
  "status": true,
  "data": {},
  "error": {},
  "message": ""
}
ПолеТипОписание
statusbooleantrue при успешной обработке
dataobject или arrayДанные конкретного маршрута
errorobjectПустой объект при успехе
messagestringДополнительное legacy-сообщение

Некоторые успешные сценарии отсутствия данных возвращают status=true. Так, неизвестный товар возвращается как data: [] с текстом в message.

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

json
{
  "status": false,
  "data": {},
  "error": {
    "name": "Request Params Validation Error",
    "code": 1001,
    "text": "Ошибка в параметре id"
  },
  "message": ""
}

У ошибки используются поля name, code и text. Поля error.message в wire-контракте v1 нет.

HTTP-коды ​

Большинство ошибок авторизации, валидации и выполнения возвращаются с HTTP 200. Поэтому проверка только HTTP-кода недостаточна:

js
const response = await fetch(url, options);
const body = await response.json();

if (!body.status) {
  throw new Error(`${body.error.name}: ${body.error.text}`);
}

Разбор параметров ​

  • id и элементы id_list обрабатываются через legacy parseInt;
  • значения вида 123abc интерпретируются как 123;
  • списки передаются через запятую;
  • stock_list обрезает пробелы вокруг элементов;
  • include_documentation включается значениями true, TRUE или 1.

Это поведение сохранено только ради совместимости. Не следует использовать частично числовые идентификаторы в новых интеграциях.

Выберите версию API в верхнем меню.