Skip to main content

Get Campaigns

The Get Campaigns API lets you fetch campaigns with advanced filtering, search, sorting, and pagination.


Endpoint​

GET /api/campaign

Request Example

curl --location 'http://localhost:3000/api/campaign?page=1&limit=200&search=TEST&direction=%22%27&column=%27%27%27%27&status=%27%27%27&channel=voice&dateFrom=12%2F11%2F2022&dateTo=11%2F08%2F2024' \\ --header 'x-user-id: 648b80839b30ddb88cdbab11' 

Query Parameters

ParameterTypeRequiredDescription
pagenumber✅Page number (pagination)
limitnumber✅Number of results per page
searchstring❌Search term (e.g., campaign name)
directionstring❌Sorting direction (asc / desc)
columnstring❌Column name to sort by
statusstring❌Campaign status (active, paused, completed)
channelstring✅Channel type (sms, email, voice)
dateFromstring❌Start date (MM/DD/YYYY)
dateTostring❌End date (MM/DD/YYYY)

Example Response

{ "result": "success", "status": 200, "message": "Campaigns retrieved successfully", "data": [ { "id": "6728e4e9f30ba95e72a66c23", "name": "Voice Outreach Campaign", "channel": ["voice"], "status": "active", "createdAt": "2023-12-11T10:15:30.000Z" } ], "pagination": { "page": 1, "limit": 200, "total": 15 } }

Response Fields

FieldTypeDescription
resultstringAPI call status (success / error)
statusnumberHTTP-like status code
messagestringInfo about the API action
dataarrayList of campaign objects
idstringUnique campaign identifier
namestringCampaign name
channelarrayChannels included (email, sms, voice)
statusstringCurrent campaign status
createdAtdatetimeWhen the campaign was created
paginationobjectPage, limit, and total records

Best Practice
For better performance, always use page and limit. Avoid requesting large datasets in a single API call.