Skip to main content
POST
/
campaign
/
v2
/
start
Start Campaign (Number Pool)
curl --request POST \
  --url https://prod-api.ringg.ai/ca/api/v0/campaign/v2/start \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <x-api-key>' \
  --data '
{
  "agent_id": "830f767a-397e-4b39-82ff-235cd344e2f9",
  "list_id": "123e4567-e89b-12d3-a456-426614174000",
  "number_pool_id": "pool-uuid-here"
}
'
{
  "status": "campaign registered successfully!",
  "has_ongoing_calls": false
}
Start a campaign using a managed number pool. Numbers are resolved automatically from the pool — handling rotation, spam skipping, and auto-purchase — so you don’t need to specify individual from_numbers.
Before starting a campaign, ensure you have:
  • Uploaded a contact list using Upload campaign contact list
  • Configured your agent with the appropriate prompts and settings
  • Created a number pool and added numbers to it

Request parameters

ParameterTypeRequiredDescription
agent_idstringYesID of the agent that will handle all campaign calls
list_idstringYesID of the uploaded campaign contact list
number_pool_idstringYesID of the managed number pool to use for outbound calls
callback_urlstringNoURL to receive a webhook when the campaign completes
email_completion_user_idsarrayNoUser IDs to notify by email on campaign completion

Standard flow

  1. Upload contacts with Upload campaign contact list.
  2. Save the returned list_id.
  3. Start calls with this endpoint using a number_pool_id.
  4. Monitor progress with Get all campaigns.

Error responses

  • 400: Invalid agent_id, list_id, or number_pool_id; campaign already started
  • 401: Invalid or missing API key
  • 500: Unexpected server error

Headers

X-API-KEY
string
required

(Required) Your Ringg AI API key.

Example:

"7251cb4b-3373-43a4-844c-b27a1d45e0c9"

Body

application/json
agent_id
string
required

(Required) ID of the agent that will handle the calls.

Example:

"830f767a-397e-4b39-82ff-235cd344e2f9"

list_id
string
required

(Required) ID of the uploaded campaign contact list.

Example:

"123e4567-e89b-12d3-a456-426614174000"

number_pool_id
string
required

(Required) ID of the managed number pool to use for outbound calls.

Example:

"pool-uuid-here"

callback_url
string | null

URL to receive campaign completion webhook.

Example:

"https://api.example.com/ringg/campaign-callback"

email_completion_user_ids
string[] | null

User IDs to notify by email when the campaign completes.

Response

Campaign started successfully.

status
string

Success message indicating campaign registration.

Example:

"campaign registered successfully!"

has_ongoing_calls
boolean

Whether the workspace has other ongoing calls.

Example:

false