Payload sizes
Empty or oversized text, tags, or queries return
400. Some validation
responses do not include an X-Atlaso-Error header. A missing or mistyped
parameter returns 422; recall limit is clamped rather than rejected.
Rate limits
Atlaso uses two-level fair sharing so one busy account can’t starve the platform.- Per credential (project key or device credential): 60
remember/min and 120recall/min. All subjects using the same project key share that key’s limits; separately minted device credentials have separate limits. - Per live process: once an account is placed on a process, that process provides a 600 requests/min floor, with opportunistic bursting up to 10,000/min when it has headroom. This is process-local capacity, not a durable account-wide SLA.
429 with a Retry-After header — honour it
and add a little jitter. Provisioning endpoints may return 429 without that
header; if it is absent, retry with exponential backoff. A 503 placement_denied means the server is momentarily full; retry with backoff.
Within a single account, sharing is best-effort — a very large fleet
(~25+ devices hammering at once) can temporarily crowd out the same account’s
other clients. Spread bursty writes out, or contact us if you’re planning a
large rollout.
Storage
Each account can hold up to 5,000,000 live memories and 20 GiB of memory text. Over quota,remember returns 413 storage_quota_exceeded. Deleting
memories or purging subjects frees the quota. Need more? Email
support@atlaso.ai.
Idempotency
OnlyPOST /memories and POST /device-credentials/batch accept an
Idempotency-Key header. Atlaso uses it for best-effort deduplication per
(project, key).
- Same key, same body → the original result is returned, no second write.
- Same key, different body →
409(you reused a key for a different operation).
Deletion & GDPR
- Delete a memory — a real erase of the memory, its search index, and its conflict links. Not a tombstone.
- Purge a subject — removes an end-user’s entire bag in one call, for “delete my data” requests.
- Both are idempotent and free the storage they used.
- A lapsed Build subscription never deletes anything — data returns on renewal.
Viewing memory in the dashboard
Everything your API writes is visible in the Atlaso dashboard: open the Memory tab and switch to the Build view to browse memories grouped by project and subject. Each project also shows daily usage —remember and
recall calls, hits, and bytes — so you can see what your integration is doing.
Key & credential lifecycle
- Up to 10 live project keys per project; revoke instantly from the dashboard.
- Device credentials: 50 per subject, 100,000 per project; revoke one by id or a
whole fleet by
group_id. - Revocation takes effect immediately — the next call gets
401.