menu
Is this helpful?

# 유저 속성 분석 API

유저 속성 분석 API는 유저의 특성을 분석하는 기능을 제공합니다.

호출 방법에 대해서는 Open API의 호출 방법 설명을 참조하십시오.

사용 시나리오에 대한 이해를 돕기 위해 사용자 가이드의 구성 부분을 읽을 수 있습니다.

# 1. 유저 속성 분석 쿼리

인터페이스 URL

/open/user-prop-analyze?token=xxx

요청 방법

POST

콘텐츠 유형

application/json

요청 쿼리 파라미터

Parameter name

Sample value

Parameter type

Is required

Parameter description

token

xxx

String

Yes

token

요청 본문 파라미터

{
  "eventView": {
    "userCrowds": [
      {
        "crowdName": "female",
        "filts": [
          {
            "columnDesc": "gender",
            "columnName": "gender",
            "comparator": "equal",
            "filterType": "SIMPLE",
            "ftv": [
              "女"],
            "specifiedClusterDate": "2022-01-27",
            "tableType": "user",
            "timeUnit": ""
          }],
        "relation": "and"
      },
      {
        "crowdName": "male",
        "filts": [
          {
            "columnDesc": "gender",
            "columnName": "gender",
            "comparator": "equal",
            "filterType": "SIMPLE",
            "ftv": [
              "male"],
            "specifiedClusterDate": "2022-01-27",
            "tableType": "user",
            "timeUnit": ""
          }],
        "relation": "and"
      },
      {
        "crowdName": "gender unknown",
        "filts": [
          {
            "columnDesc": "gender",
            "columnName": "gender",
            "comparator": "equal",
            "filterType": "SIMPLE",
            "ftv": [
              "unknown"],
            "specifiedClusterDate": "2022-01-27",
            "tableType": "user",
            "timeUnit": ""
          }],
        "relation": "and"
      }]
  },
  "events": [
    {
      "analysis": "SUM",
      "analysisDesc": "sum",
      "eventNameDisplay": "account balance",
      "filts": [
        {
          "columnDesc": "balance",
          "columnName": "accountbalance",
          "comparator": "greater",
          "filterType": "SIMPLE",
          "ftv": [
            "1"],
          "specifiedClusterDate": "2022-01-27",
          "tableType": "user",
          "timeUnit": ""
        }],
      "quota": "accountbalance",
      "relation": "and",
      "tableType": "user"
    }],
  "projectId": 377,
  "limit": 10,
  "timeoutSeconds": 10,
  "useCache": true
}

요청 파라미터 설명

$$Parameter name

Sample value

Parameter type

Is required

Parameter description

eventView - Object Yes Metrics common attribute part
eventView.userCrowds - Object No Crowd
eventView.userCrowds.crowdName Female String Yes Crowd name
eventView.userCrowds.filts - List Yes Filter objects
eventView.userCrowds.filts.columnDesc Gender String No Field display name
eventView.userCrowds.filts.columnName gender String Yes Field name
eventView.userCrowds.filts.comparator equal String Yes Reference: filtering expression of model query API
eventView.userCrowds.filts.filterType SIMPLE String No Filter mode, SIMPLE: simple, COMPOUND: composite
eventView.userCrowds.filts.ftv ["Female"] List No Property comparative with bound literial
eventView.userCrowds.filts.specifiedClusterDate 2022-01-27 String No Historical tag version of specified date
eventView.userCrowds.filts.tableType user String Yes Table type enumeration
eventView.userCrowds.filts.timeUnit String No Filter time unit
eventView.userCrowds.relation and String Yes Logical relationship, and: logical and, or: logical or
events - List Yes Event metric list
events.analysis SUM String Yes Analysis aspect for user feature aggregation for Aggregate type enumeration for user feature analysis
events.analysisDesc Sum String No Analysis aspect description
events.eventNameDisplay Total balance String No Self-defined metric display name
events.filts - List No List of conditions
events.filts.columnDesc Balance String No Field display name
events.filts.columnName accountbalance String Yes Field name
events.filts.comparator greater String Yes Reference: filtering expression of model query API
events.filts.filterType SIMPLE String No Filter mode, SIMPLE: simple, COMPOUND: composite
events.filts.ftv ["1"] List No Property comparative with bound literial
events.filts.specifiedClusterDate 2022-01-27 String No Historical tag version of specified date
events.filts.tableType user String Yes Table type enumeration
events.filts.timeUnit String No Filter time unit
events.quota accountbalance String No Metric property (combined with analysis, indicating the property involved and the analysis perspective)
events.relation and String No Logical relationship, and: logical and, or: logical or
events.tableType user String Yes Table type enumeration
projectId 377 Integer Yes Project enumeric identity
limit 10 Integer No Maximum number of groups per analysis object, optional parameters, default is 1000, maximum is 10000
timeoutSeconds 10 Integer No Request timed out parameter, timeout cancels query task
useCache true Boolean No Use cache, optional parameter, default is true

성공적인 응답 예시

{
  "data": {
    "data_list": [
      {
        "group_cols": [
          "female"
        ],
        "values": 1140523491
      },
      {
        "group_cols": [
          "male"
        ],
        "values": 1141720850
      },
      {
        "group_cols": [
          "gender unknown"
        ],
        "values": 227565607
      }
    ],
    "group_cols_sorted": [
      [
        "female",
        "male",
        "gender unknown"
      ]
    ],
    "group_num": 0,
    "result_generate_time": "2022-01-27 15:01:51",
    "unit": ""
  },
  "return_code": 0,
  "return_message": "success"
}

응답 파라미터 설명

$$Parameter name

Sample value

Parameter type

Parameter description

return_code 0 Integer Return code
return_message success String Return message
data - Object Return result
data.data_list - List Data List
data.data_list.group_cols ["Female"] List Group or crowd list
data.data_list.values 1140523491 Integer Number of users
data.group_cols_sorted ["Female"] List Full group or crowd order list
data.group_num 0 Integer Number of groupings
data.result_generate_time 2022-01-27 15:01:51 String Results generation time
data.unit String Numerical attribute unit

오류 응답 예시

{
    "return_code": -1008,
    "return_message": "The parameter (token) is empty"
}

Parameter name

Sample value

Parameter type

Parameter description

return_code

-1008

Integer

Return code

return_message

The parameter (token) is empty

String

Return message

# 2. 유저 특성 분석 풀 데이터 다운로드

인터페이스 URL

/open/streaming-download/user-prop-analyze?token=xxx

요청 방법

POST

콘텐츠 유형

application/json

요청 쿼리 파라미터

Parameter name

Sample value

Parameter type

Mandatory or not

Parameter description

token

xxx

String

Yes

Query key

요청 본문 파라미터

{
        
    "eventView": {
        "userCrowds": [
          {
            "crowdName": "female",
            "filts": [
              {
                "columnDesc": "gender",
                "columnName": "gender",
                "comparator": "equal",
                "filterType": "SIMPLE",
                "ftv": [
                  "女"],
                "specifiedClusterDate": "2022-01-27",
                "tableType": "user",
                "timeUnit": ""
              }],
            "relation": "and"
          },
          {
            "crowdName": "male",
            "filts": [
              {
                "columnDesc": "gender",
                "columnName": "gender",
                "comparator": "equal",
                "filterType": "SIMPLE",
                "ftv": [
                  "male"],
                "specifiedClusterDate": "2022-01-27",
                "tableType": "user",
                "timeUnit": ""
              }],
            "relation": "and"
          },
          {
            "crowdName": "gender unknown",
            "filts": [
              {
                "columnDesc": "gender",
                "columnName": "gender",
                "comparator": "equal",
                "filterType": "SIMPLE",
                "ftv": [
                  "unknown"],
                "specifiedClusterDate": "2022-01-27",
                "tableType": "user",
                "timeUnit": ""
              }],
            "relation": "and"
          }]
      },
      "events": [
        {
          "analysis": "SUM",
          "analysisDesc": "sum",
          "eventNameDisplay": "account balance",
          "filts": [
            {
              "columnDesc": "balance",
              "columnName": "accountbalance",
              "comparator": "greater",
              "filterType": "SIMPLE",
              "ftv": [
                "1"],
              "specifiedClusterDate": "2022-01-27",
              "tableType": "user",
              "timeUnit": ""
            }],
          "quota": "accountbalance",
          "relation": "and",
          "tableType": "user"
        }],
        "projectId": 390
}

요청 파라미터 설명

$$ Parameter name

Sample value

Parameter type

Mandatory or not

Parameter description

eventView

-

Object

Yes

Same parameters as User feature Analysis Query interface

events

-

List

Yes

Same parameters as User feature Analysis Query interface

projectId

377

Integer

Yes

Project numeric identity

응답

유저 속성 분석 전체 데이터 다운로드와 동일 (TE 시스템의 유저 속성 분석 전체 데이터 다운로드와 동일)

# 3. 유저 속성 분석 유저 목록

인터페이스 URL

/open/user-prop-user-list?token=xxx

요청 방법

POST

콘텐츠 유형

application/json

요청 쿼리 파라미터

Parameter name

Sample value

Parameter type

Is required

Parameter description

token

xxx

String

Yes

token

projectId

0

Integer

Yes

Project ID

요청 본문 파라미터

{
  "projectId": 0,
  "events": [{
    "analysis": "AVG",
    "filts": [
      {
        "columnName": "latest_login_time",
        "comparator": "relativeCurrentBetween",
        "ftv": [
          "7",
          "1"
        ],
        "tableType": "user"
      }
    ],
    "quota": "diamond_num",
    "relation": "and",
    "tableType": "user"
  }],
  "eventView": {
    "groupBy": [
      {
        "columnName": "user_level",
        "tableType": "user"
      },
      {
        "columnName": "channel",
        "tableType": "user"
      }
    ]
  },
  "sliceGroupVal": [
    "31",
    "app store"
  ],
  "timeoutSeconds": 10
}

요청 파라미터 설명

$$Parameter name

Sample value

Parameter type

Is required

Parameter description

projectId

0

Integer

Yes

Project numeric identity

events

-

List

Yes

Same parameters as User feature Analysis Query interface

eventView

-

Object

Yes

Same parameters as User feature Analysis Query interface

sliceGroupVal

["31","app store"]

List

No

Go to detail by which group

timeoutSeconds

10

Integer

No

Request timed out parameter, timeout cancels query task

성공적인 응답 예시

{
  "data": {
    "datalist": [
      {
        "#account_id": "b6909071",
        "#distinct_id": "b12831131",
        "user_level": 31,
        "register_time": "2019-09-23 09:33:31",
        "diamond_num": 1250,
        "first_recharge_time": "2019-11-18 08:50:33",
        "latest_login_time": "2019-11-26 18:15:51",
        "channel": "app store",
        "#user_id": 2961031
      },
      {
        "#account_id": "a6013000",
        "#distinct_id": "a11167000",
        "user_level": 31,
        "register_time": "2019-09-02 19:15:08",
        "diamond_num": 72,
        "first_recharge_time": "2019-09-02 19:18:36",
        "latest_login_time": "2019-11-24 10:02:38",
        "channel": "app store",
        "#user_id": 2577000
      },
      {
        "#account_id": "j2614535",
        "#distinct_id": "j4855535",
        "user_level": 31,
        "register_time": "2019-08-24 20:40:19",
        "diamond_num": 820,
        "latest_login_time": "2019-11-21 14:16:42",
        "channel": "app store",
        "#user_id": 1120535
      }
    ],
    "columMeta": {
      "#account_id": "account ID",
      "#distinct_id": "visitor ID",
      "user_level": "user level",
      "register_time": "register time",
      "diamond_num": "diamond number",
      "first_recharge_time": "first recharge time",
      "latest_login_time": "lastest login time",
      "channel": "channel"
    }
  },
  "return_code": 0,
  "return_message": "success"
}

응답 파라미터 설명

$$Parameter name

Sample value

Parameter type

Parameter description

return_code

0

Integer

Return code

return_message

success

String

Return message

data

-

Object

Return result

data.datalist

-

List

User Information

data.columMeta

-

Map

Field meaning mapping

오류 응답 예시

{
    "return_code": -1008,
    "return_message": "The parameter (token) is empty"
}

Parameter name

Sample value

Parameter type

Parameter description

return_code

-1008

Integer

Return code

return_message

The parameter (token) is empty

String

Return message

# 4. 유저 속성 분석 사용자 목록 다운로드

인터페이스 URL

/open/user-prop-user-list?token=xxx

요청 방법

POST

콘텐츠 유형

application/json

요청 쿼리 파라미터

Parameter name

Sample value

Parameter type

Mandatory or not

Parameter description

token

xxx

String

Yes

Query key

요청 본문 파라미터

{
        
    "events": [{
        "analysis": "AVG",
        "filts": [
          {
            "columnName": "latest_login_time",
            "comparator": "relativeCurrentBetween",
            "ftv": [
              "7",
              "1"
            ],
            "tableType": "user"
          }
        ],
        "quota": "diamond_num",
        "relation": "and",
        "tableType": "user"
      }],
      "eventView": {
        "groupBy": [
          {
            "columnName": "user_level",
            "tableType": "user"
          },
          {
            "columnName": "channel",
            "tableType": "user"
          }
        ]
      },
      "sliceGroupVal": [
        "31",
        "app store"
      ],
    "projectId": 319,
    "eventIndex": 0,
    "selectedColumns": ["#account_id", "#distinct_id", "accountid"]
}

요청 파라미터 설명

$$parameter name

Sample value

Parameter type

Mandatory or not

Parameter description

projectId

0

Integer

Yes

Project enumeric identity

events

-

List

Yes

Same parameters as User feature Analysis Query interface

eventView

-

Object

Yes

Same parameters as User feature Analysis Query interface

sliceGroupVal

["31","app store"]

List

No

Go to detail by which group

eventIndex

0

Integer

Yes

Index of crowd, starting from 0

selectedColumns

["#account_id"]

array

Yes

The columns to be downloaded

응답

TE 시스템의 유저 페르소나 분석 사용자 목록 다운로드와 동일합니다.

# 5. 유저 이벤트 목록 조회

인터페이스 URL

/open/user-event-list?token=xxx

요청 방법

POST

콘텐츠 유형

application/json

요청 쿼리 파라미터

Parameter name

Sample value

Parameter type

Is required

Parameter description

token

xxx

String

Yes

token

요청 본문 파라미터

{
  "eventNames": [
    "payment",
    "level_up",
    "activity_attend",
    "draw_card",
    "register",
    "logout",
    "login",
    "gold_get",
    "gold_consume"
  ],
  "pagerHeader": {
    "pageNum": 1,
    "pageSize": 2
  },
  "projectId": 377,
  "startDateTime": ["2021-11-04 00:00:00"],
  "dateFormat": "week",
  "firstDayOfWeek": 1,
  "userId": 795687603434164226,
  "timeoutSeconds": 10,
  "useCache": true
}

요청 파라미터 설명

$$Parameter name

Sample value

Parameter type

Is required

Parameter description

eventNames

["payment"]

List

Yes

List of events included

pagerHeader

-

Object

Yes

Generic paging request header

pagerHeader.pageNum

1

Long

No

Start page

pagerHeader.pageSize

2

Long

No

Number per page

projectId

377

Integer

Yes

Project ID

startDateTime

["2021-11-04 00:00:00"]

List

No

Start time list yyyy-MM-dd HH: mm: ss

dateFormat

week

String

Yes

Unit of the time period taken for analysis

  • day: based on days

  • week: based on weeks

  • month: based on months

  • total: total

firstDayOfWeek

1

Integer

No

First day of the week

userId

795687603434164226

Long

Yes

User ID of the analysis target

timeoutSeconds

10

Integer

No

Request timed out parameter, timeout cancels query task

useCache

true

Boolean

No

Use cache, optional parameter, default is true

성공적인 응답 예시

{
  "data": {
    "columnDescMeta": {
      "network": "network type",
      "ip": "IP",
      "browser": "browser",
      "browser_version": "browser version",
      "manufacturer": "manufacturer",
      "#lib": "SDK type",
      "channel": "source channel",
      "platform": "platform",
      "serverid": "server ID",
      "device_type": "device type",
      "#lib_version": "SDK version",
      "os_version": "operation version",
      "app_version": "app version",
      "os": "operation system",
      "lib": "library",
      "level": "user level",
      "model": "model",
      "screen_height": "screen height",
      "carrier_name": "carrier name",
      "vip_level": "VIP level",
      "brand": "brand",
      "currency_type": "currency type",
      "pay_amount": "pay amount",
      "diamond_get_amount": "diamond amount",
      "payment_name": "payment name",
      "is_first_pay": "first payment or not",
      "#country_code": "country code",
      "#ip": "service IP",
      "#city": "city",
      "#province": "province",
      "#country": "country",
      "screen_width": "screen width",
      "device_id": "device ID",
      "#zone_offset": "zone offset"
    },
    "eventNameDescMeta": {
      "anyEvent": "any event",
      "activity_attend": "attend activity",
      "draw_card": "draw cards",
      "gold_consume": "gold consume",
      "gold_get": "get gold",
      "level_up": "level up",
      "login": "login",
      "logout": "logout",
      "payment": "payment",
      "register": "register"
    },
    "resultGenerateTime": "2022-01-27 15:46:08",
    "userEventSeqList": [
      {
        "event_name": "login",
        "properties": {
          "#event_time": "2021-11-04 15:59:39.179",
          "network": "WIFI",
          "ip": "27.17.30.245",
          "browser": "Safari",
          "browser_version": "Safari 11.0.3",
          "manufacturer": "apple",
          "#lib": "easydata",
          "channel": "baidu",
          "platform": "WeGame platform",
          "serverid": "10",
          "device_type": "desktop",
          "#lib_version": "1.0",
          "os_version": "iOS 11.4",
          "app_version": "V1.0",
          "os": "iOS",
          "lib": "JS",
          "level": "93",
          "model": "iPhone X",
          "screen_height": "681",
          "carrier_name": "China telecom",
          "vip_level": "1",
          "brand": "apple",
          "#country_code": "",
          "#ip": "localhost",
          "#city": "unknown",
          "#province": "unknown",
          "#country": "unknown",
          "screen_width": "360",
          "device_id": "47BjM",
          "#zone_offset": "-5"
        },
        "time": "2021-11-04 15:59:39.179"
      },
      {
        "event_name": "payment",
        "properties": {
          "#event_time": "2021-11-04 15:59:46.179",
          "network": "WIFI",
          "ip": "27.17.30.245",
          "browser": "Safari",
          "browser_version": "Safari 11.0.3",
          "manufacturer": "apple",
          "#lib": "easydata",
          "channel": "baidu",
          "platform": "WeGame platform",
          "serverid": "10",
          "device_type": "desktop",
          "#lib_version": "1.0",
          "os_version": "iOS 11.4",
          "app_version": "V1.0",
          "os": "iOS",
          "lib": "JS",
          "level": "93",
          "model": "iPhone X",
          "screen_height": "681",
          "carrier_name": "China telecom",
          "vip_level": "1",
          "brand": "apple",
          "currency_type": "coupon",
          "pay_amount": "536",
          "diamond_get_amount": "7485",
          "payment_name": "honor package",
          "is_first_pay": false,
          "#country_code": "",
          "#ip": "localhost",
          "#city": "unknown",
          "#province": "unknown",
          "#country": "unknown",
          "screen_width": "360",
          "device_id": "47BjM",
          "#zone_offset": "-5"
        },
        "time": "2021-11-04 15:59:46.179"
      }
    ]
  },
  "return_code": 0,
  "return_message": "success"
}

응답 파라미터 설명

$$Parameter name

Sample value

Parameter type

Parameter description

return_code

0

Integer

Return code

return_message

success

String

Return message

data

-

Object

Return result

data.columnDescMeta

-

Map

Attribute name mapping

data.eventNameDescMeta

-

Map

Event name

data.resultGenerateTime

2022-01-27 15:46:08

String

Results generation time

data.userEventSeqList

-

List

User sequence list

data.userEventSeqList.event_name

login

String

Event name

data.userEventSeqList.properties

-

Map

Event property details

data.userEventSeqList.time

2021-11-04 15:59:46.179

String

Time

오류 응답 예시

{
    "return_code": -1008,
    "return_message": "The parameter (token) is empty"
}

Parameter name

Sample value

Parameter type

Parameter description

return_code

-1008

Integer

Return code

return_message

The parameter (token) is empty

String

Return information

# 유저 속성 분석을 위한 일반적인 목록

# 유저 속성 분석을 위한 집계 유형 목록

Value

Description

Whether properties are required

TRIG_USER_NUM

Number of users triggered

No

SUM

Sum of values

Yes

AVG

Numerical average

Yes

MAX

Maximum value

Yes

MIN

Numerical minimum

Yes

DISTINCT

Deduplicate number

Yes

TRUE

True number

Yes

FALSE

False number

Yes

IS_NOT_EMPTY

Not an empty number

Yes

IS_EMPTY

Null number

Yes

ARRAY_DISTINCT

List overall deduplicate number

Yes

ARRAY_SET_DISTINCT

Element collection deduplicate number

Yes

ARRAY_ITEM_DISTINCT

List element deduplicate number

Yes

MEDIAN

Median

Yes

PERCENTILE

Percepentiles

Yes