Generate an API key
Dashboard → Settings → Connections & API
OpenAPI description
OpenAPI 3.0.1, 35 operations, typed responses
Error reference
The JSON error envelope and what to do about each status
MCP server
Hosted MCP endpoint for AI assistants
1. Get an API key
- Open the Salesfinity dashboard and go to Settings → Connections & API.
- Generate a new API key.
- Copy it immediately and store it in your secret manager. Treat it like a password.
Keys are long-lived and do not expire on a schedule. Rotate them from the same settings screen
when someone with access leaves, or if a key is ever committed to source control.
2. Make your first call
Every endpoint authenticates with thex-api-key request header. The cheapest way to verify a
key is to read the team it belongs to.
3. Build the client
There is no official Salesfinity SDK. The API is small, uniform, and fully described by an OpenAPI document, so the two supported paths are a thin hand-written client or a generated one.Generate a client from the OpenAPI description
The description at/api-reference/openapi.json is also served at
/openapi.json. Every operation has a unique operationId, which becomes the
method name in most generators.
Conventions worth encoding once
Retries
Retry on 429 and 5xx with exponential backoff and jitter. Do not retry 400, 402, 403, or 404 — none of them succeed on a second identical attempt.POST endpoints are not
idempotent, so cap retries and confirm state with a GET before retrying a create.
Salesfinity does not currently publish a fixed request quota. Build the 429 path anyway and keep
concurrency modest.
4. Test safely
There is no separate sandbox host.https://client-api.salesfinity.co is the only public API
host, and it operates on live data, so build your test plan around that:
- Start read-only.
GET /v1/team,GET /v1/dispositions,GET /v1/custom-fields, and the analytics endpoints have no side effects and are safe to hammer during development. - Use a dedicated test team. Generate a key for a team that is not actively dialing, so writes cannot disturb a live queue.
- Use a throwaway contact list. Create a List gives you an isolated target for add, remove, and merge calls that you can delete afterwards.
- Know which writes reach the dialer. Add a Contact to a List puts the contact into the dialing queue immediately, and Reimport Contacts pushes a whole list into it. Everything else is safe to exercise against a test list.
- Point the enrichment
callback_urlsomewhere disposable while developing, so test results are not POSTed at a production handler.
5. Pick an integration surface
REST API
35 operations for full programmatic control. Best for backend integrations and data sync.
MCP server
Hosted at
https://mcp.salesfinity.ai/mcp. Best for AI assistants and internal tooling.Use cases
Worked examples for managers, reps, and shared workflows.
Machine-readable resources
Every documentation page is also available as Markdown — append
.md to the URL, or send an
Accept: text/markdown request header:
Support
- Email — [email protected]
- Help center — support.salesfinity.ai
error and statusCode from the response body
when reporting an API problem. Never include your API key.