Versioning and support

What stays put, what may grow, how much notice you get, and where to ask for help.

The version is in the path

Every call your product makes starts with /v1. That prefix is the version of the contract in the API reference.

Only /v1 is the public API. Paths that start with /api/ belong to the Console and can change at any time. Do not build on them, even if you can see them in a browser's network tab.

What we promise on /v1

/v1 stays stable. We make no breaking change inside /v1: a client written against these docs keeps working.

What counts as a breaking change

  • removing or renaming an endpoint, a field, or a parameter;
  • changing the type or the meaning of a field, a parameter or a value;
  • a new input that a request must now carry.

What does not

These can appear in /v1 at any time, without a new version:

  • a new endpoint under /v1;
  • a new optional field on a request;
  • a new field on a response, on a stream event, or inside a webhook's data;
  • a new stream event type, a new webhook event type, a new run status or error code value.

That is why a client must ignore what it does not know — see Write a client that expects it.

When a breaking change comes

A breaking change ships as /v2, beside /v1. We give you at least 90 days' notice before /v1 is switched off, so you have time to move.

Write a client that expects it

  • Ignore fields you do not know. Do not reject a response, or a webhook, because it has an extra property. If you validate with a schema, allow unknown keys.
  • Skip event types you do not know. On a stream, read the event: line and ignore a type you do not handle — the streaming guide lists today's 13. For webhooks, answer 2xx for an event type you do not use, so it is not retried.
  • Treat enums as open. Have a default branch for an unknown status or error code. Fall back to the HTTP status.
  • Branch on codes, not on text. The title, detail and message wording can be improved at any time. The HTTP status, the code member and the field names are the contract. See Errors.
  • Do not depend on order or on a field being absent. JSON property order is not meaningful, and a field that is null today may carry a value tomorrow.

Changes

A dated list of what is added to /v1, newest first. It starts with the surface as it stands when this page was written; the operations below are read from the same generated reference as the rest of these docs, so the list cannot disagree with the reference.

2026-10-15 — the documented surface

The 14 operations of /v1:

The run stream carries 13 event types, listed in the streaming guide; webhooks carry the events listed in Webhooks.

Support

Support is by email: [To be supplied: our general contact email address].

What we do not promise yet

There is no uptime or availability promise yet.