Перейти к содержимому

Ошибки API и типовые проблемы

Частые ошибки Integrations API (/api/integrations/v1). Готовые модули (PlanFix и др.) — в своих разделах.


401 Unauthorized

Проверьте
ЗаголовокAuthorization: Bearer {identifier}:{secret} — одно двоеточие, без лишних пробелов
КлючСоздан в Система → Настройка API, секрет не устарел
HTTPSЗапросы только по HTTPS
URLПрефикс именно /api/integrations/v1/… (других партнёрских REST нет)

403 Forbidden

ПричинаЧто сделать
Нет праваВ роли API включите нужное право (список прав)
Чужая точкаКлюч привязан к точке — не запрашивайте чужой pickup_point_id / заказ

422 Validation

Ответ Laravel: message + объект errors по полям.

СитуацияЧастая причина
Создание заказаНет items; неактивный delivery_method / payment_method; не настроен статус CREATED
ПроценкаНе передан массив brands (обязателен, ≥1)
ПользовательНет ни email, ни phone
Платёжamount ≤ 0 или не в копейках; нет module_id и у заказа нет оплаты
ОстаткиНе заданы storage_id и pick_up_point_id (ни в теле, ни в настройках API)
ЦеныПередали рубли вместо копеек при записи (1500 вместо 150000)
КаталогНет external_id у товара/категории

404 Not Found

  • Неверный id заказа / пользователя / платежа / документа / задачи прайса
  • Заказ другой точки при привязке ключа
  • Позиция не принадлежит указанному заказу

Пустой список заказов

  1. Есть ли право orders.read?
  2. Фильтр status_code / since не слишком узкий?
  3. Нужны архивные? Нужно право orders.read_archived
  4. Ключ привязан к точке, а заказы на другой?

Цены «в 100 раз меньше/больше»

НаправлениеЕдиницы
Запись (POST/PATCH)копейки
Чтение snapshotрубли

Пример: в заказ передали "price": 150000 → в ответе у позиции "price": 1500.

См. Структура и обозначения.


Документы «не создаются»

Так и задумано: API умеет только GET /documents и POST /documents/{id}/external-ref. Документ печатается или формируется на сайте. Подробнее: Документы.


Проценка без результатов

  • Точка активна и к ней привязаны поставщики?
  • Верный артикул и бренд в brands?
  • Таймауты/ошибки поставщика смотрите в results[].status_code и data

Дальше

База знаний для EMS-платформы PlatParts.