/api/v1 and authenticate with a Bearer API key that starts
with cdojo_. There is no other supported base URL and no environment selector.
What you can automate
Only the operations in the API reference section of this site are public API. Everything
else the application does (the interactive simulator, entity editing, account and
key management) is browser functionality, not part of this contract.
Authentication
Every request sends the key in theAuthorization header:
Response envelope
Every response is JSON, except the journey event stream, which istext/event-stream.
Successes wrap their payload:
- A
202means the work was accepted and is still going. It is not a success verdict and not a failure. Poll or wait for the result instead of gating on it. - A
503on a charging journey start means our runner is unavailable. It is a statement about our service, never a verdict about your partner’s implementation.
Limits and usage
Plans set ceilings on connections and on runs per minute and in flight. Report retention differs between free and paid. The active-key cap is the same for every account. Read your own numbers instead of hardcoding them:429 with a Retry-After header. A resource
cap, meaning connections or API keys, returns 409 instead: waiting will not help, so free a
slot or upgrade. An
in-flight charging journey holds one run slot until it reaches a terminal state, and a
run waiting on a recovery decision keeps holding its slot until you decide.
Where to go next
Create an API key
Sign in, create the key in Settings, store it once.
Quickstart
A complete conformance run from the command line.
Connect a partner
Register a real partner endpoint and run against it.
Run a charging journey
Drive a full charging story and watch it live.