Guides
Click-to-dial from a CRM
POST /api/v1/click2dial rings the agent's extension first, then bridges to the destination when they answer.
How the call is placed
- The CRM sends a destination (E.164 or extension) and identifies the agent with
X-User-Email. - Callfora looks up that user's provisioned extension on the tenant.
- The agent's phone rings. After they answer, the destination is bridged.
The key needs the click2dial permission. Users without an extension receive NO_EXTENSION.
Request
destination— required, 2–50 charactersringback— optional FreeSWITCH tone string
curl
curl -X POST "https://console.callfora.com/api/v1/click2dial" \
-H "X-API-Key: cf_your_api_key_here" \
-H "X-Tenant-Id: your-tenant-uuid" \
-H "X-User-Email: user@example.com" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: crm-call-001" \
-d '{"destination":"+15551234567"}'CRM embed notes
- Keep the
cf_key on your server. The browser should call your backend, not the External API directly with a secret. - Pass the signed-in agent's email so the originate uses their extension, not a shared trunk.
- Correlate the returned
callIdwith later CDR rows for the same tenant.