Skip to content
Navo24 Navo24
GETAPI keyCounts as a call

Carrier league table

GETapi.schedulesmcp.com/public/reliability/leaderboard

The on-time league across all observed lanes. Carriers with 20+ observations are ranked; the rest follow, unranked.

Counted: 1 call for each answer that carries data. Free: an empty table (an empty carriers list), and any refusal or error. See how calls are counted.

Query parameters

limitinteger

How many carriers to return, 1 to 100. Ranked carriers come first.

Response schema

11 fields

Nested exactly as the JSON is. Open a branch to read its fields; hover a name for the full dot-path.

dataobject
min_obsinteger

Observations a carrier needs to be ranked: 20.

totalinteger

Carriers in the table, before limit.

ranked_totalinteger

How many of them are ranked.

carriersarray

Ranked carriers first, by on-time share. Then carriers with fewer than 20 observations, unranked.

carriers[]object
rankinteger | null

Place in the league. Null for a carrier with too little data.

rankedboolean

True when the carrier has a place.

provisionalboolean

True when the carrier has fewer than 20 observations. Its percentage is indicative.

carrier_codestring

Carrier SCAC.

carrier_namestring

Carrier name.

on_time_pctnumber

Share of sailings that arrived on time.

observationsinteger

Observed sailings behind the figure.

Errors

Every refusal is { "ok": false, "error": { "code", "message" } }. Branch on the code, and log the message. No refusal or error is counted as a call.

UNAUTHORIZED401

The key is missing, unknown, revoked or past its own expiry date. Not counted.

FORBIDDEN403

Your account has no Schedules API access, or the key is not enabled for it. Not counted.

ACCESS_EXPIRED403

The access of your account, or of the key, has ended. Not counted.

QUOTA_EXCEEDED429

The monthly call limit of your account or of the key, or the key's daily limit, is spent. Retry-After gives the seconds until it resets. A refused call is not counted.

RATE_LIMITED429

Too many requests in a short window. Wait Retry-After seconds. A refused call is not counted.

SERVICE_UNAVAILABLE503

Access could not be checked just now, so the request was not run. Retry after Retry-After. Not counted.

curl 'https://api.schedulesmcp.com/public/reliability/leaderboard' \
  -H "Authorization: Bearer smcp_YOUR_API_KEY"
Response
{
  "ok": true,
  "data": {
    "min_obs": 20,
    "total": 65,
    "ranked_total": 39,
    "carriers": [
      { "rank": 1, "ranked": true, "provisional": false,
        "carrier_code": "CMDU", "carrier_name": "CMA CGM",
        "on_time_pct": 88, "observations": 214 },
      { "rank": null, "ranked": false, "provisional": true,
        "carrier_code": "ONEY", "carrier_name": "ONE",
        "on_time_pct": 100, "observations": 12 }
    ]
  }
}