目录
此内容是否有帮助?

# Path Analysis Model API

Call method See Call method description in Open API doc.

You can read the path analysis in the user manual to understand the usage scenario.

# Path Analysis Query

Interface URL

/open/path-analyze?token=xxx

Request method

POST

Content-Type

application/json

Request Query parameter

Parameter name
Sample value
Parameter type
Is required
Parameter description
token
xxx
String
Yes
token

# Request Body Parameter

{
  "eventView": {
    "col_limit": 10,
    "from_date": "2021-10-01 00:00:00",
    "recent_day": "",
    "session_interval": 30,
    "session_type": "minute",
    "to_date": "2021-10-02 23:59:59"
  },
  "events": {
    "by_fields": [
      {
        "event_name": "login",
        "field": "browser",
        "range": "",
        "table_type": "event"
      }],
    "event_names": [
      "logout",
      "login"],
    "source_event": {
      "event_name": "login",
      "filter": {
        "filterType": "COMPOUND"
      }
    },
    "source_type": "initial_event",
    "user_filter": {
      "filterType": "COMPOUND",
      "filts": [
        {
          "columnDesc": "city",
          "columnName": "city",
          "comparator": "equal",
          "filterType": "SIMPLE",
          "ftv": [
            "Beijing",
            "Shanghai",
            "Guangzhou",
            "Shenzhen"],
          "specifiedClusterDate": "2022-01-24",
          "tableType": "user"
        }],
      "relation": "and"
    }
  },
  "projectId": 377,
  "timeoutSeconds": 10,
  "useCache": true
}

# Request Parameter Description

Parameter name
Sample value
Parameter type
Is required
Parameter description
eventView
-
Object
Yes
Grouping properties
∟ col_limit 10
Integer
Yes
Column limit, between 0 and 20
∟ from_date 2021-10-01 00:00:00
String
No
Start time yyyy-MM-dd HH: mm: ss
∟ recent_day String
No
Relative time
∟ session_interval 30
Integer
Yes
Session interval length
∟ session_type minute
String
Yes
Session duration units: seconds, minutes, hours
∟ to_date 2021-10-02 23:59:59
String
No
End time yyyy-MM-dd HH: mm: ss
events
-
List
Yes
List of event indicators
∟ by_fields -
List
List
Split by event properties
∟ event_name login
String
Yes
Event name
∟ field browser
String
Yes
Split field
∟ range String
No
Interval
∟ table_type event
String
Yes
Table type, event: transaction table, user: user table
∟ event_names ["logout","login"]
String
Yes
Event type, in particular, you can use anyEvent to represent any event
∟ source_event -
Object
Yes
Source event
∟ event_name login
String
Yes
Event name
∟ filter -
Object
No
Source event filtering
∟ filterType COMPOUND
String
No
Filter mode, SIMPLE: simple, COMPOUND: composite
∟ source_type initial_event
String
Yes
Event type, initial_event, termination_event
∟ user_filter -
Object
No
User table filtering
∟ filterType COMPOUND
String
No
Filter mode, SIMPLE: simple, COMPOUND: composite
∟ filts -
List
No
List of conditions
∟ columnDesc app_version
String
No
Field display name
∟ columnName app_version
String
Yes
Field name
∟ comparator equal
String
Yes
Reference: Filtered expression for model query API
∟ filterType SIMPLE
String
No
Filter mode, SIMPLE: simple, COMPOUND: composite
∟ ftv ["V1.0"]
List
No
Property comparison value
∟ specifiedClusterDate 2022-01-26
String
No
Cluster specified date
∟ tableType event
String
Yes
Table type, event: transaction table, user: user table
∟ relation and
String
No
Logical relationship, and: logical and, or: logical or
projectId
377
Integer
Yes
Project ID
timeoutSeconds
10
Integer
No
Request timed out parameter, timeout cancels query task
useCache
true
Boolean
No
Use cache, optional parameter, default is true

# Successful Response Example

{
  "data": {
    "event_name_desc_map": {
      "anyEvent": "any event",
      "login": "login",
      "logout": "logout"
    },
    "links": [
      [
        {
          "source": "0_Chrome^_^login",
          "target": "1_logout",
          "times": 1716
        },
        {
          "source": "0_Safari^_^login",
          "target": "1_logout",
          "times": 765
        },
        {
          "source": "0_Firefox^_^login",
          "target": "1_logout",
          "times": 582
        },
        {
          "source": "0_Wechat built-in browser^_^login",
          "target": "1_logout",
          "times": 403
        },
        {
          "is_wastage": true,
          "source": "0_Chrome^_^login",
          "target": "1_wastage",
          "times": 380
        },
        {
          "is_wastage": true,
          "source": "0_Safari^_^login",
          "target": "1_wastage",
          "times": 195
        },
        {
          "is_wastage": true,
          "source": "0_Firefox^_^login",
          "target": "1_wastage",
          "times": 148
        },
        {
          "is_wastage": true,
          "source": "0_Wechat built-in browser^_^login",
          "target": "1_wastage",
          "times": 89
        }
      ]
    ],
    "nodes": [
      [
        {
          "by_value": "Chrome",
          "event_name": "login",
          "id": "0_Chrome^_^login",
          "times": 2096
        },
        {
          "by_value": "Safari",
          "event_name": "login",
          "id": "0_Safari^_^login",
          "times": 960
        },
        {
          "by_value": "Firefox",
          "event_name": "login",
          "id": "0_Firefox^_^login",
          "times": 730
        },
        {
          "by_value": "Wechat built-in browser",
          "event_name": "login",
          "id": "0_Wechat built-in browser^_^login",
          "times": 492
        }
      ],
      [
        {
          "event_name": "logout",
          "id": "1_logout",
          "times": 3466
        }
      ]
    ],
    "result_generate_time": "2022-01-27 13:44:38"
  },
  "return_code": 0,
  "return_message": "success"
}

# Response Parameter Description

Parameter name
Sample value
Parameter type
Parameter description
return_code
0
Integer
Return code
return_message
success
String
Return information
data
-
Object
Return data
∟ event_name_desc_map -
Map
Event name and event description mapping
∟ links -
List
Relational matrix
∟ source 0_Chrome^_^login
String
Relationship start node
∟ target 1_level_up
String
Relationship end node
∟ times 5106
Integer
Number of times
∟ nodes -
List
Node matrix
∟ id 0_Chrome^_^login
String
Node ID
∟ event_name login
String
Node event name
∟ by_value Chrome
String
Node value
∟ times 30301
Integer
Number of times
∟ result_generate_time 2022-01-24 18:53:26
String
Query result generation time

Error Response Example

{
    "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

# Path Analysis User List

Interface URL

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

Request method

POST

Content-Type

application/json

Request Query Parameter

Parameter name
Sample value
Parameter type
Is required
Parameter description
token
xxx
String
Yes
token

# Request Body Parameter

{
  "projectId": 0,
  "eventView": {
    "col_limit": 10,
    "from_date": "2019-11-20 00:00:00",
    "to_date": "2019-11-26 00:00:00",
    "recent_day": "1-7",
    "session_interval": 22,
    "session_type": "minute"
  },
  "events": {
    "event_names": [
      "obtain_item",
      "consume_item",
      "obtain_coin"
    ],
    "source_event": {
      "event_name": "consume_item",
      "filter": {
        "filts": [
          {
            "columnName": "#os",
            "comparator": "equal",
            "ftv": [
              "ios"
            ],
            "tableType": "event"
          }
        ],
        "relation": "and"
      }
    },
    "source_type": "initial_event",
    "user_filter": {
      "filts": [
        {
          "columnName": "user_level",
          "comparator": "equal",
          "ftv": [
            "6"
          ],
          "tableType": "user"
        }
      ],
      "relation": "and"
    }
  },
  "next_slice_event_by_values": [
    {
      "slice_event_name": "obtain_coin"
    }
  ],
  "session_level": 2,
  "slice_type": "with_next_specific",
  "slice_event_by_values": [
    {
      "slice_event_name": "obtain_item"
    }
  ],
  "timeoutSeconds": 10
}

# Request Parameter Description

Parameter name
Sample value
Parameter type
Is required
Parameter description
projectId
0
String
Yes
Parameter description
eventView
-
Object
Yes
Group property table
∟ col_limit 10
String
Yes
Between 0 and 20
∟ from_date 2019-11-20 00:00:00
String
No
Start time (format: yyyy-MM-dd HH: mm: ss)
∟ to_date 2019-11-26 00:00:00
String
No
End time (format: yyyy-MM-dd HH: mm: ss)
∟ recent_day 1-7
String
No
Relative time (this item cannot be empty at the same time as the start time and the end time)
∟ session_interval 22
Integer
Yes
Session interval length
∟ session_type minute
String
Yes
Session duration units: seconds, minutes, hours
events
List
Yes
List of event indicators
∟ event_names ["obtain_item"]
List
Yes
Event type, in particular, you can use anyEvent to represent any event
∟ source_event -
Object
Yes
Initial event
∟ event_name consume_item
String
Yes
Event name, up to 30
∟ filter -
Object
No
Filter
∟ filts -
List
No
Filter List
∟ columnName #os
String
Yes
Field name
∟ comparator equal
String
Yes
Reference: Filtered expression for model query API
∟ ftv ["ios"]
List
No
Property comparison value
∟ tableType event
String
Yes
Table type, event: transaction table, user: user table
∟ relation and
String
No
Logical relationship, and: logical and, or: logical or
next_slice_event_by_values
-
List
No
Subsequent events of nodes
slice_type = with_next_specific required
∟ slice_event_name obtain_coin
String
No
Event type
session_level
2
Integer
Yes
The path level at which the node is located (counting from 0)
slice_type
with_next_specific
String
Yes
Subsequent events of nodes
Total: total
with_next: There are subsequent nodes
without_next: No subsequent nodes
with_next_specific: A node with a subsequent event
slice_event_by_values
-
List
No
Node events
∟ slice_event_name obtain_item
String
No
Event type
timeoutSeconds
10
Integer
No
Request timed out parameter, timeout cancels query task

# Successful Response Example

{
  "data": {
    "datalist": [
      {
        "#account_id": "j77444535",
        "#distinct_id": "j143825535",
        "user_level": 6,
        "register_time": "2019-11-22 17:07:12",
        "diamond_num": 1270,
        "latest_login_time": "2019-11-22 18:23:19",
        "channel": "app store",
        "#user_id": 33190535
      }
    ],
    "total_num": 1,
    "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"
}

# Response Parameter Description

Parameter name
Sample value
Parameter type
Parameter description
return_code
0
Integer
Return code
return_message
success
String
Return information
data
-
Object
Return result
∟ datalist -
List
User Information
∟ columMeta -
Map
Field meaning mapping

Error Response Example

{
    "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