Update Campaign Status
Applies a state transition to a published campaign. Supported for Email and Push campaigns.
PUBLISH is not accepted on this endpoint. To publish a draft, use PATCH /v5/campaigns/{campaign_id} with { "status": "PUBLISH" }.GET /v5/campaigns/{campaign_id}.Rate Limits
| Rate Limit Name | Rate Limit |
|---|---|
| change campaign status per second | The total number of change campaign status requests per second per client is 10. |
| change campaign status per minute | The total number of change campaign status requests per minute per client allowed is 100. |
| change campaign status per hour | The total number of change campaign status requests per hour per client allowed is 6000. |
- Breaching the limits will reject the request.
- Per-hour and per-day limits use a rolling window of the last 1 hour and last 24 hours respectively.
Authorizations
Authentication is done via Basic Auth. This requires a base64-encoded string of your credentials in the format 'username:password'.
- Username: Use your MoEngage workspace ID (also known as the App ID). You can find it in the MoEngage dashboard at Settings > Account > APIs > Workspace ID (earlier app id).
- Password: On your MoEngage workspace, navigate to Settings → Account → API keys and click Create new key. The tab lists every API surface (Data, Segmentation, Push, Email, Campaigns, Templates, and more) and exposes per-resource actions. For Campaigns, ensure the View, Create & Manage, and Create, Manage & Publish checkboxes are selected.
For more information on authentication and getting your credentials, refer to Getting your credentials.
Send the value in the Authorization header as Basic followed by Base64-encoding of appkey:apisecret (workspace ID and API key).
Headers
Workspace tenant ID. Set this to the workspace (App) ID from Settings > Account > APIs > Workspace ID.
This header is optional. When omitted, the API resolves the workspace from the Basic Auth credentials in the Authorization header.
In the V1 Campaigns API, the workspace ID was passed via the MOE-APPKEY request header. In V5, this header is renamed to X-MOE-Tenant-ID.
Correlates with response_id. Supply this header or request_id in the body; if both are set, they must match.
UUID v4. Required on all POST and PATCH requests except POST /v5/campaigns/{campaign_id}/validate. Repeating the same key returns the same response body.
Path Parameters
Raw 24-char ObjectId of the published campaign to transition.
Body
Send campaign status change request with action.
Changes the status of a single published campaign. One campaign ID per request.
Lifecycle action for an already published or scheduled campaign.
Each action applies only to specific delivery types and requires the campaign to be in a valid source state:
| Action | Supported delivery types | Valid source states |
|---|---|---|
STOP | ONE_TIME | ACTIVE, SCHEDULED, PAUSED, SENDING |
PAUSE | PERIODIC, EVENT_TRIGGERED | ACTIVE, SCHEDULED, SENDING |
RESUME | PERIODIC, EVENT_TRIGGERED | PAUSED |
STOP, PAUSE, RESUME A unique identifier for this status change request.