Campaigns
Easily schedule and execute bulk WhatsApp campaigns. Send targeted messages to specific groups of your contacts all at once. Base route: /api/v1/WhatsappCampaign
When to use this module
- Broadcast a personalized template message to a large group of contacts.
- Plan ahead by scheduling your campaigns to send exactly when you want them to.
- Track your campaign's success with detailed delivery statistics and link-click analytics.
Endpoints
| Method | Route | Permission | Description |
|---|---|---|---|
| POST | /api/v1/WhatsappCampaign | WhatsappCampaign:Create | Create campaign |
| PUT | /api/v1/WhatsappCampaign/{id} | WhatsappCampaign:Edit | Update campaign |
| DEL | /api/v1/WhatsappCampaign/{id} | WhatsappCampaign:Delete | Delete campaign |
| GET | /api/v1/WhatsappCampaign/{id} | WhatsappCampaign:View | Get campaign detail |
| POST | /api/v1/WhatsappCampaign/getall | WhatsappCampaign:View | Paginated campaign list |
| GET | /api/v1/WhatsappCampaign/status-counts | WhatsappCampaign:View | Counts by status for tabs |
| POST | /api/v1/WhatsappCampaign/{id}/quick-run | WhatsappCampaign:Execute | Immediately dispatch campaign |
| GET | /api/v1/WhatsappCampaign/dashboard/main | WhatsappCampaign:View | Campaign dashboard overview |
| GET | /api/v1/WhatsappCampaign/{id}/contacts | WhatsappCampaign:View | Campaign contact delivery list |
| GET | /api/v1/WhatsappCampaign/{id}/button-clicks | WhatsappCampaign:View | Button click analytics |
POST
/api/v1/WhatsappCampaign
JSON Request
{
"name": "May Promo",
"templateId": "guid-of-template",
"scheduledAt": "2026-05-28T09:00:00Z",
"contactFilter": {
"tags": ["VIP", "Returning"],
"isActive": true
}
}POST
/api/v1/WhatsappCampaign/getall
JSON Request
{
"pageNumber": 1,
"pageSize": 10,
"sortBy": "createddate desc",
"status": "Draft",
"nameFilter": "promo"
}GET
/api/v1/WhatsappCampaign/{id}/contacts
Query Parameters
| Parameter | Type | Description |
|---|---|---|
page | int | Page number (default: 1) |
pageSize | int | Page size (default: 20) |
searchTerm | string? | Filter by contact name or phone |
statusFilter | string? | Pending / Sent / Delivered / Read / Failed |
Campaign Statuses
| Status | Description |
|---|---|
Draft | Your campaign is saved but hasn't been sent yet. |
Scheduled | Your campaign is queued up and will send automatically at your chosen time. |
Running | Your messages are actively being sent out right now. |
Completed | Success! All messages in this campaign have been sent. |
Failed | We encountered an issue while trying to send your campaign. |
Cancelled | You successfully stopped this campaign before it was sent. |
