Overview
The Samora AI API lets you trigger immediate outbound calls and manage outbound campaigns through the Samora AI system. Use it to start calls with your AI agents, pass per-call context, create campaigns, add recipients, and manage campaign lifecycle from your server.Base URL
All requests go to:Authentication
Every request must include your organization API key in the header:These APIs are intended for server-to-server integrations. Do not expose your
organization API key in browser or mobile clients.
Endpoints
Calls
Campaigns
Webhooks
Phone number format
Destination numbers must be in E.164 format (e.g.+919876543210) and
include the country code. The pattern is: + followed by 10–15 digits.
Call statuses
When you fetch call details,status can be:
PENDING— Call request created, not yet initiatedTRIGGERED— Call initiatedONGOING— Call in progressCALL_FINISHED— Call completedUNANSWERED— No answerREJECTED— Call rejected
Campaign lifecycle
Campaignstatus can be DRAFT, SCHEDULED, IN_PROGRESS, PAUSED,
FINISHED, FAILED, or CANCELLED.
- Add recipients only when campaign status is
DRAFTorPAUSED - Start campaigns only from
DRAFTorPAUSED - Stop campaigns only from
IN_PROGRESS - Cancel campaigns unless they are already
FINISHED,FAILED, orCANCELLED
Campaign API limits
- Request body size: 2 MiB
- Campaign name: up to 120 characters
- List campaigns
page_size: up to 100 - Add recipients: up to 5000 phone numbers per request
- Recipient
call_variables: up to 4 KiB per phone number
Retry configuration
Campaign create and update endpoints accept an optionalretry_config object:
retry_on values are UNANSWERED, REJECTED, VOICEMAIL, and
FAILED. When retry_config is provided, max_retries must be between 1 and
5, retry_delay_minutes must be between 1 and 1440, and retry_on must include
at least one supported status.
Transcripts and recordings
For finished calls, the Get call details response can include:- transcript_url — Presigned URL for the call transcript (valid 60 minutes)
- recording_url — Presigned URL for the call recording (valid 60 minutes)
Webhooks
Webhooks let you receive real-time notifications when call events occur. You can subscribe to specific event types:CALL_STARTED— Triggered when a call beginsCALL_FINISHED— Triggered when a call ends (transcript and recording available)CALL_FAILED— Triggered when a call fails, is rejected, or goes unanswered
data_options.
Webhook endpoints use the
/v2/webhooks base path at https://api.samora.ai.