小游戏转化数据API自归因文档
目录
一. 微信小游戏转化数据上报说明及示例
二. QQ小游戏转化数据上报说明及示例
三. 确定行为类型
四. 转化上报常用参数列表(action_param)
五. 数据上报错误提示
FAQ
以下内容建议提供给将您的转化数据回传给腾讯广告的技术侧阅读,优化师及广告投手阅读帮助中心-转化归因使用指南-微信小游戏转化归因操作手册 ,了解如何在广告创建时进行归因设置。
登录 投放管理平台 → 上方工具箱 → 效果分析 → 转化归因,可以找到小游戏转化中的API(自归因上报)接口。
微信小游戏的API自归因利用_CALLBACK_(cb) / clickid和微信openid作为用户标识,从而实现腾讯点击数据和全网转化数据的匹配。因此必须将cb / clickid、小游戏appid、微信openid连同转化类型(ActionType) 一并上报给腾讯广告,经过腾讯广告计算后,将最终数据呈现在投放端。微信小游戏统一采用注册归因口径。
名词解释:
cb:直接从点击转发出去的__CALLBACK__字段中URLDecode获得,每次点击唯一,作为上报地址使用。
clickid:在腾讯广告推广时,每次点击都会生成一个 click_id,用于唯一标识一次用户点击。在微信小游戏场景中,可以从⼩游戏数据监控参数的gdt_vid字段中获取(即微信广告traceid),详见微信⼩游戏⼴告数据监控指引
openid:对于微信小游戏的用户,每个用户都会在每个小游戏生成一个openid,将openid与小程序appid作为转化数据的标识,详情请参考微信openid获取说明。
注册归因:指注册后的行为(如创角、付费等)会归因到前置的注册;建议配合注册口径报表使用。
微信小游戏转化数据上报步骤:
1. 获得微信小游戏AppID的授权
上传微信行为数据时,首先必须获取openID所对应的APP ID授权。如果未经授权或APPID和openID不是对应关系,将导致归因失败。
授权操作详见DMP微信数据接入。
2. 构造数据上报请求
若您在创建转化时填写了点击监测链接,则应采用如下上报协议
curl -X POST \
http://tracking.e.qq.com/conv?cb=YWRzX3NlcnZpY2UsMTU4NDUxMDI3OSwyNjg5MzNhMzc5MTM0YzBjMDQ4ZGZjMGQyNGYzMTk0NWYzMzJiOWNi&conv_id=10001 \ //这里请求的url&path 直接从点击转发出去的__CALLBACK__字段中URLDecode获得,左边是示例请求,请勿直接上报
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d '{
"actions":[
{
"outer_action_id": "outer_action_identity", // 选填,若上报可能有重复请填写该id,系统会根据该ID进行去重,详见FAQ
"action_time": 1492998081,
"user_id": { // user_id,可采集到的设备标识
"hash_imei": "f9efca36a3c30e1cf28170d86ecbf5e9",
"hash_idfa": "f9efca36a3c30e1cf28170d86ecbf5e9",
"hash_android_id": "",
"wechat_app_id":"", //微信小游戏上报必填 且必须通过授权
"wechat_openid":"", //微信小游戏上报必填
"oaid":""
},
"action_type": "ACTIVATE_APP", // 必填 行为类型
"action_param": {
"value": 123,
"int_example": 123,
"int_array_example": [
123,
234
],
"string_example": "123",
"string_array_example": [
"123",
"234",
"abc"
]
}
}
]
}'
若您在创建转化时没有填写点击监测链接,则应采用如下上报协议
curl -X POST \
http://tracking.e.qq.com/conv \
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d '{
"actions":[
{
"outer_action_id": "outer_action_identity", // 选填,若上报可能有重复请填写该id,系统会根据该ID进行去重,详见FAQ
"action_time": 1492998081,
"user_id": { // user_id,可采集到的设备标识
"hash_imei": "f9efca36a3c30e1cf28170d86ecbf5e9",
"hash_idfa": "f9efca36a3c30e1cf28170d86ecbf5e9",
"hash_android_id": "",
"wechat_app_id":"", //微信小游戏上报必填 且必须通过授权
"wechat_openid":"", //微信小游戏上报必填
"oaid":""
},
"action_type": "ACTIVATE_APP", // 必填 行为类型
"trace": {
"click_id":"abc" // 必填 click_id
},
"action_param": {
"value": 123,
"int_example": 123,
"int_array_example": [
123,
234
],
"string_example": "123",
"string_array_example": [
"123",
"234",
"abc"
]
}
}
]
}'
3. 观察转化数据上报效果
当请求API后,收到返回值为{"code":0, "message":""} 表示广告平台成功收到数据
可以从投放端报表中,进一步观察和监控数据上报表现和投放效果。
注意:
微信小游戏的转化数据上报必须填写创建转化时填写的小游戏APPID (以wx开头)和产生转化行为的用户openid。
上报地址__CALLBACK__是直接从点击转发出去的__CALLBACK__字段中URLDecode获得,上面示例中的url&path是示例请求,请勿直接上报。
二. QQ小游戏转化数据上报说明及示例
QQ小游戏的API自归因仍然采用旧链路的数据源上报方式。QQ小游戏统一采用点击归因口径。上报示例如下:
curl -X POST \
‘https://api.e.qq.com/v1.1/user_actions/add?access_token=<your_access_token>×tamp=<timestamp>&nonce=<nonce>‘ \ //MKT api 请求通用参数 请参考https://developers.e.qq.com/docs/start/request#a5
-H ‘Content-Type: application/json’ \
-d ‘{
“account_id”: “<your_account_id>“, //必填 上报数据源对应账号
“user_action_set_id”: <your_user_action_set_id>, //必填 上报数据源
“actions”: [
{
“action_time”: <action_timestamp>, //转化行为发生的时间戳
“action_type”: “RESERVATION”, // 必填 行为类型
“trace”: {
“click_id”: “<CLICK_ID>“
}
}
]
}’
三. 确定行为类型
在数据上报接口的必填字段action_type中,填写需要上报的转化行为类型。
常用的小游戏行为类型请见下表,完整转化行为请参考 Action_type标准行为类型枚举
行为名称 | ActionType | 数据指标 | 说明 |
---|---|---|---|
付费 | PURCHASE | 小游戏付费次数 小游戏付费金额(元) | 用户在小游戏中发生购买道具等付费行为 |
次留 | START_APP | 小游戏次留人数 | 用户首次进入小游戏后,次日再次进入小游戏 |
关键页面访问 | / | 停留大于30s人数 | 注册用户停留大于30s,数据由小游戏平台上报,无需广告主回传 |
小游戏创角 | CREATE_ROLE | 小游戏创角人数 | 广告主自定义的小游戏内角色创建行为 |
参数名 | 类型 | 描述 | 是否必填 | 取值范围 | 备注 |
---|---|---|---|---|---|
value | int | 订单价值,单位:分 | 否 | — | 体现转化带来的价值,在上报COMPLETE_ORDER或PURCHASE行为时可选填 |
object | string | 行为对象 | 否 | ^.{0,200}$ | 在上报VIEW_CONTENT行为时参数填写为object=product,表示上报的是商品页面浏览行为 |
错误码 | 中文提示 | 英文提示 |
20001 | 回调url内容错误 | CB_CONTENT_ERROR |
20002 | 没有与转化ID对应的转化规则 | CONV_ID_ILLEGAL |
20003 | 无效数据源ID | ACTION_SET_ID_ABNORMAL |
20004 | 无效账户ID | ACCOUNT_ID_ABNORMAL |
20005 | 编码base64密钥失败 | ENCODE_B64_KEY_ERROR |
20006 | 回调url base64解码失败 | DECRYPT_B64_CB_ERROR |
30000 | Api访问失败 | API_ERROR |
1. 上报行为如何自定义去重?
可以在actions内加入outer_action_id参数进行自定义去重。
参数名 | 类型 | 说明 | 描述 |
---|---|---|---|
outer_action_id | 去重标识,字段长度最小1字节,最大长度255字节,且只能为数字,字母,下划线,连接符组成 | 平台会基于user_action_set_id,outer_action_id和action_type三个字段做去重 ,如果历史上报数据中存在某条数据的这三个字段与当前上报数据完全一样的,则当前数据会被过滤掉 |