Skip to main content

Pagination and filtering

List endpoints use one of four patterns, depending on how the list is consumed. Each is bounded: every paged list has a default and a maximum page size.

PatternUsed byHow to page
SequenceGET /oms-ops/eventsPass the highest seq you processed as afterSeq. Events come in ascending sequence order. Default 200, maximum 1000 per call.
CursorGET /oms-ops/disruptionsPass the nextCursor of the previous page as cursor. Newest first. Default 50, maximum 200.
OffsetGET /oms-ops/mass-changes, GET /oms-ops/mass-changes/{id}/items, GET /oms-ops/work-itemslimit and offset; the response carries total. Defaults 50 (items 200), maxima 200 (items 1000).
Bounded listGET /order-orchestration/trips, GET /order-orchestration/eventslimit only, newest first. Trips: default 50, maximum 200. Integration log: default 100, maximum 500.

These lists return every match without paging, because their size is bounded by the business object they belong to: the configuration views (systems, rules, event-types, status-models), a trip's lines and marks, a disruption's mass changes, a customer's service-recovery cases, group agreements, travel parties, block requests and party quotes.

Filtering​

Filters are query parameters, applied on the server:

EndpointFilters
GET /order-orchestration/tripscustomerRef
GET /order-orchestration/eventstripId, outcome
GET /oms-ops/eventstype, subjectRef
GET /oms-ops/disruptionsstatus
GET /oms-ops/mass-changesstatus (comma-separated), disruptionId
GET /oms-ops/mass-changes/{id}/itemsstatus, outcome, market, channel
GET /oms-ops/work-itemsteam, status, reason, changeId
GET /group-agreementsstate, agreementType, seriesRef, asOf
GET /travel-partiestripId
Not available

Cursor pagination on every list, and paging on the trip list beyond the newest 200, are not available. See Availability.