Version

Versioning & Deprecation

How the API is versioned under /v1, how new functionality is added, and how breaking changes are announced and retired.

The public API ships under /v1/*. v1 is the only contract currently published. New functionality is added additively; breaking changes will only ever appear in a future major version such as /v2/*.

Additive vs breaking

Treat your client as tolerant of additions. The following are not breaking and can ship at any time on v1:

  • A new optional request parameter.
  • A new field in a response body.
  • A new enum case in an existing enum (a project status, a webhook event, an alert class).
  • A new endpoint.
  • A new error code (error.code).
  • A reworded error.message. The stable contract is error.code, not the free-form message.

The following are breaking and will not happen on v1:

  • Removing a field from a response.
  • Renaming a field.
  • Changing a field's type.
  • Adding a new required request parameter.
  • Changing the semantics of an existing parameter or enum case.
  • Renaming an endpoint path.
  • Changing an HTTP status code for an existing scenario.

Webhook payload versioning

Outbound webhook envelopes carry an api_version field. Consumers that care about payload stability should read it and branch on value changes; additive changes leave the version stamp unchanged.

{
  "id": "evt_01J...",
  "type": "project.created",
  "api_version": "2026-10-26",
  "created_at": "2026-10-26T10:05:00Z",
  "project_id": "7d1f...",
  "data": {}
}

Subscribing to a new event type is never breaking; the envelope shape does not change, only the type value.

When a breaking change is eventually needed

If Zuse Bifrost ever needs to break a contract on the REST API, the process will be:

  1. A new major version (/v2/*) is published alongside /v1/*.
  2. v1 continues to operate for a long transition window so existing integrations do not break.
  3. Affected responses carry Sunset and Deprecation headers per RFC 8594 as the window narrows.
  4. After the window closes, v1 is removed and callers receive 410 Gone.

This page will be updated when a v2 contract ships. Today, v1 is the only version.

How is this guide?

Last updated on

Version

On this page

What changed recentlyEvery release of Zuse Bifrost, with the pages it touched.

For AI agents: llms.txt ยท llms-full.txt