Getting Started
Start building with the SalesOS API in minutes.
The developer portal is the complete guide to API keys, scopes, OAuth, rate limits, idempotency, events and versioning. These pages are a short overview.
Base URL
All API requests go to:
The machine-readable contract is the OpenAPI document at
/v1/openapi.json.
Quick Start
1. Create an API key
Open Settings → API Keys, choose New API Key, grant only the scopes the
integration needs (for example READ_LEADS), and copy the secret — it is shown
once. See scopes.
2. Make your first request
3. Read the response
List endpoints return one envelope:
Authentication
| Method | Header | Best for |
|---|---|---|
| API key | X-API-Key: <key> | Server-to-server integrations and scripts |
| OAuth 2.0 access token | Authorization: Bearer <token> | Apps that act for other users or organizations |
| Session token | Authorization: Bearer <token> | The SalesOS web app |
See Authentication.
Request format
- Request bodies are JSON with
Content-Type: application/json. - IDs are opaque strings; don't parse them.
- Timestamps are ISO 8601 in UTC (
2026-01-15T10:30:00.000Z). - Unknown body fields are rejected with
400. - Send an
Idempotency-KeyonPOSTandPATCHso a retry can't create a duplicate (idempotency).
Errors
Every error has the same shape, with a stable code to branch on:
Next steps
- Authentication — API keys, sessions and 2FA
- Error Handling — status codes and what to retry
- Pagination — paging, sorting and filtering lists
- Rate Limiting — quotas and backing off
- Webhooks — real-time event notifications
- API Reference — every endpoint