Skip to main content
The CloudTalk REST API v1.7 gives you programmatic access to your call center data and operations. It is organized around resources — Calls, Contacts, Agents, Numbers, and more — and follows predictable, resource-oriented URL conventions. All requests must be made over HTTPS, and responses are returned as UTF-8 encoded JSON. Core endpoints wrap payloads in a responseData envelope; some specialized surfaces differ — see the notes below.

Base URLs

Most API endpoints share a single base URL. A handful of specialized capabilities — detailed analytics, AI features, and real-time agent guidance — use their own dedicated hosts.
Always use the correct base URL for the resource you are accessing. Using the wrong host will result in a 404 response even if the path is correct.

Authentication

Every request to the CloudTalk API must include HTTP Basic Auth credentials — the same key pair on every host. Use your API Access Key ID as the username and your API Access Key Secret as the password.
Only Administrators can create API keys. You can generate and manage them in the CloudTalk Dashboard under Account → Settings → API Keys (open directly).
Keep your API credentials secure. Do not commit them to source control or expose them in client-side code. Rotate your credentials immediately if they are compromised.

Response Envelope

All successful responses from the standard API are wrapped in a top-level responseData object. Paginated collection endpoints include pagination metadata alongside the data array.
Single-resource responses omit the pagination fields and return the resource object directly inside responseData.

HTTP Methods

The core API does not use POST and PUT the way most REST APIs do. On my.cloudtalk.io/api, PUT creates and POST updates — the reverse of the usual convention. Reaching for POST to create a resource will not work.
Three core endpoints are actions rather than updates, and use POST for that: Make a call, Send sms and Contact actions. PATCH is not used by the core API.

Newer surfaces use conventional REST

The newer surfaces follow the usual convention, but most expose only a slice of it: Conversation Intelligence is read-only, and VoiceAgent and CueCard are POST-only. Dialer is the only surface with PATCH, PUT or DELETE operations:

Error Handling

When a request fails, CloudTalk returns an appropriate HTTP status code along with a JSON body describing the error.
Common status codes you will encounter across all endpoints:

Pagination

Collection endpoints support pagination via limit and page query parameters. The response envelope includes itemsCount, pageCount, and pageNumber fields to help you iterate through large result sets.
The maximum value for limit is 1000.

Resources

The API is divided into the following resource groups:

Calls

Access call history, download recordings, initiate outbound calls, and retrieve real-time group statistics.

Contacts

Create, update, and delete contacts. Manage tags, notes, and contact activity history.

Agents

Manage agent accounts, update agent details, and control group memberships.

Numbers

List and configure the phone numbers assigned to your CloudTalk account.

Groups

Create and manage agent groups, including group membership and routing rules.

SMS & WhatsApp

Send outbound SMS messages and WhatsApp messages to contacts.

Tags

Create and manage tags that can be applied to calls and contacts for classification.

Campaigns

Manage outbound dialer campaigns including power dialer and predictive dialer configurations.

Bulks

Perform batch operations on contacts, such as bulk import and bulk tagging.

CueCard

Deliver real-time agent guidance cards during live calls via the CueCard platform API.

Conversation Intelligence

Access AI-powered call analysis including summaries, full transcriptions, and sentiment scores.

VoiceAgent

Initiate AI voice agent calls programmatically, and stop outbound VoiceAgent dialing in an emergency.

Dialer

Manage sales-dialer campaigns, contacts, call scripts, surveys, disposition buttons, statistics, and exports. Separate base URL and response shape; same Basic-auth credentials.

Utilities

Access supporting data such as the countries list and manage the inbound call blacklist.

Rate Limits

CloudTalk enforces rate limits to ensure platform stability. If you exceed the allowed request rate, the API returns a 429 Too Many Requests response. Implement exponential backoff in your integration to handle transient rate-limit errors gracefully.
For high-volume integrations, batch your requests using the Bulks endpoints where available, and cache reference data (agents, groups, tags) locally rather than fetching it on every request.