← ChangelogBreaking

API version 2026-12-01: one rule for every write

2026.12.01-api
The Forumulate team
2 min read
apiversioning

2026-12-01 is the newest API version. It groups three breaking changes under one date, so you move once. Nothing changes for you until you send the header:

Forumulate-Version: 2026-12-01

On 2026-11-01, 2026-09-01, or with no version, every behaviour below stays as it was. 2026-12-01 includes everything in 2026-11-01 (paging carries only hasMore/nextCursor).

Changed — only when you state 2026-12-01 or later

Unknown request fields are refused. If a write includes a body field the operation does not recognise, at the top level or inside a block document in content, the answer is a 422 validation.failed naming its path, and nothing is written. Earlier versions drop the field, answer 200, and name it on X-Unrecognized-Fields. The theme, site and topic-edit writes already refused; now every write does.

A taken page slug is a 409. If you leave onSlugTaken out when creating or renaming a page, a taken slug answers 409 page.slug_taken instead of quietly publishing at slug-2. Send onSlugTaken: "suffix" to keep the rename.

A new public space joins a site only when you say so. POST /orgs/{orgId}/spaces with no siteId leaves the space out of every site. Earlier versions still add a PUBLIC space to the organization's oldest site, and the answer's warnings names that site. Send siteId (or null) to choose explicitly on any version.

Before you switch

  • If you send back an object you read, strip read-only fields like id and createdAt first; with this version they are a 422. Try a single call first: the error lists every field it would refuse.

  • If you relied on automatic slug suffixes or automatic site membership, send onSlugTaken: "suffix" or siteId. Both work on every version.

The official SDKs still send 2026-11-01, so nothing changes for SDK users today; they move to 2026-12-01 in a later SDK release, which will say so. To opt in now, set the Forumulate-Version header yourself. The full list of versions is at Versioning.