Atelier201 websiteJoin the waitlist
Files and historyChange files
files

Change files

Applies put, delete and move operations as ONE history entry. Each operation may carry the expected_hash you read; a file changed since is a 409 with the current revision and nothing is written. Prefer the content endpoints for texts, entries and business details: they validate against the site's content model and cannot break its layout.

POST/v1/sites/{site_id}/commits

Requires sites:write. Costs no credits. Changes the draft only. Visitors see nothing until you publish.

Use this to change code: a layout, a component, the content model. For texts, entries and business details, use the content endpoints: they validate against the content model and cannot break the layout.

Avoid overwriting someone else

Put the hash you read in expected_hash on every operation. If one of those files changed since, the whole change is refused with 409 conflict and nothing is written. The error’s details hold the current revision:

JSON
{
  "error": {
    "code": "conflict",
    "details": {
      "reason": "revision_conflict",
      "current_revision": "9f2c...",
      "paths": [
        { "path": "src/pages/index.astro", "expected": "a1b2...", "found": "c3d4..." }
      ]
    }
  },
  "request_id": "req_01K9X7"
}

Read the files in paths again (each lists the hash you expected and the hash found), apply your change on top and retry. base_revision says which revision you read: the change still applies when the files it touches did not move.

Keep the site static Astro: no server adapter, no server-side rendering.

Authorizations

Authorizationbearerin headerrequired

Path parameters

site_idstringrequired

The site's id, or its slug (the address before .atelier201.page).

Body

application/jsonrequired
summarystringrequiredlength: 1–500 chars

What the change does, in a sentence: it is the history entry people read.

base_revisionstringlength: 40–40 chars

The revision you read. The change still applies if the files it touches did not change since; otherwise 409 with the current revision.

operationsobject | object | object[]requireditems: 1–500 items

Response

application/json

Change files (one commit)

dataobjectrequired
request_idstringrequired

Use these docs with your AI tools

An AI agent can read this documentation directly. You do not need an account or an API key. Everything here is public and read-only.

Query these docs via MCP

Recommended

Add this server to Claude, Claude Code, Cursor, Mistral, or any tool that supports MCP. Your agent can then search Atelier201 Docs documentation and read it in full, instead of answering from memory.

https://atelier201.com/docs/mcp
  • searchFind the passages that answer a question.
  • fetchRead one page in full, as Markdown.
  • list_pagesSee every page in this documentation.

Query these docs over HTTP

The same tools also work as plain web requests. Use this for scripts, or for any tool that does not support MCP. There is one endpoint per tool. Arguments go in the query string, and the answer comes back as JSON.

https://atelier201.com/docs/api/docs/search?query=custom+domain

Read the OpenAPI description. It is built from the same definitions as the tools, so it always matches what the endpoints do.

Read these docs as Markdown

Add .md to any page URL to get its Markdown source. You can also send the headerAccept: text/markdown to the page URL itself.

To read the whole documentation in one file, open llms-full.txt. For a short index of every page, open llms.txt.