Campaigns API
Query broadcast campaigns and their delivery statistics.
List Campaigns
GET/api/campaigns
Retrieve all campaigns with their status.
Query Parameters
limitinteger
Results per page
statusstring
Filter by status: completed, partially completed, draft
bash
curl -X GET "https://api.cekat.ai/api/campaigns" \
-H "Authorization: Bearer YOUR_API_KEY"
Response
200 OK
{
"success": true,
"data": [
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"campaign_name": "Promo Announcement",
"status": "completed",
"inbox_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"inbox_name": "CekatAI Verified",
"template_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"template_name": "welcome_message",
"template_category": "MARKETING",
"total_recipient": 657,
"total": 657,
"sent": 10,
"delivered": 230,
"read": 335,
"failed": 82,
"replied": 217,
"send_at": "2025-12-05T09:55:22.676+00:00",
"created_at": "2025-12-05T09:55:21.420919+00:00"
}
]
}
Campaign Object
| Field | Type | Description |
|---|---|---|
id | string | Unique campaign identifier |
campaign_name | string | Campaign display name |
status | string | completed, partially completed, draft |
inbox_id | string | Source inbox ID |
inbox_name | string | Inbox display name |
template_id | string | Template ID used |
template_name | string | Template name |
template_category | string | MARKETING, UTILITY |
total_recipient | integer | Total recipients |
total | integer | Total messages |
sent | integer | Messages sent |
delivered | integer | Messages delivered |
read | integer | Messages read |
failed | integer | Failed messages |
replied | integer | Messages with replies |
send_at | string | Scheduled send time |
created_at | string | Creation timestamp |
Campaign Status
| Status | Description |
|---|---|
completed | All messages sent successfully |
partially completed | Some messages failed |
draft | Campaign not yet sent |
Code Examples
javascript
const getCampaigns = async (filters = {}) => {
const params = new URLSearchParams(filters);
const response = await fetch(
`https://api.cekat.ai/api/campaigns?${params}`,
{ headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
);
return response.json();
};
// Get completed campaigns
const completed = await getCampaigns({ status: 'completed' });
// Calculate delivery rate
completed.data.forEach(campaign => {
const rate = (campaign.delivered / campaign.total * 100).toFixed(1);
console.log(`${campaign.campaign_name}: ${rate}% delivery rate`);
});
