Skip to main content
POST
Error

Authorization

All endpoints require Bearer token authentication.

Getting Your API Key

See the Quickstart guide for instructions on obtaining your API credentials.

Use Cases

  • Mass Collections Campaigns: Send AI-powered payment reminders to many contacts at once
  • Batch Customer Outreach: Handle routine communication across your contact database efficiently
  • Scalable Follow-ups: Follow up on overdue invoices at scale with personalized conversations

Request Body

Contact Object

Each object in the contacts array:

Response

Returns a 201 status on successful initiation of all calls.

Example Request

Prompt Tags

promptTags is an optional object of key-value pairs used for template variable substitution in the system prompt. Each key maps to a placeholder in your prompt template, and the value replaces it before the call starts. This is separate from metadatametadata is stored on the call log and included in webhooks, while promptTags is consumed at call time to populate the system prompt.

How It Works

Your system prompt template uses {{key}} placeholders. When each call is initiated, the {{key}} from that contact’s promptTags is replaced. System prompt template:
Per-contact promptTags (from the contacts array):
Resulting system prompt for that contact:

Prompt Tags vs Metadata

Authorizations

Authorization
string
header
required

Enter JWT token obtained from authentication endpoint. Format: Bearer <your_token>

Body

application/json
contacts
_BulkContactSchema · object[]
required
aiSettingsTemplateId
string<uuid> | null
updateExisting
boolean
default:false
countryCode
string | null

ISO 3166-1 alpha-2 region code (e.g. 'SA', 'US') to parse local numbers.

Required string length: 2
Pattern: ^[A-Z]{2}$
batchSize
integer | null

Batch size for processing contacts. Must be between 10 and 1000. Overrides environment variable if provided.

Response

Successful Response