Events Analysis model API
For how to call the API, see the calling method described in the Open API document.
To learn about use cases, read Events Analysis in the user guide.
1. Events Analysis query
Endpoint URL
/open/event-analyze?token=xxx
Request method
POST
Content-Type
application/json
Request query parameters
| Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| token | xxx | String | Yes | Query key |
Request body parameters
{
"eventView": {
"comparedByTime": true,
"comparedStartTime": "2021-12-14 00:00:00",
"comparedEndTime": "2021-12-20 23:59:59",
"comparedRecentDay": "8-14",
"startTime": "2021-12-21 00:00:00",
"endTime": "2021-12-27 23:59:59",
"recentDay": "1-7",
"timeParticleSize": "day",
"eventSplit": {
"event": {
"eventDesc": "Login",
"eventName": "login"
},
"groupByProp": {
"columnDesc": "Browser",
"columnName": "browser",
"propertyRange": "",
"tableType": "event"
}
},
"groupBy": [{
"columnDesc": "Brand",
"columnName": "brand",
"propertyRange": "",
"specifiedClusterDate": "2021-12-28",
"tableType": "event"
}],
"relation": "and",
"filts": [{
"columnDesc": "Brand",
"columnName": "brand",
"comparator": "equal",
"filterType": "SIMPLE",
"ftv": ["Apple", "Xiaomi"],
"specifiedClusterDate": "2021-12-28",
"tableType": "event",
"timeUnit": ""
}],
"queryFeature": {
"approximateOn": true,
"globalQueryOn": false
}
},
"events": [{
"analysis": "TOTAL_TIMES",
"analysisParams": "",
"eventName": "login",
"eventNameDisplay": "Total count of Login",
"eventSplitIndexes": [0],
"eventUuid": "7FonAy-G",
"filts": [],
"quota": "",
"relation": "and",
"type": "normal"
}, {
"analysis": "TRIG_USER_NUM",
"analysisParams": "",
"eventName": "activity_attend",
"eventNameDisplay": "Uniques of Attend Activity",
"eventUuid": "K9A5NDAz",
"filts": [{
"columnDesc": "App Version",
"columnName": "app_version",
"comparator": "notNull",
"filterType": "SIMPLE",
"ftv": [],
"specifiedClusterDate": "2021-12-28",
"tableType": "event",
"timeUnit": ""
}],
"quota": "",
"quotaEntities": [{
"index": 0,
"taIdMeasure": {
"columnDesc": "User Unique ID",
"columnName": "#user_id",
"tableType": "event"
}
}],
"relation": "and",
"type": "normal"
}, {
"customEvent": "logout.PER_CAPITA_TIMES",
"customFilters": [],
"eventName": "Custom Metric",
"eventNameDisplay": "",
"eventSplitIndexes": [],
"eventUuid": "gxqT19xz",
"filts": [],
"format": "float",
"quota": "",
"quotaEntities": [{
"index": 0,
"taIdMeasure": {
"columnDesc": "Email",
"columnName": "email",
"tableType": "user"
}
}],
"quotaTimeRanges": [{
"index": 0,
"params": ["1"],
"type": "THIS_WEEK"
}],
"relation": "and",
"type": "customized"
}],
"projectId": 377,
"useSameResultKey": false,
"useCache": true,
"limit": 1000,
"timeoutSeconds": 10,
"zoneOffset": 10
}
The input parameters consist of several parts: the basic parameters are required; the time comparison, event breakdown, group-by, global filter, and query configuration parameters are optional; and you use either normal analysis metrics or custom analysis metrics.
Request parameters
| $$Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| eventView | - | Object | Yes | Common properties of the metrics |
| eventView.comparedByTime | true | Boolean | No | Whether to compare time. TRUE: yes, FALSE: no |
eventView.comparedStartTime | 2021-12-14 00:00:00 | String | No | Start time of the comparison period (format: yyyy-MM-dd HH:mm:ss). Takes effect when the relative comparison time is empty |
| eventView.comparedEndTime | 2021-12-20 23:59:59 | String | No | End time of the comparison period (format: yyyy-MM-dd HH:mm:ss). Takes effect when the relative comparison time is empty |
| eventView.comparedRecentDay | 8-14 | String | No | Relative comparison time (when comparedByTime is TRUE, this item, the comparison start time, and the comparison end time can't all be empty) |
| eventView.startTime | 2021-12-21 00:00:00 | String | No | Start time (format: yyyy-MM-dd HH:mm:ss). Takes effect when the relative time is empty |
| eventView.endTime | 2021-12-27 23:59:59 | String | No | End time (format: yyyy-MM-dd HH:mm:ss). Takes effect when the relative time is empty |
| eventView.recentDay | 1-7 | String | No | Relative time (this item, the start time, and the end time can't all be empty) |
| eventView.relation | and | String | No | Logical relation. and: logical AND, or: logical OR |
| eventView.timeParticleSize | day | String | Yes | Time unit of the analysis
|
| eventView.eventSplit | - | Object | No | Event breakdown information |
| eventView.eventSplit.event | - | Object | Yes | Event information of the event breakdown |
| eventView.eventSplit.event.eventDesc | Login | String | No | Display name of the event breakdown metric |
| eventView.eventSplit.event.eventName | login | String | Yes | Event name of the event breakdown metric |
| eventView.eventSplit.groupByProp | - | Object | Yes | Group information of the event breakdown metric |
| eventView.eventSplit.groupByProp.columnDesc | Browser | String | No | Display name of the event breakdown group field |
| eventView.eventSplit.groupByProp.columnName | browser | String | Yes | Field name of the event breakdown group field |
| eventView.eventSplit.groupByProp.propertyRange | String | No | Property range of the event breakdown group | |
| eventView.eventSplit.groupByProp.tableType | event | String | Yes | Table type enum values |
| eventView.groupBy | - | List | No | Group-by properties. There can be zero or more |
| eventView.groupBy.columnName | brand | String | Yes | Field name |
| eventView.groupBy.columnDesc | Brand | String | No | Field display name |
| eventView.groupBy.propertyRange | String | No | Custom property range | |
| eventView.groupBy.propertyRangeType | String | No | Property range type. When you group by a numeric property, you can use custom bucketing conditions
| |
| eventView.groupBy.specifiedClusterDate | 2021-12-28 | String | No | Uses the historical version of the tag for the specified date |
| eventView.groupBy.tableType | event | String | Yes | Table type enum values |
| eventView.filts | - | List | No | Global filters |
| eventView.filts.columnDesc | Brand | String | No | Field display name |
| eventView.filts.columnName | brand | String | Yes | Field name |
| eventView.filts.comparator | equal | String | Yes | See Filter expressions in the Query API |
| eventView.filts.filterType | SIMPLE | String | No | Filter mode. SIMPLE: simple, COMPOUND: compound. Defaults to SIMPLE |
| eventView.filts.ftv | ["Apple", "Xiaomi"] | List | No | Literal constants used as boundaries for property comparison |
| eventView.filts.specifiedClusterDate | 2021-12-28 | String | No | Uses the historical version of the tag for the specified date |
| eventView.filts.tableType | event | String | Yes | Table type enum values |
| eventView.filts.timeUnit | String | No | Unit of the property comparison value, valid only for relativeEvent*: day, hour, minute | |
| eventView.queryFeature | - | Object | No | Query configuration |
| eventView.queryFeature.approximateOn | true | Boolean | No | Whether to enable approximate calculation |
| events | - | List | Yes | List of event metrics |
| events.analysis | TRIG_USER_NUM | String | No | Analysis type (aggregation operation). For details, see Event aggregation type enum values |
| events.analysisParams | String | No | Parameter of the analysis type (can't be empty when analysis is PERCENTILE; value range: 1-100, indicating the percentile) | |
| events.eventName | activity_attend | String | Yes | Event name. In particular, you can use anyEvent to represent any event |
| events.eventNameDisplay | Uniques of Attend Activity | String | No | Event display name |
| events.metricName | retention_rate_1 | String | No | The metric to query, which represents a fixed analysis definition. When you query by metric, events.eventName can be set to Custom Metric |
| events.eventUuid | K9A5NDAz | String | No | Event UUID, used to uniquely identify the event |
| events.filts | - | List | No | List of conditions |
| events.filts.columnDesc | App version | String | No | Field display name |
| events.filts.columnName | app_version | String | Yes | Field name |
| events.filts.comparator | notNull | String | Yes | See Filter expressions in the Query API |
| events.filts.filterType | SIMPLE | String | No | Filter mode. SIMPLE: simple, COMPOUND: compound. Defaults to SIMPLE |
| events.filts.ftv | [] | List | No | Literal constants used as boundaries for property comparison |
| events.filts.specifiedClusterDate | 2021-12-28 | String | No | Uses the historical version of the tag for the specified date |
| events.filts.tableType | event | String | Yes | Table type enum values |
| events.filts.timeUnit | String | No | Time unit of the filter | |
| events.quota | String | No | Metric property (used with analysis to specify which analysis type of which property) | |
| events.quotaDesc | String | No | Display name of the metric property | |
| events.quotaEntities | - | List | List of entities for the analyzed event metric | |
| events.quotaEntities.index | 0 | Integer | Yes | Index of the entity for the analyzed event metric |
| events.quotaEntities.taIdMeasure | - | Object | ID system configuration for the query | |
| events.quotaEntities.taIdMeasure.columnDesc | User Unique ID | String | No | Field display name |
| events.quotaEntities.taIdMeasure.columnName | #user_id | String | Yes | Field name |
| events.quotaEntities.taIdMeasure.tableType | event | String | Yes | Table type enum values |
| events.relation | and | String | No | Logical relation. and: logical AND, or: logical OR |
| events.type | normal | String | Yes | normal: normal analysis customized: custom formula |
| events.customEvent | logout.PER_CAPITA_TIMES | String | No | Formula expression, made up of analysis items or numeric constants combined by addition, subtraction, multiplication, and division. Analysis items take one of two forms: eventName.columnName.analysis or eventName.analysis. When the formula contains analysis metrics, use a fixed prefix plus the metric name, for example: $metric.metricName/eventName.columnName.analysis or $metric.metricName1/$metric.metricName2 |
| events.customFilters | [] | List | No | List of filters for the formula expression |
| events.eventName | Custom Metric | String | Yes | Event name of the metric. You can use anyEvent to represent any event |
| events.eventNameDisplay | String | No | Display name of the custom metric | |
| events.eventSplitIndexes | [] | List | No | Items included in the event breakdown |
events.format | float | String | No | Data display option float: two decimal places, float3: three decimal places, float4: four decimal places, percent: percentage |
| events.quota | String | No | Metric property (used with analysis to specify which analysis type of which property) | |
| events.quotaDesc | String | No | Display name of the metric property | |
| events.quotaEntities | - | List | No | List of entities for the analyzed event metric |
| events.quotaEntities.index | 0 | Integer | Yes | Index of the entity for the analyzed event metric |
| events.quotaEntities.taIdMeasure | - | Object | Yes | ID system configuration for the query |
| events.quotaEntities.taIdMeasure.columnDesc | String | No | Field display name | |
| events.quotaEntities.taIdMeasure.columnName | String | Yes | Field name | |
| events.quotaEntities.taIdMeasure.tableType | user | String | Yes | Table type enum values |
| events.quotaTimeRanges | [] | List | No | List of metric time period information |
| events.quotaTimeRanges.index | 0 | Integer | Yes | Index of the time period |
| events.quotaTimeRanges.params | ["1"] | List | No | Time period parameters. When events.quotaTimeRanges.type is TIME_RANGE, params is ["-3", "4"], which means from the past 3 days to the next 4 days |
| events.quotaTimeRanges.type | THIS_WEEK | String | Yes | Time period type LAST_DAYS: past N days, RECENT_DAYS: recent N days, THIS_WEEK: this week, THIS_MONTH: this month, TIME_RANGE: time range |
| events.relation | and | String | No | Logical relation. and: logical AND, or: logical OR |
events.type | customized | String | Yes | normal: normal analysis customized: custom formula |
| projectId | 377 | Integer | Yes | Project ID |
| useSameResultKey | false | Boolean | No | Whether to use the same event name when event names are identical true: use the same event name false: add a numbered prefix when event names are identical |
| useCache | true | Boolean | Yes | true means the cache is used |
| limit | 1000 | Integer | No | Maximum number of groups per analysis object. Optional. Defaults to 1000, with a maximum of 10000 |
| timeoutSeconds | 10 | Integer | No | Request timeout. The query task is canceled when it times out |
| zoneOffset | 10 | Integer | No | Time zone |
Success response example
{
"data": {
"result_generate_time": "2021-12-30 11:15:41",
"union_groups": [
[
"Safari",
"Apple"
],
[
"Firefox",
"Xiaomi"
],
[
"WeChat Built-in Browser",
"Apple"
],
[
"Overall",
"Apple"
],
[
"Overall",
"Xiaomi"
]
],
"x": [
"2021-12-23",
"2021-12-24",
"2021-12-25",
"2021-12-26",
"2021-12-27",
"2021-12-28",
"2021-12-29"
],
"x_compared": [
"2021-12-16",
"2021-12-17",
"2021-12-18",
"2021-12-19",
"2021-12-20",
"2021-12-21",
"2021-12-22"
],
"y": [
{
"login.TOTAL_TIMES": [
{
"group_cols": [
"Safari",
"Apple"
],
"group_num": 3,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"447",
"980",
"1584",
"321",
"285",
"74",
"0"
]
},
{
"group_cols": [
"Firefox",
"Xiaomi"
],
"group_num": 3,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"291",
"818",
"1128",
"272",
"219",
"58",
"0"
]
},
{
"group_cols": [
"WeChat Built-in Browser",
"Apple"
],
"group_num": 3,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"231",
"500",
"764",
"214",
"155",
"35",
"0"
]
}
]
},
{
"activity_attend.TRIG_USER_NUM": [
{
"group_cols": [
"Overall",
"Apple"
],
"group_num": 2,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"640",
"811",
"1251",
"1253",
"720",
"113",
"0"
]
},
{
"group_cols": [
"Overall",
"Xiaomi"
],
"group_num": 2,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"277",
"439",
"600",
"666",
"364",
"59",
"0"
]
}
]
},
{
"Custom Metric": [
{
"group_cols": [
"Overall",
"Apple"
],
"group_num": 2,
"values": [
"1",
"1",
"1",
"1",
"0",
"0",
"0"
],
"values_compared": [
"1.01",
"1.01",
"1.01",
"1.01",
"1",
"1",
"1"
]
},
{
"group_cols": [
"Overall",
"Xiaomi"
],
"group_num": 2,
"values": [
"1",
"1",
"1",
"1",
"0",
"0",
"0"
],
"values_compared": [
"1.01",
"1.01",
"1.01",
"1.01",
"1",
"1",
"1"
]
}
]
}
]
},
"return_code": 0,
"return_message": "success"
}
Response parameters
| $$Parameter name | Example value | Parameter type | Description |
|---|---|---|---|
| data | - | Object | Returned result |
| data.result_generate_time | 2021-12-29 12:00:00 | String | Query result generation time |
| data.union_groups | ["Apple"] | List | Set of all groups |
| data.x | ["2021-12-23"] | List | X-axis time |
| data.x_compared | ["2021-12-16"] | List | X-axis comparison time |
| data.y | - | List | List of Y-axis data |
| data.y.{metric name} | - | List | List of Y-axis metric information |
| data.y.{metric name}.group_cols | ["Apple"] | List | Y-axis metric groups |
| data.y.{metric name}.group_num | 3 | Integer | Number of Y-axis metric groups |
| data.y.{metric name}.values | ["0"] | List | Y-axis metric values |
| data.y.{metric name}.values_compared | ["447"] | List | Y-axis metric values for the comparison period |
| return_code | 0 | Integer | Return code |
| return_message | success | String | Return message |
Error response example
{
"return_code": -1008,
"return_message": "Parameter (token) is empty"
}
| Parameter name | Example value | Parameter type | Description |
|---|---|---|---|
| return_code | -1008 | Integer | Return code |
| return_message | Parameter (token) is empty | String | Return message |
curl example
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{"projectId": 377,"useSameResultKey": false,"useCache": true,"limit": 1000,"eventView": {"comparedByTime": true,"comparedStartTime": "2021-12-14 00:00:00","comparedEndTime": "2021-12-20 23:59:59","comparedRecentDay": "8-14","startTime": "2021-12-21 00:00:00","endTime": "2021-12-27 23:59:59","recentDay": "1-7","relation": "and","timeParticleSize": "day","eventSplit": {"event": {"eventDesc": "Login","eventName": "login"},"groupByProp": {"columnDesc": "Browser","columnName": "browser","propertyRange": "","tableType": "event"}},"groupBy": [{"columnDesc": "Brand","columnName": "brand","propertyRange": "","specifiedClusterDate": "2021-12-28","tableType": "event"}],"filts": [{"columnDesc": "Brand","columnName": "brand","comparator": "equal","filterType": "SIMPLE","ftv": ["Apple", "Xiaomi"],"specifiedClusterDate": "2021-12-28","tableType": "event","timeUnit": ""}],"queryFeature": {"approximateOn": true,"globalQueryOn": false}},"events": [{"analysis": "TOTAL_TIMES","analysisParams": "","eventName": "login","eventNameDisplay": "Total count of Login","eventSplitIndexes": [0],"eventUuid": "7FonAy-G","filts": [],"quota": "","relation": "and","type": "normal"}, {"analysis": "TRIG_USER_NUM","analysisParams": "","eventName": "activity_attend","eventNameDisplay": "Uniques of Attend Activity","eventUuid": "K9A5NDAz","filts": [{"columnDesc": "App Version","columnName": "app_version","comparator": "notNull","filterType": "SIMPLE","ftv": [],"specifiedClusterDate": "2021-12-28","tableType": "event","timeUnit": ""}],"quota": "","quotaEntities": [{"index": 0,"taIdMeasure": {"columnDesc": "User Unique ID","columnName": "#user_id","tableType": "event"}}],"relation": "and","type": "normal"}, {"customEvent": "logout.PER_CAPITA_TIMES","customFilters": [],"eventName": "Custom Metric","eventNameDisplay": "","eventSplitIndexes": [],"eventUuid": "gxqT19xz","filts": [],"format": "float","quota": "","quotaEntities": [{"index": 0,"taIdMeasure": {"columnDesc": "Email","columnName": "email","tableType": "user"}}],"quotaTimeRanges": [{"index": 0,"params": ["1"],"type": "THIS_WEEK"}],"relation": "and","type": "customized"}]}' 'http://ta2:8992/open/event-analyze?token=YOUR_TOKEN'
2. Events Analysis full download
Endpoint URL
/open/streaming-download/event-analyze?token=xxx
Request method
POST
Content-Type
application/json
Request query parameters
| Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| token | xxx | String | Yes | Query key |
Request body parameters
{
"eventView": {
"endTime": "2022-03-07 16:32:12",
"filts": [{
"columnDesc": "Level",
"columnName": "level",
"comparator": "greater",
"filterType": "SIMPLE",
"ftv": ["1"],
"specifiedClusterDate": "2022-03-08",
"tableType": "event",
"timeUnit": ""
}],
"groupBy": [{
"columnDesc": "channel",
"columnName": "channel",
"propertyRange": "",
"specifiedClusterDate": "2022-03-08",
"tableType": "event"
}],
"recentDay": "1-7",
"relation": "and",
"startTime": "2022-03-01 16:32:12",
"timeParticleSize": "day"
},
"events": [{
"analysis": "TOTAL_TIMES",
"analysisParams": "",
"eventName": "LogOut",
"eventNameDisplay": "Total count of LogOut",
"eventUuid": "QgfCSkCw",
"filts": [],
"quota": "",
"relation": "and",
"type": "normal"
}],
"projectId": 319,
"zoneOffset": 10
}
Request parameters
| $$Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| projectId | 0 | String | Yes | Description |
| eventView | - | Object | Yes | Same as the parameters of the Events Analysis query API |
| events | List | Yes | Same as the parameters of the Events Analysis query API | |
| zoneOffset | 10 | Integer | No | Time zone |
You can export the request parameters directly from the Events Analysis page in AE
Response
Same as the Events Analysis full download in AE
3. Events Analysis user list
Endpoint URL
/open/event-user-list?token=xxx
Request method
POST
Content-Type
application/json
Request query parameters
| Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| token | xxx | String | Yes | Query key |
Request body parameters
{
"projectId": 0,
"eventView": {
"startTime": "2019-11-24 00:00:00",
"endTime": "2019-11-26 00:00:00",
"recentDay": "1-3",
"timeParticleSize": "day",
"groupBy": [
{
"columnName": "#city",
"tableType": "event"
}
]
},
"events": [
{
"analysis": "TRIG_USER_NUM",
"eventName": "consume_item",
"quota": "#vp@dailyTask",
"relation": "and",
"type": "normal",
"filts": [
{
"columnName": "user_level",
"comparator": "equal",
"ftv": [
"5"
],
"tableType": "user"
}
],
}
],
"sliceDate": "2019-11-26",
"eventIndex": 0,
"sliceGroupVal": [
"Beijing"
],
"timeoutSeconds": 10,
"zoneOffset": 10
}
Request parameters
| $$Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| projectId | 0 | String | Yes | Description |
| eventView | - | Object | Yes | Same as the parameters of the Events Analysis query API |
| events | List | Yes | Same as the parameters of the Events Analysis query API | |
| sliceDate | "2019-11-26" | String | No | Date to drill down into |
| sliceGroupVal | ["Beijing"] | List | Yes | Group to drill down into |
| eventIndex | 0 | int | Yes | Index of the metric to drill down into, starting from 0 |
| timeoutSeconds | 10 | Integer | No | Request timeout. The query task is canceled when it times out |
| zoneOffset | 10 | Integer | No | Time zone |
Success response example
{
"data": {
"datalist": [
{
"#account_id": "e78107482",
"#distinct_id": "e145056682",
"user_level": 5,
"register_time": "2019-11-26 14:36:13",
"diamond_num": 1006,
"latest_login_time": "2019-11-26 15:45:16",
"channel": "app store",
"#user_id": 33474682
},
{
"#account_id": "d7819213",
"#distinct_id": "d14521393",
"user_level": 5,
"register_time": "2019-11-26 23:25:14",
"diamond_num": 858,
"first_recharge_time": "2019-11-26 23:29:56",
"latest_login_time": "2019-11-26 23:32:48",
"channel": "app store",
"#user_id": 3351093
}
],
"columMeta": {
"#account_id": "Account ID",
"#distinct_id": "Distinct ID",
"user_level": "User Level",
"register_time": "Registration Time",
"diamond_num": "Current Diamonds",
"first_recharge_time": "First Top-up Time",
"latest_login_time": "Last Login Time",
"channel": "Channel"
}
},
"return_code": 0,
"return_message": "success"
}
Response parameters
| $$Parameter name | Example value | Parameter type | Description |
|---|---|---|---|
| return_code | 0 | Integer | Return code |
| return_message | success | String | Return message |
| data | - | Object | Returned result |
| data.datalist | - | List<Map> | User information |
| data.columMeta | - | Map | Mapping of field meanings |
Error response example
{
"return_code": -1008,
"return_message": "Parameter (token) is empty"
}
| Parameter name | Example value | Parameter type | Description |
|---|---|---|---|
| return_code | -1008 | Integer | Return code |
| return_message | Parameter (token) is empty | String | Return message |
4. Events Analysis user list download
Endpoint URL
/open/streaming-download/event-user-list?token=xxx
Request method
POST
Content-Type
application/json
Request query parameters
| Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| token | xxx | String | Yes | Query key |
Request body parameters
{
"eventView": {
"comparedByTime": false,
"comparedRecentDay": "",
"endTime": "2022-03-07 16:32:12",
"filts": [
{
"columnDesc": "Level",
"columnName": "level",
"comparator": "greater",
"filterType": "SIMPLE",
"ftv": [
"1"
],
"specifiedClusterDate": "2022-03-08",
"tableType": "event",
"timeUnit": ""
}
],
"groupBy": [
{
"columnDesc": "channel",
"columnName": "channel",
"propertyRange": "",
"specifiedClusterDate": "2022-03-08",
"tableType": "event"
}
],
"recentDay": "1-7",
"relation": "and",
"startTime": "2022-03-01 16:32:12",
"timeParticleSize": "day"
},
"events": [
{
"analysis": "TRIG_USER_NUM",
"analysisParams": "",
"eventName": "LogOut",
"eventNameDisplay": "Uniques of LogOut",
"eventUuid": "QgfCSkCw",
"filts": [],
"quota": "",
"quotaEntities": [
{
"index": 0,
"taIdMeasure": {
"columnDesc": "User Unique ID",
"columnName": "#user_id",
"tableType": "event"
}
}
],
"relation": "and",
"type": "normal"
}
],
"projectId": 319,
"sliceDate": "2022-03-01",
"eventIndex": 0,
"sliceGroupVal": [
"AppStore"
],
"selectedColumns": [
"#account_id",
"#distinct_id",
"accountid"
],
"zoneOffset": 10
}
Request parameters
| $$Parameter name | Example value | Parameter type | Required | Description |
|---|---|---|---|---|
| projectId | 0 | String | Yes | Description |
| eventView | - | Object | Yes | Same as the parameters of the Events Analysis query API |
| events | List | Yes | Same as the parameters of the Events Analysis query API | |
| sliceDate | "2019-11-26" | String | No | Date to drill down into |
| sliceGroupVal | ["Beijing"] | List | Yes | Group to drill down into |
| eventIndex | 0 | int | Yes | Index of the metric to drill down into, starting from 0 |
| selectedColumns | ["#account_id"] | List | Yes | Columns to download |
| zoneOffset | 10 | Integer | No | Time zone |
You can export the main structure of the request parameters directly from the Events Analysis page in AE, and then add the sliceDate, eventIndex, eventDate, sliceGroupVal, and selectedColumns parameters. You can capture the specific parameter values from the page's API requests.
Response
Same as the Events Analysis user list download in AE
Events Analysis common enums
Event aggregation type enum values
| Value | Description | Requires property |
|---|---|---|
| TOTAL_TIMES | Event total | No |
| TRIG_USER_NUM | Uniques | No |
| PER_CAPITA_TIMES | Times per user | No |
| SUM | Sum | Yes |
| AVG | Average | Yes |
| PER_CAPITA_NUM | Per User | Yes |
| MAX | Maximum | Yes |
| MIN | Minimum | Yes |
| DISTINCT | Deduplication | Yes |
| TRUE | True totals | Yes |
| FALSE | False totals | Yes |
| IS_NOT_EMPTY | Not null totals | Yes |
| IS_EMPTY | Null totals | Yes |
| ARRAY_DISTINCT | Deduplication of array | Yes |
| ARRAY_SET_DISTINCT | Deduplication of set | Yes |
| ARRAY_ITEM_DISTINCT | Deduplication of element | Yes |
| MEDIAN | Median | Yes |
| PERCENTILE | Percentile | Yes |

