One API. Same tools for Claude.
Read every call, recording, summary, and prospect. Push custom emails into Sequences. Interrupt a dialing rep with a hot lead the second a form comes in. The REST API and the MCP server run the same handlers, so nothing is locked to one or the other.
Keys in Settings for every admin · REST and MCP · No spend from a key
dialer.callcloud.app/docs/api
Request
curl https://dialer.callcloud.app/api/v1/calls/search \ -H "Authorization: Bearer cc_live_••••••••" \ -d '{"outcome":"meeting_booked","since":"2026-10-01"}'
Endpoints
- GET/stats
- GET/calls/search
- GET/prospects
- GET/prospects/:id
- GET/sequences
- POST/files
- POST/sequences/:id/emails
- POST/hot-leads
Response
200 OK · 84 ms{ "calls": [ { "prospect": "Olivia Bennett", "company": "Glenmoor Logistics", "outcome": "meeting_booked", "talk_time_sec": 204, "recording_url": "https://…/recording.mp3", "ai_summary": "Opening a Denver terminal…" } ], "count": 61}
Teams dialing on CallCloud




Your data, not ours to keep.
Everything the dialer records is yours to pull: who you called, who answered, what was said, what the AI made of it. The API exists so your CRM, your warehouse, and your AI assistant can read it without a middleman.
Keys for every admin
Create and revoke keys in Settings. No partner program, no sales call, no waitlist.
MCP parity
Add CallCloud to claude.ai as a custom connector with the same key. Every REST endpoint is a tool, and every tool is an endpoint.
Read, push, never spend
A key can read and push. It cannot place calls on its own, buy numbers, or touch billing. A suspended workspace loses every key at once.
REST
Every call, with everything attached.
Search calls by outcome, rep, campaign, or date. Each result carries the recording URL, the transcript, the AI summary, and next steps. Prospects come back with every field you imported, the hot and cold tag, and their call history.
- Calls, recordings, transcripts, AI summaries
- Prospects with custom fields and history
- Workspace stats for today, this week, this month
dialer.callcloud.app/docs/api
Request
curl https://dialer.callcloud.app/api/v1/calls/search \ -H "Authorization: Bearer cc_live_••••••••" \ -d '{"outcome":"meeting_booked","since":"2026-10-01"}'
Endpoints
- GET/stats
- GET/calls/search
- GET/prospects
- GET/prospects/:id
- GET/sequences
- POST/files
- POST/sequences/:id/emails
- POST/hot-leads
Response
200 OK · 84 ms{ "calls": [ { "prospect": "Olivia Bennett", "company": "Glenmoor Logistics", "outcome": "meeting_booked", "talk_time_sec": 204, "recording_url": "https://…/recording.mp3", "ai_summary": "Opening a Denver terminal…" } ], "count": 61}
MCP
Let Claude write the emails and push them in.
Add CallCloud to claude.ai as a custom connector. Claude can list your sequences, upload a brochure, and push a custom email per prospect into any email step, attachments included. The sequence stays paused until you turn it on.
- list_sequences, upload_file, push_emails
- Up to 50 people per push, files up to 10 MB
- Prospects matched by id or email, created if new
Claude | CallCloud connector
Write a custom intro email for each of these 12 ops leaders, attach the Chicago one-pager, and push them into Q4 Outbound as step 1.
Drafted 12 emails, one per prospect, and uploaded the one-pager. Pushed them into Q4 Outbound, step 1.
- 12 prospects enrolled, 3 created from email only
- chicago-terminal-pilot.pdf attached to each
- Sequence left paused, waiting for you to turn it on
Tools used
Hot leads
A form lead interrupts a dialing rep.
Post a hot lead and one free dialing rep has their ringing lines cut, the lead dialed alone on their line, and a hot-lead card on screen. Name a rep, or let it pick the first one free. A live call is never cut, and if nobody is dialing the lead goes to the front of the queue.
- POST /hot-leads from any form tool
- Ringing lines cut, live calls never
- Front of the queue when nobody is dialing
CallCloud | Dialing · Q4 Ops Leaders
Active lines · 5
22 ms answer to rep- 1
Dana Whitfield
VP of Operations · Northpeak Freight
Listening
0:03
- 2
Marcus Hayes
Director of Operations · Copperleaf Staffing
Ringing
0:08
- 3
Renee Okafor
COO · Tallgrove Solar
Ringing
0:08
The other lines keep ringing until you press Connect · Up next: 2,617
[ 05 ] // Endpoints
Everything behind one key.
Calls and recordings
Search calls by outcome, rep, campaign, or date. Each one carries the recording URL, transcript, AI summary, and next steps.
Calls and recordings
- GET /calls/searchFilter by outcome, since
- recording_urlmp3
- ai_summaryText
[ 06 ] // Quick start
Three steps to your first call record.
01
Create a key
Settings, then Developers. Any admin can do it. Copy the key once; it is shown once.
02
Call the API
Send it as a Bearer token to dialer.callcloud.app/api/v1. Start with GET /stats to check the key works.
03
Or connect Claude
Add the MCP URL from Settings as a custom connector in claude.ai with the same key. Ask it what it can see.
[ 07 ] // FAQ
Questions, answered.
How do I get an API key?+
Any workspace admin can create one in Settings, under Developers. Keys are scoped to your workspace, can be revoked at any time, and are all revoked if the workspace is suspended.
Can the MCP server do anything the REST API cannot?+
No. They run the same handlers. Anything you can do from Claude through the connector, you can do with a key and curl, and the other way round.
What can a key do, and what can it not do?+
Read stats, calls, recordings, transcripts, AI summaries, prospects, and sequences. Upload files and push custom emails into a sequence. Interrupt a dialing rep with a hot lead. A key cannot place calls on its own, buy numbers, or spend money.
What are the limits?+
Up to 10 keys per workspace and 120 requests per minute per key. Pushes take up to 50 people per call and files up to 10 MB.
Do I need CallCloud+ for the Sequences endpoints?+
Yes. Listing sequences, uploading files, and pushing emails need Sequences on your plan, which is part of CallCloud+. Everything else works on either dialer plan.
Are there webhooks?+
Not for standard workspaces yet. Poll the calls endpoint with a since parameter, or tell us what you would hook and we will move it up.
[ 08 ] // Build on it
Start with a key. Ask for the rest.
Missing an endpoint? Text the founder from any page. The ones on this page were built because someone asked.

