Получать изменения рейсов заказчика

Статья обновлена November 12, 2026

Стенд по умолчанию — test. Только чтение. Порядок работы для агента.

Используйте общий порядок синхронизации. Для чтения ленты рейсов нужно право flight_view_changes, для чтения карточек рейсов — view_all_orders. Если синхронизируете одну организацию, проверьте права в ней.

  1. Если курсора рейсов нет, вызовите POST /api/flights/changesForForwarders/getLastLogId/v0 и передайте границу чтения в data.toTime.
  2. Читайте порцию через POST /api/flights/changesForForwarders/get/v0. Передайте сохранённый курсор рейсов в data.lastId, размер порции — в data.limit. Для одной организации передайте её идентификатор строкой в data.forwarderId в обоих запросах.
  3. При data.changes: [] завершите обработку порции без запроса деталей. При отсутствии массива остановитесь и проверьте ответ. При синхронизации одной организации убедитесь, что массив data.changes[].forwarderId каждой записи содержит её идентификатор. Если проверка не прошла, оставьте курсор прежним.
  4. Если нужны детали, соберите непустые flightId из записей и вызовите POST /api/flights/v1/listForForwarder с этим списком в data.ids. Для одной организации передайте её идентификатор в массиве data.fwdIds. Используйте только запрошенные рейсы из data.flights. Чтобы выбрать задачи нужной организации в карточке, проверяйте data.flights[].tasks[].orderInfo.forwarder.id.

В data.changes[].orderId перечислены связанные заказы записи ленты. Для синхронизации самих заказов используйте ленту изменений заказов заказчика с её курсором.