Click-to-call
Open a secure Ringee dialer for a contact from your CRM
Agent resolution
ownerExternalId is accepted in the payload but is not yet wired to a resolution strategy — sending it without agentEmail returns 422. Use agentEmail.
Caller ID resolution
When you do not sendfromNumber, Ringee picks one in this order:
- the agent’s first active verified caller ID in that workspace;
- any purchased number on the workspace;
- otherwise the request fails with
422 No caller ID or purchased number is available for this workspace.
Wiring the button
Keep the call server-side
cik_live_ key must never reach the browser.Pre-open the tab
Guard the button
Never auto-dial
Errors
Next steps
Receive the call back
Embed the dialer instead
Authorizations
The cik_live_ secret key of a Custom Integration. Shown once at creation. Server-side only.
Body
The contact's id in your CRM. Resolves to a Ringee contact if you previously synced it with contact.upserted.
"ext_contact_42"
Destination number. Required unless contactExternalId resolves to a contact that already has one.
"+14155550123"
Email of the Ringee user who will place the call. Required for organization workspaces. Take it from your authenticated session, never from a value the browser sent.
"rep@example.com"
Caller ID to use. Defaults to the agent's first active verified caller ID, then any purchased number on the workspace.
"+14155550100"
Alias for agentEmail, used when your CRM models this as a record owner.
Accepted but not yet wired to a resolution strategy. Sending it without agentEmail returns 422 — use agentEmail.
Response
A dialer session was created.
The Ringee contact, when contactExternalId resolved to one. null otherwise.
"6b2f8f1e-6a2e-4f1c-9a3d-2d1b0c7e4a55"
The Ringee user who will place the call.
"a91c4d77-1f0b-4a2e-8c3d-77b1e2f4a9c0"
Normalized destination in E.164.
"+14155550123"
The caller ID Ringee selected.
"+14155550100"
The URL to open. Valid for 5 minutes.
"https://app.ringee.io/dashboard/dialer?session=eyJhbGciOi...&to=%2B14155550123&from=%2B14155550100"
The signed session, already embedded in dialerUrl. Never return it to the browser, persist it, or write it to logs — it authorizes a call on the agent's behalf.
Expiry of the dialer session.
"2026-05-23T14:35:00.000Z"

