Skip to main content
GET
/
experiences
/
metadata
curl --location 'https://sdk-01.moengage.com/v1/experiences/metadata' \
--header 'Accept: */*' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic <base64(workspaceId:personalizeApiKey)>' \
--header 'MOE-APPKEY: <Your Workspace ID>'
{
  "metadata": {
    "count": 3,
    "experiences": [
      {
        "experience_name": "Homepage Banner — Free Shipping",
        "experience_key": "homepage-banner",
        "status": "Active"
      },
      {
        "experience_name": "Cart Upsell Widget",
        "experience_key": "cart-upsell",
        "status": "Paused"
      },
      {
        "experience_name": "Christmas Sale Strip",
        "experience_key": "christmas-sale-strip",
        "status": "Scheduled"
      }
    ]
  }
}

Documentation Index

Fetch the complete documentation index at: https://moengage.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Recommended usage: Call this endpoint once at application startup and cache the result. Experience keys change infrequently — a daily refresh is usually sufficient. In production rendering paths, filter by ?status=Active so your Fetch Experience calls only include keys that are currently live.

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: Use your API Key, which you can find within the Personalize tile.

Note: After you generate and save the Personalize API Key (SECRET KEY), DO NOT generate a new key unless there is a security breach. After you generate a different key and save it, API calls using the older key won't work.

For more information on authentication and getting your credentials, refer here.

Headers

MOE-APPKEY
string
required

This is the Workspace ID of your MoEngage account that must be passed with the request. You can find it in the MoEngage dashboard at Settings > Account > APIs > Workspace ID (earlier app id).

Example:

"Workspace ID"

Query Parameters

status
string

Filter experiences by status. Pass one or more comma-separated values. If omitted, all statuses are returned.

Accepted values: Active, Paused, Scheduled (case-sensitive). Unknown values (for example, active in lowercase) silently return an empty list rather than an error — verify spelling and casing.

StatusDescription
ActiveExperience is live and being served to matching users.
PausedExperience is not being served. Fetching its key via Fetch Experience returns an empty payload — not an error.
ScheduledExperience is configured but has not started yet. Fetching its key returns an empty payload.
Example:

"Active,Paused"

Response

Successful retrieval

metadata
object