Skip to content

AI Cost 事件

X-BytePower-DeviceInfo

X-BytePower-DeviceInfo 是 AI 接口专用的 HTTP 请求 Header,用于携带设备标识和扩展数据。所有 AI 相关的 Client 端(/bp/ai/...)和 Server 端(/bp/server/user/{user_id}/ai/...)接口均支持该 Header。

编码规则

Header 值的编码流程:

  1. 构造 JSON 对象
  2. JSON 序列化(UTF-8)
  3. Base64 编码(标准编码)

Python 示例

python
import json, base64

device_info = {
    "extra_info": "my_custom_data",
    "idfv": "xxxx-xxxx",
}

raw = json.dumps(device_info, separators=(',', ':'), ensure_ascii=False).encode('utf-8')
headers['X-BytePower-DeviceInfo'] = base64.b64encode(raw).decode('utf-8')

支持的字段

字段JSON Key说明
AppsFlyer IDappsflyer_idAppsFlyer 标识
App Instance IDapp_instance_id应用实例 ID
CUIDcuid用户标识
User IDuser_id用户 ID
IDFAidfaiOS 广告标识
IDFVidfviOS 供应商标识
GAIDgaidGoogle 广告 ID
UUIDuuid通用唯一标识
OAIDoaid匿名设备标识
IMEIimei设备 IMEI
Extra Infoextra_info自定义扩展信息

所有字段均为 string 类型,均可按需选填。


数据流转

同步接口

请求时通过 Header 传入,服务端解析后直接随 ai_cost 事件上报。

客户端 → X-BytePower-DeviceInfo Header → 服务端解析 → ai_cost 事件上报

异步接口

请求时通过 Header 传入,服务端将设备信息持久化到 ai_request 记录中。当异步任务完成(Webhook 回调)时,从数据库恢复设备信息,再随 ai_cost 事件上报。

客户端 → Header → 存入 ai_request → Webhook 回调 → 从 DB 恢复 → ai_cost 事件上报

extra_info 字段

extra_infoX-BytePower-DeviceInfo 中的一个字段,最终会作为 ai_cost 事件的扩展数据上报,用于携带客户端自定义的业务信息。

特性

  • 类型为 string,服务端不做任何解析,原样透传至事件系统
  • 如需传递结构化数据(如 JSON),需自行序列化为字符串后传入

传递 JSON 示例

python
device_info = {
    "extra_info": json.dumps({"source": "gallery", "version": 2}),
}

京ICP备19011570号-2