💬 SalesByte

Campaigns

Start and list broadcast campaigns via the API.

List campaigns

GET /api/v1/campaigns

Returns all campaigns for your workspace with delivery counts.

curl "https://app.salesbyte.in/api/v1/campaigns" \
  -H "Authorization: Bearer YOUR_API_KEY"

Start a campaign

POST /api/v1/campaigns

Request body

{
  "template_id": "template-uuid",
  "channel": "unofficial",
  "name": "June Promo",
  "filter_tags": ["Hot Lead"],
  "filter_status": "warm"
}

Parameters

FieldTypeRequiredDescription
template_idstringID of the template to send
channelstring"official" (Business WA) or "unofficial" (Personal WA)
namestringCampaign name (defaults to template name)
scheduled_atstringISO 8601 datetime to schedule for later
filter_tagsstring[]Send to contacts with these tags
filter_statusstringSend to contacts with this status
segment_idstringUse a saved segment as the audience

Response

{
  "success": true,
  "campaign_id": "campaign-uuid",
  "recipient_count": 142,
  "status": "running"
}

Example — schedule a campaign

curl -X POST https://app.salesbyte.in/api/v1/campaigns \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "template_id": "template-uuid",
    "channel": "unofficial",
    "name": "Morning Follow-up",
    "scheduled_at": "2026-06-25T03:30:00Z",
    "filter_tags": ["Interested"]
  }'

scheduled_at should be in UTC. 9:00 AM IST = 03:30 UTC.

On this page