Overview
Saturn’s external API for firms integrating their own systems.
Authentication
Every request needs your API key:
Authorization: Api-Key <your key>
The key identifies your firm. All data returned is your firm’s data, and only your firm’s data — there is no parameter to select an organisation, and any attempt to supply one is ignored.
Keys are shown once at creation and cannot be recovered. If a key is lost or exposed, ask Saturn to revoke it and issue a new one.
Identifying records
Every record has a saturn_ref_id — a UUID that is stable for the life of the record. Store it when you first see a record and use it for every later request.
You do not tell Saturn which CRM you use, and there are no CRM-specific identifiers or endpoints. If you have no CRM integration at all, this API still works exactly the same way.
Response shape
Successful responses:
{ “success”: true, “data”: { … }, “error”: null }
List responses add pagination:
{ “success”: true, “data”: [ … ], “meta”: { “pagination”: { “count”: 120, “limit”: 10, “offset”: 0 } } }
Optional fields are null when unset, never an empty string, so you can distinguish “not recorded” from “empty”.
Status codes
A 404 for another firm’s record is deliberate: a 403 would confirm the record exists, which would let anyone probe for valid ids.
Rate limits
Limits are per key. X-RateLimit-Limit and X-RateLimit-Remaining are returned on every response. If you are backfilling and need a higher ceiling, ask before you start rather than discovering the limit mid-run.
