이벤트 분석 모델 API
호출 방법은 Open API 문서의 호출 방법 설명을 참고하십시오.
사용 시나리오는 사용 설명서의 이벤트 분석을 참고하십시오.
1. 이벤트 분석 조회
인터페이스 URL
/open/event-analyze?token=xxx
요청 방식
POST
Content-Type
application/json
요청 Query 파라미터
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| token | xxx | String | 예 | 조회 키 |
요청 Body 파라미터
{
"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": "로그인",
"eventName": "login"
},
"groupByProp": {
"columnDesc": "브라우저",
"columnName": "browser",
"propertyRange": "",
"tableType": "event"
}
},
"groupBy": [{
"columnDesc": "브랜드",
"columnName": "brand",
"propertyRange": "",
"specifiedClusterDate": "2021-12-28",
"tableType": "event"
}],
"relation": "and",
"filts": [{
"columnDesc": "브랜드",
"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": "로그인의 총 횟수",
"eventSplitIndexes": [0],
"eventUuid": "7FonAy-G",
"filts": [],
"quota": "",
"relation": "and",
"type": "normal"
}, {
"analysis": "TRIG_USER_NUM",
"analysisParams": "",
"eventName": "activity_attend",
"eventNameDisplay": "이벤트 참여의 유니크 유저 수",
"eventUuid": "K9A5NDAz",
"filts": [{
"columnDesc": "app 버전",
"columnName": "app_version",
"comparator": "notNull",
"filterType": "SIMPLE",
"ftv": [],
"specifiedClusterDate": "2021-12-28",
"tableType": "event",
"timeUnit": ""
}],
"quota": "",
"quotaEntities": [{
"index": 0,
"taIdMeasure": {
"columnDesc": "유저 고유 ID",
"columnName": "#user_id",
"tableType": "event"
}
}],
"relation": "and",
"type": "normal"
}, {
"customEvent": "logout.PER_CAPITA_TIMES",
"customFilters": [],
"eventName": "커스텀 지표",
"eventNameDisplay": "",
"eventSplitIndexes": [],
"eventUuid": "gxqT19xz",
"filts": [],
"format": "float",
"quota": "",
"quotaEntities": [{
"index": 0,
"taIdMeasure": {
"columnDesc": "이메일",
"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
}
입력 파라미터는 여러 부분으로 구성됩니다. 기본 파라미터는 필수이며, 시간 비교 파라미터, 이벤트 분할 파라미터, 그룹 항목 파라미터, 전체 필터 파라미터, 조회 설정 파라미터는 선택 사항입니다. 일반 분석 지표와 커스텀 분석 지표 중 하나를 선택합니다.
요청 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| eventView | - | Object | 예 | 지표 공통 속성 부분 |
| eventView.comparedByTime | true | Boolean | 아니요 | 시간 비교 여부. TRUE: 예, FALSE: 아니요 |
eventView.comparedStartTime | 2021-12-14 00:00:00 | String | 아니요 | 비교 기간 시작 시간(형식: yyyy-MM-dd HH:mm:ss). 비교 기간 상대 시간이 비어 있을 때 유효 |
| eventView.comparedEndTime | 2021-12-20 23:59:59 | String | 아니요 | 비교 기간 종료 시간(형식: yyyy-MM-dd HH:mm:ss). 비교 기간 상대 시간이 비어 있을 때 유효 |
| eventView.comparedRecentDay | 8-14 | String | 아니요 | 비교 기간 상대 시간(comparedByTime이 TRUE이면 비교 기간 시작 시간, 비교 기간 종료 시간과 함께 모두 비워 둘 수 없음) |
| eventView.startTime | 2021-12-21 00:00:00 | String | 아니요 | 시작 시간(형식: yyyy-MM-dd HH:mm:ss). 상대 시간이 비어 있을 때 유효 |
| eventView.endTime | 2021-12-27 23:59:59 | String | 아니요 | 종료 시간(형식: yyyy-MM-dd HH:mm:ss). 상대 시간이 비어 있을 때 유효 |
| eventView.recentDay | 1-7 | String | 아니요 | 상대 시간(시작 시간, 종료 시간과 함께 모두 비워 둘 수 없음) |
| eventView.relation | and | String | 아니요 | 논리 관계. and: 논리곱, or: 논리합 |
| eventView.timeParticleSize | day | String | 예 | 분석 시간 단위
|
| eventView.eventSplit | - | Object | 아니요 | 이벤트 분할 정보 |
| eventView.eventSplit.event | - | Object | 예 | 이벤트 분할 이벤트 정보 |
| eventView.eventSplit.event.eventDesc | 로그인 | String | 아니요 | 이벤트 분할 지표 표시 이름 |
| eventView.eventSplit.event.eventName | login | String | 예 | 이벤트 분할 지표 이벤트 이름 |
| eventView.eventSplit.groupByProp | - | Object | 예 | 이벤트 분할 지표 그룹 정보 |
| eventView.eventSplit.groupByProp.columnDesc | 브라우저 | String | 아니요 | 이벤트 분할 그룹 필드 표시 이름 |
| eventView.eventSplit.groupByProp.columnName | browser | String | 예 | 이벤트 분할 그룹 필드 이름 |
| eventView.eventSplit.groupByProp.propertyRange | String | 아니요 | 이벤트 분할 그룹 속성 구간 | |
| eventView.eventSplit.groupByProp.tableType | event | String | 예 | 테이블 유형 열거형 값 |
| eventView.groupBy | - | List | 아니요 | 그룹 속성. 0개 이상 지정 가능 |
| eventView.groupBy.columnName | brand | String | 예 | 필드 이름 |
| eventView.groupBy.columnDesc | 브랜드 | String | 아니요 | 필드 표시 이름 |
| eventView.groupBy.propertyRange | String | 아니요 | 커스텀 속성 구간 | |
| eventView.groupBy.propertyRangeType | String | 아니요 | 속성 구간 유형. 숫자형 속성으로 그룹화할 때 커스텀 버킷 조건을 지정할 수 있음
| |
| eventView.groupBy.specifiedClusterDate | 2021-12-28 | String | 아니요 | 지정한 날짜에 해당하는 태그 이력 버전 |
| eventView.groupBy.tableType | event | String | 예 | 테이블 유형 열거형 값 |
| eventView.filts | - | List | 아니요 | 전체 필터 항목 |
| eventView.filts.columnDesc | 브랜드 | String | 아니요 | 필드 표시 이름 |
| eventView.filts.columnName | brand | String | 예 | 필드 이름 |
| eventView.filts.comparator | equal | String | 예 | 참고: 모델 조회 API의 필터 표현식 |
| eventView.filts.filterType | SIMPLE | String | 아니요 | 필터 모드. SIMPLE: 단순, COMPOUND: 복합. 기본값은 SIMPLE |
| eventView.filts.ftv | ["Apple", "Xiaomi"] | List | 아니요 | 속성 비교 경계에 사용하는 리터럴 상수 |
| eventView.filts.specifiedClusterDate | 2021-12-28 | String | 아니요 | 지정한 날짜에 해당하는 태그 이력 버전 |
| eventView.filts.tableType | event | String | 예 | 테이블 유형 열거형 값 |
| eventView.filts.timeUnit | String | 아니요 | 속성 비교 값 단위. relativeEvent*에만 유효: day, hour, minute | |
| eventView.queryFeature | - | Object | 아니요 | 조회 설정 |
| eventView.queryFeature.approximateOn | true | Boolean | 아니요 | 근사값 계산 사용 여부 |
| events | - | List | 예 | 이벤트 지표 목록 |
| events.analysis | TRIG_USER_NUM | String | 아니요 | 분석 관점, 집계 연산. 자세한 내용은 이벤트 집계 유형 열거형 값 참고 |
| events.analysisParams | String | 아니요 | 분석 관점 파라미터(analysis가 PERCENTILE이면 비워 둘 수 없음. 값 범위: 1-100, 몇 분위수인지를 나타냄) | |
| events.eventName | activity_attend | String | 예 | 이벤트 이름. 특히 anyEvent로 임의의 이벤트를 나타낼 수 있음 |
| events.eventNameDisplay | 이벤트 참여의 유니크 유저 수 | String | 아니요 | 이벤트 표시 이름 |
| events.metricName | retention_rate_1 | String | 아니요 | 조회할 지표로, 고정된 분석 기준을 나타냅니다. 지표로 조회할 때 events.eventName을 커스텀 지표로 설정할 수 있습니다 |
| events.eventUuid | K9A5NDAz | String | 아니요 | 이벤트 UUID. 이벤트를 고유하게 식별하는 데 사용 |
| events.filts | - | List | 아니요 | 조건 목록 |
| events.filts.columnDesc | 앱 버전 | String | 아니요 | 필드 표시 이름 |
| events.filts.columnName | app_version | String | 예 | 필드 이름 |
| events.filts.comparator | notNull | String | 예 | 참고: 모델 조회 API의 필터 표현식 |
| events.filts.filterType | SIMPLE | String | 아니요 | 필터 모드. SIMPLE: 단순, COMPOUND: 복합. 기본값은 SIMPLE |
| events.filts.ftv | [] | List | 아니요 | 속성 비교 경계에 사용하는 리터럴 상수 |
| events.filts.specifiedClusterDate | 2021-12-28 | String | 아니요 | 지정한 날짜에 해당하는 태그 이력 버전 |
| events.filts.tableType | event | String | 예 | 테이블 유형 열거형 값 |
| events.filts.timeUnit | String | 아니요 | 필터 시간 단위 | |
| events.quota | String | 아니요 | 지표 속성(analysis와 함께 사용하며, 어떤 속성의 어떤 분석 관점인지를 의미) | |
| events.quotaDesc | String | 아니요 | 지표 속성 표시 이름 | |
| events.quotaEntities | - | List | 분석 이벤트 지표에 대응하는 주체 목록 | |
| events.quotaEntities.index | 0 | Integer | 예 | 분석 이벤트 지표에 대응하는 주체 인덱스 |
| events.quotaEntities.taIdMeasure | - | Object | 조회 ID 체계 설정 | |
| events.quotaEntities.taIdMeasure.columnDesc | 유저 고유 ID | String | 아니요 | 필드 표시 이름 |
| events.quotaEntities.taIdMeasure.columnName | #user_id | String | 예 | 필드 이름 |
| events.quotaEntities.taIdMeasure.tableType | event | String | 예 | 테이블 유형 열거형 값 |
| events.relation | and | String | 아니요 | 논리 관계. and: 논리곱, or: 논리합 |
| events.type | normal | String | 예 | normal: 일반 분석 customized: 커스텀 수식 |
| events.customEvent | logout.PER_CAPITA_TIMES | String | 아니요 | 수식 표현식. 분석 항목 또는 수치 상수의 사칙연산으로 구성됩니다. 분석 항목은 eventName.columnName.analysis 또는 eventName.analysis 두 가지 형식입니다. 수식에 분석 지표가 포함된 경우 고정 접두사+지표 이름 방식을 사용합니다. 예: $metric.metricName/eventName.columnName.analysis 또는 $metric.metricName1/$metric.metricName2 |
| events.customFilters | [] | List | 아니요 | 수식 표현식 필터 항목 목록 |
| events.eventName | 커스텀 지표 | String | 예 | 지표 이벤트 이름. anyEvent로 임의의 이벤트를 나타낼 수 있음 |
| events.eventNameDisplay | String | 아니요 | 커스텀 지표 표시 이름 | |
| events.eventSplitIndexes | [] | List | 아니요 | 이벤트 분할에 참여하는 항목 |
events.format | float | String | 아니요 | 데이터 표시 옵션 float: 소수점 둘째 자리, float3: 소수점 셋째 자리, float4: 소수점 넷째 자리, percent: 백분율 |
| events.quota | String | 아니요 | 지표 속성(analysis와 함께 사용하며, 어떤 속성의 어떤 분석 관점인지를 의미) | |
| events.quotaDesc | String | 아니요 | 지표 속성 표시 이름 | |
| events.quotaEntities | - | List | 아니요 | 분석 이벤트 지표에 대응하는 주체 목록 |
| events.quotaEntities.index | 0 | Integer | 예 | 분석 이벤트 지표에 대응하는 주체 인덱스 |
| events.quotaEntities.taIdMeasure | - | Object | 예 | 조회 ID 체계 설정 |
| events.quotaEntities.taIdMeasure.columnDesc | 이메일 | String | 아니요 | 필드 표시 이름 |
| events.quotaEntities.taIdMeasure.columnName | String | 예 | 필드 이름 | |
| events.quotaEntities.taIdMeasure.tableType | user | String | 예 | 테이블 유형 열거형 값 |
| events.quotaTimeRanges | [] | List | 아니요 | 지표 기간 정보 목록 |
| events.quotaTimeRanges.index | 0 | Integer | 예 | 기간 인덱스 |
| events.quotaTimeRanges.params | ["1"] | List | 아니요 | 기간 파라미터. events.quotaTimeRanges.type이 TIME_RANGE이면 params는 ["-3", "4"]이며, 과거 3일부터 미래 4일까지를 의미 |
| events.quotaTimeRanges.type | THIS_WEEK | String | 예 | 기간 유형 LAST_DAYS: 지난 N일, RECENT_DAYS: 최근 N일, THIS_WEEK: 이번 주, THIS_MONTH: 이번 달, TIME_RANGE: 기간 |
| events.relation | and | String | 아니요 | 논리 관계. and: 논리곱, or: 논리합 |
events.type | customized | String | 예 | normal: 일반 분석 customized: 커스텀 수식 |
| projectId | 377 | Integer | 예 | 프로젝트 Id |
| useSameResultKey | false | Boolean | 아니요 | 이벤트 이름이 같을 때 같은 이벤트 이름을 사용할지 여부 true: 같은 이벤트 이름 사용 false: 이벤트 이름이 같으면 접두 번호 추가 |
| useCache | true | Boolean | 예 | true이면 캐시 사용 |
| limit | 1000 | Integer | 아니요 | 분석 대상별 그룹 수 상한. 선택 파라미터이며 기본값은 1000, 최댓값은 10000 |
| timeoutSeconds | 10 | Integer | 아니요 | 요청 시간 초과 파라미터, 시간이 초과되면 쿼리 작업을 취소합니다 |
| zoneOffset | 10 | Integer | 아니요 | 시간대 |
성공 응답 예시
{
"data": {
"result_generate_time": "2021-12-30 11:15:41",
"union_groups": [
[
"Safari",
"Apple"
],
[
"Firefox",
"Xiaomi"
],
[
"WeChat 내장 브라우저",
"Apple"
],
[
"전체",
"Apple"
],
[
"전체",
"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 내장 브라우저",
"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": [
"전체",
"Apple"
],
"group_num": 2,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"640",
"811",
"1251",
"1253",
"720",
"113",
"0"
]
},
{
"group_cols": [
"전체",
"Xiaomi"
],
"group_num": 2,
"values": [
"0",
"0",
"0",
"0",
"0",
"0",
"0"
],
"values_compared": [
"277",
"439",
"600",
"666",
"364",
"59",
"0"
]
}
]
},
{
"커스텀 지표": [
{
"group_cols": [
"전체",
"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": [
"전체",
"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"
}
응답 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 파라미터 설명 |
|---|---|---|---|
| data | - | Object | 반환 결과 |
| data.result_generate_time | 2021-12-29 12:00:00 | String | 조회 결과 생성 시간 |
| data.union_groups | ["Apple"] | List | 모든 그룹 집합 |
| data.x | ["2021-12-23"] | List | X축 시간 |
| data.x_compared | ["2021-12-16"] | List | X축 비교 시간 |
| data.y | - | List | Y축 데이터 목록 |
| data.y.{지표 이름} | - | List | Y축 지표 정보 목록 |
| data.y.{지표 이름}.group_cols | ["Apple"] | List | Y축 지표 그룹 |
| data.y.{지표 이름}.group_num | 3 | Integer | Y축 지표 그룹 수 |
| data.y.{지표 이름}.values | ["0"] | List | Y축 지표 값 |
| data.y.{지표 이름}.values_compared | ["447"] | List | Y축 시간 비교 지표 값 |
| return_code | 0 | Integer | 반환 코드 |
| return_message | success | String | 반환 정보 |
오류 응답 예시
{
"return_code": -1008,
"return_message": "파라미터(token)가 비어 있습니다"
}
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 파라미터 설명 |
|---|---|---|---|
| return_code | -1008 | Integer | 반환 코드 |
| return_message | 파라미터(token)가 비어 있습니다 | String | 반환 정보 |
curl 예시
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": "로그인","eventName": "login"},"groupByProp": {"columnDesc": "브라우저","columnName": "browser","propertyRange": "","tableType": "event"}},"groupBy": [{"columnDesc": "브랜드","columnName": "brand","propertyRange": "","specifiedClusterDate": "2021-12-28","tableType": "event"}],"filts": [{"columnDesc": "브랜드","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": "로그인의 총 횟수","eventSplitIndexes": [0],"eventUuid": "7FonAy-G","filts": [],"quota": "","relation": "and","type": "normal"}, {"analysis": "TRIG_USER_NUM","analysisParams": "","eventName": "activity_attend","eventNameDisplay": "이벤트 참여의 유니크 유저 수","eventUuid": "K9A5NDAz","filts": [{"columnDesc": "app 버전","columnName": "app_version","comparator": "notNull","filterType": "SIMPLE","ftv": [],"specifiedClusterDate": "2021-12-28","tableType": "event","timeUnit": ""}],"quota": "","quotaEntities": [{"index": 0,"taIdMeasure": {"columnDesc": "유저 고유 ID","columnName": "#user_id","tableType": "event"}}],"relation": "and","type": "normal"}, {"customEvent": "logout.PER_CAPITA_TIMES","customFilters": [],"eventName": "커스텀 지표","eventNameDisplay": "","eventSplitIndexes": [],"eventUuid": "gxqT19xz","filts": [],"format": "float","quota": "","quotaEntities": [{"index": 0,"taIdMeasure": {"columnDesc": "이메일","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. 이벤트 분석 전체 다운로드
인터페이스 URL
/open/streaming-download/event-analyze?token=xxx
요청 방식
POST
Content-Type
application/json
요청 Query 파라미터
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| token | xxx | String | 예 | 조회 키 |
요청 Body 파라미터
{
"eventView": {
"endTime": "2022-03-07 16:32:12",
"filts": [{
"columnDesc": "레벨",
"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": "LogOut의 총 횟수",
"eventUuid": "QgfCSkCw",
"filts": [],
"quota": "",
"relation": "and",
"type": "normal"
}],
"projectId": 319,
"zoneOffset": 10
}
요청 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| projectId | 0 | String | 예 | 파라미터 설명 |
| eventView | - | Object | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 |
| events | List | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 | |
| zoneOffset | 10 | Integer | 아니요 | 시간대 |
요청 파라미터는 AE 시스템의 이벤트 분석 페이지에서 바로 내보낼 수 있습니다
응답
AE 시스템의 이벤트 분석 전체 다운로드와 동일
3. 이벤트 분석 유저 목록
인터페이스 URL
/open/event-user-list?token=xxx
요청 방식
POST
Content-Type
application/json
요청 Query 파라미터
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| token | xxx | String | 예 | 조회 키 |
요청 Body 파라미터
{
"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": [
"베이징시"
],
"timeoutSeconds": 10,
"zoneOffset": 10
}
요청 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| projectId | 0 | String | 예 | 파라미터 설명 |
| eventView | - | Object | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 |
| events | List | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 | |
| sliceDate | "2019-11-26" | String | 아니요 | 드릴다운할 날짜 |
| sliceGroupVal | ["베이징시"] | List | 예 | 드릴다운할 그룹 |
| eventIndex | 0 | int | 예 | 드릴다운할 지표의 순번(0부터 시작) |
| timeoutSeconds | 10 | Integer | 아니요 | 요청 시간 초과 파라미터, 시간이 초과되면 쿼리 작업을 취소합니다 |
| zoneOffset | 10 | Integer | 아니요 | 시간대 |
성공 응답 예시
{
"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": "계정 ID",
"#distinct_id": "게스트 ID",
"user_level": "유저 레벨",
"register_time": "가입 시간",
"diamond_num": "현재 보유 다이아몬드 수",
"first_recharge_time": "첫 충전 시간",
"latest_login_time": "마지막 로그인 시간",
"channel": "채널"
}
},
"return_code": 0,
"return_message": "success"
}
응답 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 파라미터 설명 |
|---|---|---|---|
| return_code | 0 | Integer | 반환 코드 |
| return_message | success | String | 반환 정보 |
| data | - | Object | 반환 결과 |
| data.datalist | - | List<Map> | 유저 정보 |
| data.columMeta | - | Map | 필드 의미 매핑 |
오류 응답 예시
{
"return_code": -1008,
"return_message": "파라미터(token)가 비어 있습니다"
}
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 파라미터 설명 |
|---|---|---|---|
| return_code | -1008 | Integer | 반환 코드 |
| return_message | 파라미터(token)가 비어 있습니다 | String | 반환 정보 |
4. 이벤트 분석 유저 목록 다운로드
인터페이스 URL
/open/streaming-download/event-user-list?token=xxx
요청 방식
POST
Content-Type
application/json
요청 Query 파라미터
| 파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| token | xxx | String | 예 | 조회 키 |
요청 Body 파라미터
{
"eventView": {
"comparedByTime": false,
"comparedRecentDay": "",
"endTime": "2022-03-07 16:32:12",
"filts": [
{
"columnDesc": "레벨",
"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": "LogOut의 유니크 유저 수",
"eventUuid": "QgfCSkCw",
"filts": [],
"quota": "",
"quotaEntities": [
{
"index": 0,
"taIdMeasure": {
"columnDesc": "유저 고유 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
}
요청 파라미터 설명
| $$파라미터 이름 | 예시 값 | 파라미터 타입 | 필수 여부 | 파라미터 설명 |
|---|---|---|---|---|
| projectId | 0 | String | 예 | 파라미터 설명 |
| eventView | - | Object | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 |
| events | List | 예 | 파라미터 내용은 이벤트 분석 조회 인터페이스와 동일 | |
| sliceDate | "2019-11-26" | String | 아니요 | 드릴다운할 날짜 |
| sliceGroupVal | ["베이징시"] | List | 예 | 드릴다운할 그룹 |
| eventIndex | 0 | int | 예 | 드릴다운할 지표의 순번(0부터 시작) |
| selectedColumns | ["#account_id"] | List | 예 | 다운로드할 열 |
| zoneOffset | 10 | Integer | 아니요 | 시간대 |
요청 파라미터는 AE 시스템의 이벤트 분석 페이지에서 파라미터 기본 구조를 내보낸 다음 sliceDate, eventIndex, eventDate, sliceGroupVal, selectedColumns 파라미터를 추가하면 됩니다. 구체적인 파라미터 값은 페이지의 인터페이스 요청에서 확인할 수 있습니다
응답
AE 시스템의 이벤트 분석 유저 목록 다운로드와 동일
이벤트 분석 공통 열거형
이벤트 집계 유형 열거형 값
| 값 | 설명 | 속성 필요 여부 |
|---|---|---|
| TOTAL_TIMES | 총 횟수 | 아니요 |
| TRIG_USER_NUM | 유니크 유저 수 | 아니요 |
| PER_CAPITA_TIMES | 1인당 평균 횟수 | 아니요 |
| SUM | 수치 합계 | 예 |
| AVG | 수치 평균값 | 예 |
| PER_CAPITA_NUM | 1인당 평균 | 예 |
| MAX | 수치 최댓값 | 예 |
| MIN | 수치 최솟값 | 예 |
| DISTINCT | 고유값 수 | 예 |
| TRUE | 참 값 수 | 예 |
| FALSE | 거짓 값 수 | 예 |
| IS_NOT_EMPTY | Not Null 값 수 | 예 |
| IS_EMPTY | Null 값 수 | 예 |
| ARRAY_DISTINCT | 리스트 고유값 수 | 예 |
| ARRAY_SET_DISTINCT | 집합 고유값 수 | 예 |
| ARRAY_ITEM_DISTINCT | 요소 고유값 수 | 예 |
| MEDIAN | 중앙값 | 예 |
| PERCENTILE | 분위수 | 예 |

