Update Campaign
Update campaign status, start time, or end time.
Endpoint
https://www.tabbly.io/dashboard/agents/endpoints/update-campaign
Update Campaign
Changes a campaign’s status (Active/Paused) or schedule.
Endpoint
http
POST https://www.tabbly.io/dashboard/agents/endpoints/update-campaignAuthentication
See Introduction. This is a POST endpoint — include api_key in the JSON request body. Your organization_id must match the organization linked to your API key.
Request body
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key |
string | Yes | Your organization API key |
organization_id |
integer | Yes | Your organization ID |
id |
integer | Yes | Campaign ID to update (from Create Campaign) |
current_status |
string | No | Active or Paused |
start_time |
string | No | New start time in UTC as YYYY-MM-DD HH:MM:SS (different from Create Campaign, which uses time_zone) |
end_time |
string | No | New end time in UTC as YYYY-MM-DD HH:MM:SS (different from Create Campaign, which uses time_zone) |
Only include fields you want to change. Omitted fields are left unchanged.
Valid values
current_status
Active, Paused
Example request
bash
curl -X POST "https://www.tabbly.io/dashboard/agents/endpoints/update-campaign" \
-H "Content-Type: application/json" \
-d '{
"api_key": "YOUR_API_KEY",
"organization_id": 3282,
"id": 2744,
"current_status": "Paused",
"start_time": "2026-06-24 09:00:00",
"end_time": "2026-06-24 18:00:00"
}'Response
Success (200)
json
{
"success": true,
"message": "Campaign updated successfully",
"data": {
"id": 2744,
"organization_id": 3282,
"current_status": "Paused",
"start_time": "2026-06-24 09:00:00",
"end_time": "2026-06-24 18:00:00",
"updated_at": "2026-06-23 13:06:21"
}
}Error responses
json
{
"error": "Human-readable error description"
}| HTTP status | When |
|---|---|
| 400 | Missing required fields, invalid status, invalid date format |
| 401 | Invalid API key or organization_id mismatch |
| 404 | Campaign not found or does not belong to organization |
| 405 | Method not POST |
Notes
- Times are stored and returned in UTC.
updated_atis always refreshed on every successful request, even when no other fields are changed.