Register a Funnels Query
Registers an asynchronous Funnels analysis query and returns a request_id. Funnels analysis measures step-by-step conversion and drop-off across an ordered sequence of events.
Use the request_id with Get Query Status to poll for completion, then Get Query Results to fetch the resolved series.
Rate Limit
The rate limits are at the workspace level. A maximum of 5 requests per second, 20 requests per minute, and 250 requests per hour are allowed per workspace.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). Find it in the MoEngage dashboard at Settings > Account > API keys.
- Password: Use an API key from Settings > Account > API keys.
Refer to API Key Dashboard for details on creating and managing API keys.
Body
Request body for registering a Funnels analysis query.
Payload schema version.
"2.0"
The analysis type. Must be funnel for this endpoint.
funnel The ordered steps of the funnel. Include 2 to 10 steps. Each step defines the event and attribute conditions a user must satisfy to be counted at that step.
2 - 10 elementsSegments used to scope the analysis to a subset of users. Include up to 5 segments. To analyze all users, pass a single segment with the All Users custom segment.
5The kind of funnel to compute. The user_ values count unique users and the event_ values count all occurrences — user_funnel and event_funnel (standard conversion), user_time_to_convert and event_time_to_convert (time-to-convert distribution between two steps), and user_frequency and event_frequency (frequency distribution of repeated actions between two steps).
user_funnel, event_funnel, user_time_to_convert, event_time_to_convert, user_frequency, event_frequency Event attributes to split the funnel by. Include up to 3. Each item names the attribute to split on.
3Describes how each grouped_by attribute is applied across the funnel — for example, to all steps, to the first N steps, or to a specific step. Keys correspond to the attributes in grouped_by. Pass an empty object when grouped_by is empty.
Event attributes that must hold the same value across funnel steps, so only users who kept that value are counted as converted. Include up to 3.
3Describes how each holding attribute is applied across the funnel steps. Keys correspond to the attributes in holding_attributes. Pass an empty object when holding_attributes is empty.
The conversion window in seconds within which users must complete the funnel.
86400
Multiplier applied to the funnel window.
86400
Distribution configuration for event_time_to_convert and user_frequency funnels. When using custom buckets, include at most 25 buckets. Pass an empty object for a standard funnel.
Visual representation of the result.
line, area, bar, column, euler, pie "column"
A second time range to compare against. Time comparison is supported only on line, bar, and column charts, and cannot be combined with custom-segment comparison (2 or more segments). Pass an empty object for no comparison.
The time window the analysis runs over.
Time bucket for the series — h (hour), d (day), w (week), m (month), or e (entire range). When hourly, the time range must not exceed 31 days.
h, d, w, m, e "e"
Whether steps must be performed in the exact order defined.
false
Whether metrics are returned as absolute counts (number) or as percentages (percentage).
number, percentage "number"
Whether to return only the conversion event's metrics.
false
Plot scale applied to the chart.
linear, logarithmic, cumulative, rolling_sum, rolling_avg, rolling_window "linear"
Response
Query registered. Poll status and fetch results with data.request_id.
Acknowledgement that a query was registered. Use data.request_id to poll status and fetch results.