Skip to content
GETAPI key

Demurrage risk

GETapi.trackingmcp.com/v1/containers/demurrage

Free-time clocks across every box we can assess. Read unassessable_containers before you read the list: free days are a term of your carrier contract, so a short list is often missing terms rather than free of risk.

Response fields

Derived from the example response.

okboolean

Whether the request succeeded.

dataobject

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

data.total_at_risk_usdnumber

Projected demurrage across the assessable boxes, in USD.

data.containers_at_risknumber

How many boxes the projection covers.

data.itemsobject[]

The list of results.

data.items[].container_idstring

The container number this row is about.

data.items[].portstring

Port UN/LOCODE.

data.items[].free_days_leftnumber

Days before free time runs out. Negative once charges are accruing, null when we hold no last free day.

data.items[].daily_rate_usdnumber

Daily demurrage rate in USD.

data.items[].projected_usdnumber

Demurrage accrued so far on this box, in USD.

data.unassessable_containersnumber

Discharged boxes we cannot assess because no free-time terms are on file. An empty risk list with a number here is not a clean bill of health.

data.coverage_notestring

Plain-English account of what the report could not measure. Null when nothing was missing.

Errors

A failure carries { "ok": false, "error": { "code", "message", "severity" } }. Branch on the code, and log the message.

UNAUTHORIZED401

The key is missing, malformed or revoked.

DB_ERROR500

We could not read your book. Retry.

curl 'https://api.trackingmcp.com/v1/containers/demurrage' \
  -H "Authorization: Bearer tmcp_YOUR_API_KEY"
Response
{
  "ok": true,
  "data": {
    "total_at_risk_usd": 4820.5,
    "containers_at_risk": 3,
    "items": [
      {
        "container_id": "MEDU1234562",
        "port": "USLAX",
        "free_days_left": 2,
        "daily_rate_usd": 185,
        "projected_usd": 370
      }
    ],
    "unassessable_containers": 11,
    "coverage_note": "11 discharged container(s) cannot be assessed: free days are a term of your carrier contract and none are on file. This report is not a clean bill of health. Supply terms via POST /v1/demurrage-terms."
  }
}