Skip to content
GETNo key

Carriers you can filter for

GETapi.schedulesmcp.com/public/schedules/carriers

The vocabulary the carrier filter takes: every shipping line that has upcoming sailings, with the SCAC code to pass and how many sailings sit behind it. Read this rather than guessing a code, because a code we hold nothing for answers an empty list that looks exactly like a lane with no sailings. Codes are canonical, so several stored spellings of one line answer as one code with their sailings added together.

Response schema

8 fields

Derived from the example response, nested as the JSON is.

okboolean

Whether the request succeeded.

dataobject

The payload. Everything an endpoint returns sits under this key.

totalnumber

The allowance on your plan.

carriersobject[]

Carriers, ranked.

carriers[]object
carrier_codestring

Carrier SCAC.

carrier_namestring

Carrier name.

upcoming_sailingsnumber
unaddressablestring[]

Errors

A failure on an open endpoint answers { "ok": false } with a human-readable message. Branch on the status code.

DB_ERROR500

The aggregate failed on our side. The list is cached for an hour, so a retry usually answers from cache.

Why a sailing count is published

It tells you whether a code is worth asking for on a lane at all, and it is the same number the filter answers from. A line with a handful of upcoming sailings is genuinely thin, not broken.

unaddressable

Codes we hold sailings under that the filter cannot accept, because a feed writes a name fragment rather than a SCAC and the filter takes exactly four characters. They appear in an unfiltered response and are listed here so nothing is hidden, but passing one is refused with INVALID_SCAC. Each is being mapped to its real code.

Try it No key
curl 'https://api.schedulesmcp.com/public/schedules/carriers'

This preview uses documented example data and makes no live request. Get a key to run live.