Skip to main content
POST
/
campaigns
/
meta
curl --request POST \ --url https://api-{dc}.moengage.com/core-services/v1/campaigns/meta \ --header 'Authorization: Basic <encoded-value>' \ --header 'Content-Type: application/json' \ --header 'MOE-APPKEY: <moe-appkey>' \ --data ' { "request_id": "meta_req_12345", "campaign_fields": { "channels": [ "EMAIL" ] }, "limit": 15, "page": 1 } '
[ { "campaign_id": "camp_email_123", "channel": "EMAIL", "platform": [], "created_by": "john.doe@example.com", "campaign_delivery_type": "ONE_TIME", "campaign_name": "Weekly Newsletter", "campaign_team": "Marketing", "campaign_tags": [ "newsletter", "weekly" ], "campaign_status": "Active", "campaign_start_time": "2024-11-18T05:50:00" } ]
Supported Channels
  • EMAIL - Email campaigns
  • PUSH - Push notification campaigns
  • SMS - SMS campaigns
  • WHATSAPP - WhatsApp campaigns
  • FACEBOOK - Facebook campaigns
  • GOOGLE ADS - Google Ads campaigns
  • CONNECTORS - Connector-based campaigns
Reachability Information
  • Available only for scheduled campaigns (one-time, business event-triggered, and event-triggered)
  • Provides estimated user count that will receive the campaign
  • Calculated once daily and cached for 24 hours
  • May vary due to app installations/uninstalls or subscription changes
Reachability is an estimated value and may vary over time. It is calculated once per day and cached for 24 hours. Multiple API calls within the same day will return the cached value.
To fetch child campaign information (flow nodes, periodic children), set include_child_campaigns to true. Use flow_id, flow_name, or parent_campaign_id in the response to identify relationships.

Authorizations

Authorization
string
header
required

Authentication is done via Basic Auth. The username is your Workspace ID (earlier APP ID) and the password is your API Key. The value is a base64 encoding of 'username:password'.

How to obtain credentials:

  1. Navigate to SettingsAccountAPIs in the MoEngage Dashboard
  2. Username: Copy the Workspace ID (earlier app id)
  3. Password: Copy the API key from the Campaign report/Business events/Custom templates tile

Headers

MOE-APPKEY
string
required

This is the workspace ID (earlier APP ID) of your MoEngage workspace.

You can find your MoEngage Workspace ID in the MoEngage Dashboard: SettingsAccountAPIsWorkspace ID (earlier app id)

Body

application/json

Search criteria for retrieving campaign metadata and reachability information.

Request to retrieve campaign metadata and reachability information.

request_id
string
required

A unique identifier for this metadata retrieval request.

Example:

"meta_req_12345"

limit
integer
required

The number of campaigns to display per page.

Maximum: 15

Required range: 1 <= x <= 15
Example:

15

page
integer
required

The page number to retrieve.

For example, if there are 200 campaigns and limit is 10, there will be 20 pages.

Required range: x >= 1
Example:

1

campaign_fields
object

Filter criteria for retrieving campaign metadata.

include_child_campaigns
boolean
default:false

Whether to include child campaign information.

Set to true to fetch details of child campaigns (flow nodes and periodic children).

Response

Successfully retrieved campaign metadata

campaign_id
string

The unique ID of the campaign.

Example:

"camp_abc123xyz"

channel
enum<string>

The communication channel.

Available options:
EMAIL,
PUSH,
SMS,
WHATSAPP,
FACEBOOK,
GOOGLE ADS,
CONNECTORS
platform
enum<string>[]

The platform types supported for the campaign (applicable for Push).

Available options:
ANDROID,
IOS,
WEB
created_by
string<email>

The email ID of the user who created the campaign.

campaign_delivery_type
enum<string>

The delivery type of the campaign.

Available options:
ONE_TIME,
PERIODIC,
EVENT_TRIGGERED,
BUSINESS_TRIGGERED,
DEVICE_TRIGGERED,
LOCATION_TRIGGERED,
BROADCAST_LIVE_ACTIVITY
campaign_name
string

The name of the campaign.

Example:

"Summer Sale Campaign"

campaign_team
string

The team name associated with the campaign.

campaign_tags
string[]

Tags associated with the campaign.

campaign_status
enum<string>

The current status of the campaign.

Available options:
SCHEDULED,
ACTIVE,
PAUSED,
SENT,
STOPPED,
RETIRED,
ARCHIVED
campaign_start_time
string<date-time>

The start time of the campaign in ISO 8601 format.

Example:

"2024-11-28T12:18:00"

parent_campaign_id
string

The campaign ID of the parent campaign.

Only shown if the requested campaign_id belongs to a child campaign and include_child_campaigns is true.

total_child_campaigns
integer

The number of child campaigns.

Only shown if the campaign_id belongs to a parent campaign. Only applicable for periodic campaigns.

reachability_details
object

Reachability information for the campaign.

Important: Only populated for scheduled campaigns (one-time, business event-triggered, and event-triggered). Reachability is calculated once daily and cached for 24 hours.