文档平台 API 中心 云推荐引擎 行为日志上报 API

行为日志上报 API

最近更新时间:2017-10-23 11:35:18

1. 接口描述

功能:单条或者批量提交用户行为数据
测试接口:https://sdtj.y.qq.com:8008/cre_test_upload
正式接口:https://sdtj.y.qq.com:8008/upload
请求方式:POST

2. 输入参数

表 1:

参数名称 必选 类型 含义
version String 上报接口版本 (1,2,3,4) ,当前版本为 1
seq_no String 请求标识,接口原样返回
data_type String 协议类型: "1" - item, "2" – action,行为上报传 "2"
token String 用作鉴权,由云推荐引擎分配
data JSONArray 多条行为数据,详细参考表 2

表 2:

参数名称 必选 类型 含义
uid_type String "0" - qq, "1" - 微信号, "2" - qq-openid, "3" - imei/idfa, "4" – 手机号,"5" - App 唯一用户,"6" – 微信-openid
uid String uid_type 指定类型的用户标识,QQ 号,微信号等等
oper_time String 操作时间,UTC 时间,例如 "1483200000"(2017年01月01日 00:00:00)
source String 用于分流的标识字段,区分用户的行为是来自哪个引擎;"0" :腾讯云推荐引擎,其他值业务自定义
test_id String 推荐场景 ID ,比如对于 "猜你喜欢"、"首页推荐"等推荐场景,云推荐引擎会分配一个 ID 标识。推荐场景必须填写,此时该字段由推荐引擎的请求接口返回,业务上报时原样拷贝即可,例如 "1000190"
rule_id String 算法 ID ,推荐场景必须填写;通常一个推荐场景下会有多个算法 ID ,用于算法迭代
item_type String 物品类型,例如 App 、商品等
action_id String 曝光:101, 点击:102, 下载:103, 阅读:104, 播放:105, 转发/分享:106, 点赞:107, 评论:108, 支付:109, 收藏:110, 搜索:111, 关注:112, 回复:113, 安装:114, 打开:115, 取消收藏:116, 加入购物车:117, 从购物车删除:118, 收藏店铺:119,取消收藏店铺:120, 关注:121, 取消关注:122, 购买:123, 取消购买:124, 播放快进:125, 播放快退:126, 播放下一个:127, 重播:128
busi_id String 业务 ID ,由云推荐引擎分配
page_id String 页面 ID ,区分不同页面;如:"1001" 表示直播首页
module_id String 操纵模块 ID,如:"100102" 标识 banner
sub_module_id String 操作子模块 ID
platform String "ios":ios 平台,"android":Android 平台,"h5":h5 页面
device String 设备型号描述
network_type String 网络型号。 "2G":2G 网络,"3G":3G 网络,"4G":4G 网络,"WIFI":WIFI 网络
app_version String App 的版本
report_source String 上报来源。"1" - 安卓终端,"2" - iOS 终端,"3" - 前端(外部分享页、Web),"4" - 后台,"5" - 前端(客户端内)
geo latitude String 用户发生行为的经度,例如"22.558220"
longtitude String 用户发生行为的纬度,例如"114.084778"
country String 用户发生行为的国家,ISO 3166-1 alpha-3编码,例如"CHN"(中国)
city String 用户发生行为的城市,例如 "深圳"
extend(多个扩展字段,类型为JSONArray) key1 String 自定义字段1
key2 String 自定义字段2,业务自行扩充
item_action(多个item行为,类型为JSONArray) item_id String 物品 ID,物品唯一标识
sub_item_id String 子物品唯一标识
action_value String 操作行为值,例如商品价格、视频播放时长
position_id String 物品在列表中的位置
trace_id String 跟踪点击和曝光的自定义会话 ID,为了保证点击跟曝光是同一个用户,对同一个 item 的操作行为,强烈建议每次曝光分配一个 trace_id
item_info(多个具体的 item 信息,类型为 JSONObject) JSONObject 所有都是 key-value 组成键值对,key 为 String 类型,value 为 String 类型

3. 输出参数

参数名称 必选 类型 描述
seq_no String 请求标识,接口原样返回
code String 错误码,"0" 表示成功,非 "0" 表示失败
message String 错误信息

4. 示例

输入:

{
"version" :"1",
"seq_no":"1",
 "data_type":"2",
 "token":"7d10d09d-be62-4979-9ee0-414f7a23086a",
 "data":[
   {
     "uid_type":"2",
     "uid":"00000000adfec3",
     "oper_time":"1483200000",
     "source":"0", 
     "test_id":"201008",
     "rule_id":"200723",
     "action_id":"101",
     "busi_id":"1000191",
     "item_action":[
       {
         "item_id": "item1",
         "position_id":"2",
         "trace_id":"345",
         "item_info": {
           "price":"99",
           "group_id1":"1111"
         }
       },
       {
         "item_id": "item2",
         "position_id":"5",
         "trace_id":"346",
         "item_info": {
           "price":"99",
           "group_id2":"1111"
         }
       }     
      ],
     "page_id":"https://www.xx.com/",
     "network_type":"4G",
     "extend":{
       "ext1":"800456",
       "ext2":"123423",
       "ext3":"https://www.yy.com"
     }
   }
 ]
}

输出:

{
  "seq_no":"1",
  "code":"0",
  "message":null
}