Pricing API

Read the contract before you talk to us.

One endpoint prices a job. The contract that describes it is public and needs no key — because deciding whether to build against someone is a thing you should be able to do on your own.

The contract answers for itself

Everything about the request and the response — every field, its type, whether it is required, the nested shapes, worked examples, the deprecation policy and the rate limit — is served by the API itself:

curl https://cerrax-portal-api-zenqusyaia-nw.a.run.app/v1

That is generated from the same models that validate your request, so it cannot fall out of step with what the endpoint accepts. It is also why this page is short: anything we retyped here would be a second copy, and second copies go stale.

Pricing a job

The smallest request that returns a price:

curl -X POST https://cerrax-portal-api-zenqusyaia-nw.a.run.app/v1/price \
  -H "X-Cerrax-Api-Key: <your key>" \
  -H "Content-Type: application/json" \
  -d '{
    "region": "ca",
    "volume": { "value": 1130, "unit": "ft3" },
    "distance": { "value": 77, "unit": "km" }
  }'

Supply distance (a value and a unit — here, kilometres) or both postal codes. Access, adjustments, pack level, dates and your own reference are all optional — and the field guide at /v1 lists every one with its meaning.

What we promise, and what we don’t

  • The same job returns the same price. The engine is deterministic and versioned; a given input and engine version always produce the same number, and every change to it is published with a date at /kernel/changelog.
  • Adding a field is not a breaking change; removing one gets a new version. The full deprecation policy, including the notice period, is in the contract.
  • The key identifies the firm. There is no moverId field to pass — you cannot price as somebody else by accident.
  • A field we don’t accept is refused, not ignored. A misspelling gets a 422 naming it, rather than a price that quietly ignored what you sent.
  • When it doesn’t know, it says so. Low-confidence inputs can come back escalated for a human instead of a number. We would rather hand you an honest refusal than a confident guess.

Getting a key

Keys are issued per firm, in a conversation — we’re early, and we’d rather understand what you’re integrating than hand out credentials at scale. Tell us what you’re building and we’ll reply within one working day.

Nothing above requires one. If reading the contract is enough to tell you this isn’t a fit, that is a good outcome and it cost you a curl.

Cerrax in Canada

Currency
CAD
Distance quoted in
kilometres

A semi in Toronto's east end moving up the 401 to Ottawa: a box truck, a crew of three, and a condo tower at the other end where the freight elevator has to be booked. Cerrax prices it from the cube in cubic feet, the highway kilometres and the wait for that elevator slot — the crew's hours shown line by line.

The vehicles it plans with here:

  • Cargo van (246 cu ft)
  • 15-ft box truck (764 cu ft)
  • 20-ft box truck (1,016 cu ft)
  • 26-ft box truck (1,682 cu ft)