Changelog
What counts as breaking
The distinction that decides whether something appears here as a warning or as a note.
Not breaking, and shipped without notice:
- A new endpoint, a new query parameter, a new webhook event, a new MCP tool.
- A new field inside a response body or a webhook
data. - A new member of an enumeration — a payment rail, an order status, a dispute reason.
- A new error
code. - Any change to an error
message, which is a sentence for a person.
Breaking, and announced here before it ships, with the old behaviour kept working for a stated period:
- A field removed, renamed, or changed in meaning.
- An endpoint removed.
- A webhook event removed, or one that starts firing at a different moment.
- An error
coderenamed.
The deal is symmetrical. Sailo does not break you with an additive change, and in exchange your mapping must ignore fields it does not recognise and must not throw on an unfamiliar enumeration member. A consumer that validates a payload against a closed schema has opted out of that deal.
Two version numbers carry it: sailo-version (a date) on every REST response,
and version (an integer) inside every webhook envelope. Both move only on
a breaking change. See versioning.
Current
| REST API | 2026-08-12 |
| Webhook payload | 1 |
| MCP protocol | 2026-07-28, with the handshake for 2025-11-25, 2025-06-18 |
| MCP server | sailo 1.0.0 |
History
2026-08-12 — the current contract
The version every response carries today. It covers:
- 9 REST operations over shops, orders, products and contacts.
- 16 webhook events, signed with Standard Webhooks.
- 9 MCP tools over the same key.
Nothing has been removed or renamed since. Everything since has been additive and is described on the pages it belongs to rather than repeated here.
Watching for changes
This page is the signal for anything breaking. Nothing is announced only in a release note somewhere else.
The OpenAPI document, at /api/v1/openapi.json, is the
machine-readable version of the REST surface. Diffing it in CI will show you
additive changes too, which is more signal than most consumers want — but it is
there.
/llms-full.txt is this entire site as one Markdown file, if you would
rather diff prose.
Deprecations
None currently in force.
When there is one it will appear here with the date it was announced, the date the old behaviour stops, and what to do instead — in that order, before it ships.