Developer
⌘K
Dashboard
Campaigns POST

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-campaign

Authentication

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_at is always refreshed on every successful request, even when no other fields are changed.