Skip to main content
PATCH
Lifecycle actions (pause, resume, stop, retire) accept an optional version_no and act on that version (default: the active version). archive / unarchive apply to the whole flow and reject a version_no.

Rate Limits

The rate limits are at the workspace level. A maximum of 10 requests per second, 100 requests per minute, and 6,000 requests per hour are allowed per workspace.

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. Flows reuse the Campaigns permissions — ensure the View checkbox (for the read endpoints) and the Create & Manage checkbox (for Update Flow Status) 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

Idempotency-Key
string<uuid>
required

Client-generated UUID v4. Reusing the same key replays the original response instead of re-applying the transition.

X-MOE-Tenant-ID
string

Identifies the tenant/workspace making the request. Optional — when omitted, the workspace is resolved from the Basic Auth credentials in the Authorization header.

X-MOE-Request-Id
string

Client-supplied trace ID. The server echoes it in the X-MOE-Request-Id response header and in response_id. If you omit it, the server generates one.

Path Parameters

flow_id
string
required

The 24-character ID of the flow. This must be the flow's own ID, not a version ID; passing a version ID returns 400.

Pattern: ^[a-f0-9]{24}$
Example:

"6a3b09c938da57c8f5838880"

Body

application/json
action
enum<string>
required

The lifecycle operation to apply. publish is not available in this phase.

Available options:
pause,
resume,
stop,
retire,
archive,
unarchive
updated_by
string<email>
required

Email of the user performing the action. Recorded in the audit log.

version_no
integer

Optional. For lifecycle actions (pause, resume, stop, retire), acts on this version (default: the active version). Rejected for archive / unarchive.

Required range: x >= 1
request_id
string

Optional if supplied via the X-MOE-Request-Id header; echoed in response_id.

Response

Flow status updated.

response_id
string
required
type
enum<string>
required
Available options:
flow
data
object
required