Skip to main content
POST
/
api
/
v1
/
campaigns
/
{campaign_id}
/
webhooks
curl -X POST "https://app.talkover.ai/api/v1/campaigns/campaign-uuid/webhooks" \
  -H "Authorization: Bearer talq_your_environment_token_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Lifecycle Webhook",
    "webhook_url": "https://example.com/campaign-events",
    "events": ["campaign.started", "campaign.completed", "campaign_call.completed"],
    "include_call_events": false
  }'
{
  "success": true,
  "data": {
    "id": "webhook-uuid-1",
    "campaign_id": "campaign-uuid",
    "name": "Lifecycle Webhook",
    "events": ["campaign.started", "campaign.completed", "campaign_call.completed"],
    "enabled": true,
    "include_call_events": false,
    "created_at": "2024-01-15T15:00:00Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.talkover.ai/llms.txt

Use this file to discover all available pages before exploring further.

Create Campaign Webhook

Create a webhook subscribed to campaign lifecycle and per-campaign-call events.

Endpoint

POST /api/v1/campaigns/{campaign_id}/webhooks

Path Parameters

campaign_id
string
required
Campaign UUID.

Request Headers

Authorization
string
required
Bearer token. Format: Bearer talq_your_environment_token_here
Content-Type
string
required
Must be set to application/json

Request Body

name
string
required
Webhook name. Max 255 characters.
webhook_url
string
required
Delivery URL. Max 500 characters.
events
array
required
Array of subscribed events. Min 1.
webhook_secret
string
Optional HMAC-SHA256 signing secret. Max 255 characters.
timeout
integer
Request timeout in seconds. Range: 5120. Default: 30.
max_retries
integer
Retry attempts on failure. Range: 010. Default: 3.
enabled
boolean
Default: true.
http_method
string
Options: POST, PUT, PATCH. Default: POST.
authorization_scheme
string
Options: none, bearer, basic, api_key, custom. Default: none.
custom_headers
array
Array of {key, value} objects.
payload_templates
object
Per-event template overrides.
include_call_events
boolean
When true, also delivers per-call events for calls in this campaign (in addition to campaign-level events).

Examples

curl -X POST "https://app.talkover.ai/api/v1/campaigns/campaign-uuid/webhooks" \
  -H "Authorization: Bearer talq_your_environment_token_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Lifecycle Webhook",
    "webhook_url": "https://example.com/campaign-events",
    "events": ["campaign.started", "campaign.completed", "campaign_call.completed"],
    "include_call_events": false
  }'

Response

{
  "success": true,
  "data": {
    "id": "webhook-uuid-1",
    "campaign_id": "campaign-uuid",
    "name": "Lifecycle Webhook",
    "events": ["campaign.started", "campaign.completed", "campaign_call.completed"],
    "enabled": true,
    "include_call_events": false,
    "created_at": "2024-01-15T15:00:00Z"
  }
}