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

Статусы заказов и позиций

Справочник статусов из панели управления. API только читает каталог — создавать и править статусы можно только в Настройки → Статусы. Файлы системы не затрагиваются.

Базовый путь: /api/integrations/v1/statuses
Право: statuses.read

Что отдаётся

ПолеОписание
idID статуса в этом магазине — основной ключ для смены статуса
nameНазвание из панели (в т.ч. произвольное)
codeСтабильный ключ обмена (если задан)
semanticКанонический смысл (CREATED, PAYED…) или null
is_semantictrue, если заполнен semantic
actionСлужебная роль платформы (created, payed, none…)
colorЦвет, если задан

Фильтр: только системные или все

По умолчанию — статусы с заполненным Semantic (канонические для обмена).

QueryРезультат
(пусто) или scope=semanticтолько с semantic
all=1 или scope=allвсе статусы панели, включая произвольные названия
bash
# Только канонические
curl -sS "https://ВАШ_ДОМЕН/api/integrations/v1/statuses/orders" \
  -H "Authorization: Bearer pp_abc123:ВАШ_СЕКРЕТ" \
  -H "Accept: application/json"

# Все из панели
curl -sS "https://ВАШ_ДОМЕН/api/integrations/v1/statuses/orders?all=1" \
  -H "Authorization: Bearer pp_abc123:ВАШ_СЕКРЕТ" \
  -H "Accept: application/json"
json
{
  "ok": true,
  "scope": "all",
  "data": [
    {
      "id": 3,
      "name": "Новый",
      "code": "order.created",
      "semantic": "CREATED",
      "is_semantic": true,
      "action": "created",
      "color": "#22c55e"
    },
    {
      "id": 12,
      "name": "Ждём поставку",
      "code": null,
      "semantic": null,
      "is_semantic": false,
      "action": "none",
      "color": null
    }
  ]
}

Методы

МетодПутьЧто
GET/statuses/ordersСтатусы заказов
GET/statuses/order-itemsСтатусы позиций

Как ставить статус

После чтения справочника передайте status_id (надёжнее всего) или status_code, если код задан:

bash
curl -sS -X POST "https://ВАШ_ДОМЕН/api/integrations/v1/orders/42/status" \
  -H "Authorization: Bearer pp_abc123:ВАШ_СЕКРЕТ" \
  -H "Content-Type: application/json" \
  -d '{"status_id": 3}'
bash
curl -sS -X POST "https://ВАШ_ДОМЕН/api/integrations/v1/orders/42/items/7/status" \
  -H "Authorization: Bearer pp_abc123:ВАШ_СЕКРЕТ" \
  -H "Content-Type: application/json" \
  -d '{"status_id": 5}'

Право на смену: orders.write_status. Свободное название статуса в теле не принимается — только ID/код из справочника.

Дальше

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