Skip to main content
The Outbound Calling API allows you to programmatically initiate outbound calls and check their status. This is useful for proactive customer outreach, appointment reminders, and automated notifications.

Prerequisites

  • An active PolyAI project with outbound calling enabled
  • A connector configured for outbound calls
  • Your account ID and project ID
  • Connector ID for authentication
Contact your PolyAI representative to enable outbound calling for your project and obtain the necessary credentials.

Base URL

Use the regional endpoint that matches your deployment:
RegionBase URL
UShttps://api.us-1.platform.polyai.app
UKhttps://api.uk-1.platform.polyai.app
EUWhttps://api.euw-1.platform.polyai.app

Endpoint paths

All outbound calling endpoints include your account and project IDs in the path:
/api/v1/{account_id}/{project_id}/outbound-call/...

Authentication

All outbound calling endpoints require authentication using the X-CONNECTOR-ID header:
curl -X POST https://api.{region}.platform.polyai.app/api/v1/{account_id}/{project_id}/outbound-call/trigger \
  -H "X-CONNECTOR-ID: YOUR_CONNECTOR_ID" \
  -H "Content-Type: application/json"

Call flow

  1. Trigger call - POST to /api/v1/{account_id}/{project_id}/outbound-call/trigger with phone number
  2. Receive conversation ID - API returns a unique call identifier (starts with OUT-)
  3. Check status - GET /api/v1/{account_id}/{project_id}/outbound-call/status/{call_sid} to monitor call progress
  4. Handle completion - Call status updates to completed, failed, or no-answer

Call statuses

StatusDescription
CREATEDCall record has been created
queuedCall has been queued for processing
ringingCall is ringing at the destination
in-progressCall is active and connected
completedCall ended successfully
failedCall failed to connect
no-answerCall was not answered
busyDestination was busy
cancelledCall was cancelled before connection

Status data retention

Call status data is retained for approximately 2 hours after the call ends. After this period, the status endpoint will return a 404 Not Found error. If you need to retain call data longer, poll and store the status data before it expires.

Rate limits

Outbound calling is subject to rate limits based on your account configuration. Contact your PolyAI representative to adjust limits for your use case.

Best practices

  • Validate phone numbers - Ensure numbers are in E.164 format before triggering calls
  • Handle failures gracefully - Implement retry logic with exponential backoff
  • Monitor status promptly - Poll the status endpoint within 2 hours of call completion
  • Store status data - If you need call status beyond 2 hours, store it in your own system
  • Respect time zones - Schedule calls during appropriate hours for the destination region