Changelog
Every change to the public API and to the official SDKs, newest first. It tells the people who integrate the API what changed in the contract.
What counts as breaking
A breaking change is anything that can make a working integration fail, or read data differently: a field or an endpoint removed, a rejection code renamed, a constraint tightened (a smaller limit, a value no longer accepted), a default that changes meaning. Breaking changes are announced here at least 90 days before the old behaviour stops, with the date, and what to do instead.
Everything else is additive and may land at any time, without notice: a new endpoint, a new optional field in a request, a new field in a response, a new rejection code. An integration must therefore ignore the fields it does not know, and treat an unknown rejection code as "fix this" rather than "retry this": the rule of the Errors page.
Nothing is removed in silence. A field gone from a response without an entry here is a bug: write to support@sinio.ai.
2026-10-27
Changed
POST /v1/events,POST /v1/webhooks/{key}: a request body may now weigh up to 10 MB, so a full batch of 500 events is no longer refused as a whole; a larger body is a413, before any validation.POST /v1/webhooks/{key}: the URL honours the declaredmode, asPOST /v1/eventsdoes. A history sent through a webhook URL with"mode": "backfill"no longer raises alerts.- Backfill: an imported history is now replayed by the project's processes once it has arrived. A project with no process yet replays it when its first process is published.
Added
test_modein the ingestion responses:truewhile the key is still in test mode, during a connection set up from the console. The events are checked and counted, but nothing is derived from them until you keep the test.
Initial release
The first version of the public API, as this site documents it.
Added
POST /v1/events: batched ingestion, up to 500 events per call, idempotent on(project, source, source_event_id, revision); backfill goes through the same endpoint.POST /v1/webhooks/{key}: the receiving endpoint for a system that can only be pointed at a URL.POST /v1/entities,POST /v1/locations,POST /v1/assignments: the things followed, where they are, who holds which badge.
SDKs
- First published version of the three official clients,
@sinio/sdk(Node.js),sinio(Python) andsinio/sinio-php(PHP): chunking, retries, local validation and typed errors, as the SDKs page describes them.