Список полигонов с фильтрами и пагинацией

POST /v1/polygon/list

POST/v1/polygon/list

Тело запроса

filter
object
required
Фильтр. Если поле фильтра не передано, равно null или передан пустой массив [], фильтрация по этому полю не применяется. При одновременном указании нескольких фильтров условия объединяются по AND.
Показать свойства
location_id
array
Фильтр по идентификаторам склада.
polygon_id
array
Фильтр по идентификаторам полигона.
status
array
Фильтр по статусам полигона.
Статус полигона. - DRAFT: создан. - PENDING: в обработке. - ACTIVE: активен. - FAILED: не прошёл модерацию. - DELETED: удален.
cursor
string
Курсор начала отсчёта.
limit
integer
required
Размер страницы. min = 1; max = 300; default = 100.

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

200A successful response.
application/json
object
polygons
array
Элементы списка. Полигоны с недоступными или несуществующими polygon_id в ответ не возвращаются.
Показать свойства
polygon_id
string
required
Идентификатор полигона.
location_id
string
Идентификатор склада.
name
string
Название полигона.
status
string
required
Статус полигона.
Допустимые значения
DRAFTPENDINGACTIVEFAILEDDELETED
issue
object
Текущая проблема по полигону. Пустой объект или не передаётся при статусах DRAFT, ACTIVE и DELETED.
Показать свойства
code
string
Код проблемы.
message
string
Детальное описание проблемы.
changed_at
string
Момент изменения (RFC3339, например 2026-04-16T08:00:00Z). Формат RFC3339 с обязательным timezone (пример: 2026-07-02T10:25:00+02:00). Несоблюдение формата может привести к непредсказуемому поведению системы и проблемам с заказами.
errors
array
Ошибки валидации по полям. Поле обязательно к заполнению только при статусе FAILED; при остальных статусах поле должно быть пустым. Коды только из PolygonListItemValidationErrorCode.
Ошибка валидации/бизнеса поля для scope «PolygonListItem». Допустимые field: ошибки модерации полигона (при status=FAILED). Для бизнес-правил витрины: code=STOREFRONT_RULE_VIOLATION.
Показать свойства
field
string
required
Путь к полю. Ожидаемые: ошибки модерации полигона (при status=FAILED).
code
string
required
Коды ошибок ручки (scope PolygonListItem). Допустимые field: ошибки модерации полигона (при status=FAILED). - REQUIRED: Поле отсутствует или пустое, но обязательно - INVALID_TYPE: Неверный JSON-тип - INVALID_FORMAT: Общий сбой формата значения - INVALID_ENUM: Значение не из допустимого enum - INVALID_COORDINATES: Некорректная геометрия / GeoJSON - RING_TOO_SHORT: LinearRing короче 4 позиций - RING_NOT_CLOSED: Кольцо не замкнуто - POSITION_SIZE: Позиция не 2–3 числа - INVALID_LATITUDE: Широта вне диапазона - INVALID_LONGITUDE: Долгота вне диапазона - INVALID_RANGE: Некорректный диапазон (from > to) - NEGATIVE_VALUE: Отрицательное значение недопустимо - STOREFRONT_RULE_VIOLATION: Запрос синтаксически валиден, но отклонён бизнес-правилом витрины (детали в message)
Допустимые значения
REQUIREDINVALID_TYPEINVALID_FORMATINVALID_ENUMINVALID_COORDINATESRING_TOO_SHORTRING_NOT_CLOSEDPOSITION_SIZEINVALID_LATITUDEINVALID_LONGITUDEINVALID_RANGENEGATIVE_VALUESTOREFRONT_RULE_VIOLATION
message
string
required
Текст для клиента. Для STOREFRONT_RULE_VIOLATION — описание правила.
delivery_options
array
required
Список цен доставки по объёмному весу.
Опция доставки в ответе polygon/list. Required внутри опции — как в polygon/create: price, currency, delivery_time_minutes, delivery_types.
Показать свойства
volume_weight_from
number
Объёмный вес (кг) от: длина (см) × ширина (см) × высота (см) * масса брутто (кг) / 300.
volume_weight_to
number
Объёмный вес (кг) до: длина (см) × ширина (см) × высота (см) * масса брутто (кг) / 300.
price
number
required
Цена доставки, значение умноженное на 100.
currency
string
required
Валюта цены.
Допустимые значения
RUBBYNKZTEURUSDCNY
vat
string
НДС.
Допустимые значения
VAT_0VAT_5VAT_7VAT_10VAT_22NO_VAT
provider_id
string
Идентификатор провайдера доставки.
Допустимые значения
CDEKRUSSIAN_POSTBOXBERRYYANDEX5POSTDPDHERMESIMLTOP_DELIVERYOZONKSESTRIZHDLPEKSBLMVIDEO
delivery_time_minutes
integer
required
Время доставки в минутах.
delivery_types
array
required
Типы доставки.
Тип доставки в ответе polygon/list.
Показать свойства
delivery_type
string
required
Тип доставки.
Допустимые значения
COURIERPICKUP_POINT
weight_from
number
Масса брутто (кг) от.
weight_to
number
Масса брутто (кг) до.
time_slots
array
Доступные интервалы доставки по времени.
Интервал времени доставки в течение дня (локальное время).
Показать свойства
from
string
Начало интервала, формат «HH:MM» (например, «10:00»).
to
string
Конец интервала, формат «HH:MM» (например, «12:00»).
trunk_schedule
object
График магистральной перевозки по городу.
Показать свойства
working_schedule
array
Расписание по дням недели; в каждом элементе — day и shipping_cutoff для магистрали.
Показать свойства
day
string
День недели.
Допустимые значения
MONDAYTUESDAYWEDNESDAYTHURSDAYFRIDAYSATURDAYSUNDAY
shipping_cutoff
string
Время, после которого отсчёт слота доставки начнётся со следующего дня магистральной перевозки. Формат «16:30». Если пустое — не применяется.
individual_schedule
array
Индивидуальное расписание на даты; в каждом элементе — date, shipping_cutoff для магистрали, is_works.
Показать свойства
date
string
Дата, формат «YYYY-MM-DD».
shipping_cutoff
string
Время, после которого отсчёт слота доставки начнётся со следующего дня магистральной перевозки. Формат «16:30». Если пустое — не применяется.
is_works
boolean
Признак работы в дату.
coordinates
array
required
Координаты полигона в формате GeoJSON (RFC 7946): массив линейных колец (number[][][]).
Линейное кольцо (LinearRing).
next_cursor
string
Курсор начала отсчёта.
total
integer
Общее количество записей.

Ошибки

400Некорректный запрос
application/json
object
error_type
string
ERROR_TYPE_BAD_REQUEST — HTTP 400 (request-level); ERROR_TYPE_UNAUTHORIZED — 401; ERROR_TYPE_RATE_LIMIT — 429; ERROR_TYPE_INTERNAL — 500. Поэлементные/бизнес-ошибки сущности — в HTTP 200 errors/failed, не здесь.
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string
код ошибки
message
string
сообщение
details
object
401Ошибка авторизации
application/json
object
error_type
string
ERROR_TYPE_BAD_REQUEST — HTTP 400 (request-level); ERROR_TYPE_UNAUTHORIZED — 401; ERROR_TYPE_RATE_LIMIT — 429; ERROR_TYPE_INTERNAL — 500. Поэлементные/бизнес-ошибки сущности — в HTTP 200 errors/failed, не здесь.
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string
код ошибки
message
string
сообщение
details
object
429Превышен лимит запросов
application/json
object
error_type
string
ERROR_TYPE_BAD_REQUEST — HTTP 400 (request-level); ERROR_TYPE_UNAUTHORIZED — 401; ERROR_TYPE_RATE_LIMIT — 429; ERROR_TYPE_INTERNAL — 500. Поэлементные/бизнес-ошибки сущности — в HTTP 200 errors/failed, не здесь.
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string
код ошибки
message
string
сообщение
details
object
500Внутренняя ошибка сервера
application/json
object
error_type
string
ERROR_TYPE_BAD_REQUEST — HTTP 400 (request-level); ERROR_TYPE_UNAUTHORIZED — 401; ERROR_TYPE_RATE_LIMIT — 429; ERROR_TYPE_INTERNAL — 500. Поэлементные/бизнес-ошибки сущности — в HTTP 200 errors/failed, не здесь.
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string
код ошибки
message
string
сообщение
details
object
POST/v1/polygon/list
1curl https://api.omninet.ru/v1/polygon/list \2  --request POST \3  --header 'Content-Type: application/json' \4  --data '{5  "filter": {6    "location_id": [7      "string"8    ],9    "polygon_id": [10      "string"11    ],12    "status": [13      "string"14    ]15  },16  "cursor": "string",17  "limit": 018}'
{
  "polygons": [
    {
      "polygon_id": "string",
      "location_id": "string",
      "name": "string",
      "status": "string",
      "issue": {
        "code": "string",
        "message": "string",
        "changed_at": "2026-07-02T10:25:00+02:00"
      },
      "errors": [
        {
          "field": "coordinates",
          "code": "STOREFRONT_RULE_VIOLATION",
          "message": "Полигон не прошёл модерацию витрины"
        }
      ],
      "delivery_options": [
        {
          "volume_weight_from": 0,
          "volume_weight_to": 0,
          "price": 0,
          "currency": "RUB",
          "vat": "string",
          "provider_id": "string",
          "delivery_time_minutes": 0,
          "delivery_types": [
            {
              "delivery_type": "COURIER"
            }
          ],
          "weight_from": 0,
          "weight_to": 0,
          "time_slots": [
            {
              "from": "string",
              "to": "string"
            }
          ],
          "trunk_schedule": {
            "working_schedule": [
              {
                "day": "MONDAY",
                "shipping_cutoff": "string"
              }
            ],
            "individual_schedule": [
              {
                "date": "string",
                "shipping_cutoff": "string",
                "is_works": true
              }
            ]
          }
        }
      ],
      "coordinates": [
        [
          [
            100,
            0
          ],
          [
            101,
            0
          ],
          [
            101,
            1
          ],
          [
            100,
            1
          ],
          [
            100,
            0
          ]
        ]
      ]
    }
  ],
  "next_cursor": "string",
  "total": 0
}

A successful response.