Skip to main content
PATCH
This endpoint only handles post-publish lifecycle transitions (STOP, PAUSE, RESUME) for campaigns that are already live. Campaign publishing is not yet supported in V5.
The response does not include the resulting campaign status. To confirm the new state after a transition, call GET /v5/campaigns/{campaign_id}.

Rate Limits

Notes
  • 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

Authorization
string
header
required

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

MOE-APPKEY
string
required

Your MoEngage Workspace ID (App ID). Find it in the dashboard at Settings > Account > APIs > Workspace ID.

X-MOE-Request-Id
string
required

Correlates with response_id. Supply this header or request_id in the body; if both are set, they must match.

Idempotency-Key
string<uuid>
required

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

campaign_id
string
required

Raw 24-char ObjectId of the published campaign to transition.

Body

application/json

Send campaign status change request with action.

Changes the status of a single published campaign. One campaign ID per request.

action
enum<string>
required

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:

`STOP` cannot be used on Periodic campaigns. `PAUSE` and `RESUME` cannot be used on One-time campaigns.
Available options:
STOP,
PAUSE,
RESUME
request_id
string

A client-supplied identifier for this status change request, echoed back as response_id so you can correlate the request and response. This is not a deduplication key — to make a request idempotent, use the Idempotency-Key header. Replaying the same Idempotency-Key returns the original response.

Response

Transition accepted.

response_id
string
type
string
Example:

"campaign"

data
object

Returned after a successful status transition on a published campaign.