API V1 Legacy
Эта страница относится только к старому совместимому контракту /api/*. Новый API v2 находится в отдельной ветке сайта.

Доставка и служебные API

ApiShip calculator, платежи доставки заказов и callback от OpenClaw.

GET/api/delivery/apiship/cities

Поиск городов для калькулятора доставки. Нужен orders.view.

queryПоиск по названию города, max 100.
regionПоиск по региону, max 100.
providerKeyФильтр по службе доставки, например cdek.
limit1-50, по умолчанию 20.
GET /api/delivery/apiship/cities?query=Москва&providerKey=cdek&limit=20
GET/api/delivery/apiship/pickup-points

Список ПВЗ через ApiShip /lists/points. Нужен orders.view и активный ApiShip account для домена.

cityGuid/cityФильтр по GUID города или названию.
providerKeyКлюч службы доставки.
type[]1 ПВЗ, 2 постамат, 3 почта, 4 терминал.
cod/paymentCard0 или 1.
offset/limitlimit максимум 200, по умолчанию 100.
stateCheckOffboolean, по умолчанию передается как 1.
POST/api/delivery/apiship/calculate

Расчет вариантов доставки через ApiShip calculator. Нужен orders.view.

{
  "to": {
    "countryCode": "RU",
    "city": "Москва",
    "cityGuid": "0c5b2444-70a0-4932-980c-b4dc0d3f02b5",
    "addressString": "Москва, ул. Машкова 21",
    "index": "105066"
  },
  "places": [
    {
      "width": 20,
      "height": 45,
      "length": 30,
      "weight": 1500
    }
  ],
  "assessedCost": 1000,
  "codCost": 0,
  "pickupDate": "2026-04-30",
  "pickupTypes": [1, 2],
  "deliveryTypes": [1, 2],
  "providerKeys": ["cdek"],
  "pointOutId": 140803,
  "includeFees": false,
  "timeout": 20000
}

Если from не передан, адрес отправителя собирается из настроек активного ApiShip account.

{
  "ok": true,
  "variants": [
    {
      "channel": "door",
      "providerKey": "cdek",
      "tariffId": 19,
      "tariffName": "Экспресс лайт склад-дверь",
      "deliveryCost": 370,
      "daysMin": 2,
      "daysMax": 3
    }
  ],
  "raw": {},
  "from": {},
  "to": {}
}
GET/api/order-delivery-payments

Read-only список строк оплат доставки rw_order_delivery_payments. Нужен orders.view.

Фильтрыodp_id, odp_order_id, odp_track_id, odp_status_id, odp_payment_order_id, odp_etalon_order_id, odp_transaction_id, odp_cod_act_id.
Датыcreated_from, created_to в формате YYYY-MM-DD.
Сортировкаsort_by: odp_id, odp_order_id, odp_track_id, odp_delivery_sum, odp_delivery_tax, odp_cod_sum, odp_cod_agent_sum, odp_status_id, odp_payment_order_id, created_at. sort_dir=asc|desc.
Пагинацияper_page максимум 250.
POST/api/openclaw/messages

Callback для входящих сообщений OpenClaw. Не использует Sanctum; проверяет Bearer token из config('openclaw.reply_token').

{
  "chatId": "wms:123",
  "text": "Ответ ассистента",
  "threadId": "thread-1",
  "replyToId": "local-message-id",
  "metadata": {
    "inboundMessageId": "msg-1",
    "externalMessageId": "ext-1"
  }
}
chatIdОбязателен, max 64. Система пробует варианты с префиксом wms: и без него.
textОбязателен, max 20000.
threadId/replyToIdНеобязательные строки max 191.
metadataНеобязательный объект. Используется для dedupe и восстановления чата.
{
  "ok": true,
  "id": 123
}