tencent cloud

移动推送

产品动态
公告
产品功能动态
Android SDK 发布动态
iOS SDK 发布动态
macOS SDK 发布动态
产品简介
产品概述
产品优势
应用场景
全球化部署
购买指南
价格总览
购买指引
计费模式
免费试用
欠费说明
快速入门
创建产品和应用
Android 快速接入
iOS 快速接入
创建推送任务
查询推送记录
推送测试方法指引
产品限制说明
操作指南
推送管理
推送高级功能
实践教程
iOS 平台角标功能实践
API 文档
简介
API 概览
调用方式
推送相关接口
标签相关接口
账号相关接口
统计相关接口
用户属性相关接口
服务端错误码
服务端 SDK
API(Java)
SDK 文档
Android 接入指南
iOS 接入指南
客户端集成插件
macOS接入指南
用户及权限
快速入门配置
进阶自定义配置
资源标签
服务协议
服务等级协议
开发者协议
常见问题
iOS 常见问题
Android 常见问题
Flutter 常见问题
其他问题
移动推送政策
移动推送隐私协议
TPNS 数据处理和安全协议
Developer Agreement
联系我们
词汇表

标签绑定与解绑

PDF
聚焦模式
字号
最后更新时间: 2024-01-17 14:24:51

接口说明

请求方式:POST。
服务地址/v3/device/tag
接口服务地址与服务接入点一一对应,请选择与您的应用服务接入点对应的 服务地址
接口功能: Tag API 是所有 tag 接口的统称。Tag API 有多种设置、更新、删除接口,具体的接口见下文。 标签功能的使用场景可参考文档 标签功能使用说明

参数说明

请求参数

参数名
类型
是否必需
参数说明
operator_type
Integer
操作类型: 1 - 增加单个 tag,对单个 token 而言 2 - 删除单个 tag,对单个 token 而言 3 - 增加多个 tag,对单个 token 而言 4 - 删除多个 tag,对单个 token 而言 5 - 删除所有标签,对单个 token 而言 6 - 标签覆盖接口(支持多个标签或自定义类标签覆盖),对单个 token 而言 (此接口要清除历史标签之后,才开始设置新的标签,所以针对单个相同 token 的调用,需要间隔一段时间(建议大于1s),否则可能造成更新失败) 7 - 添加单个 tag,对多个 token 而言 8 - 删除单个 tag,对多个 token 而言 9 - 批量添加标签(每次调用最多允许设置20对,每个对里面标签在前,token 在后) 10 - 批量删除标签(每次调用最多允许设置20对,每个对里面标签在前,token 在后)
token_list
Array
设备列表:
operator_type = 1,2,3,4,5,6,7,8时,必填
operator_type = 1,2,3,4,5,6时如果该参数包含多个 token 只会设置第一个 token
格式 eg:["token1","token2"]
列表最大不能超过500个值
token 字符串长度不能超过36
tag_list
Array
标签列表:
operator_type = 1,2,3,4,6,7,8时,必填,operator_type = 5时忽略
operator_type = 1,2,7,8 时,如果该参数包含多个 tag 时,如果只是对单个 tag 操作,则只会设置第一个 tag
格式 eg:["tag1","tag2"]
列表最大不能超过500个值
tag 字符串长度不能超过50
tag_token_list
Array
标签、设备对应列表:
operator_type =9,10时,必填
格式 eg: [{"tag":"tag123", "token":"token123"}]
每个对里面标签在前,token 在后
列表最大不能超过500个值
tag 字符串长度不能超过50
token 字符串长度不能超过36
单个应用最多可以有10000个自定义Tag, 每个设备Token最多可绑定100个自定义Tag,如需提高该限制,请与我们 客服联系,每个自定义Tag可绑定的设备 token 数量无限制。
如果仅单次而非连续的标签设置接口调用,则接口调用方式无限制。
如果为连续标签设置接口调用,则需要注意如下:
如果需要对超过10个标签或超过10个 token 的连续标签设置接口调用时,建议使用批量接口,但为保证标签操作的正确,建议两次接口调用的时间间隔不低于1s。
如果调用非批量接口,则在明确拿到移动推送服务器的返回值时,再进行下次非批量标签接口调用,不建议使用多线程异步同时进行标签接口调用。
英文冒号“:”是移动推送后台的关键字,用作标签的分类,如果设置标签时带了“:”,则将第一个“:”前面的字符串作为这个标签的类名,仅为了用于 operator_type 为6时按类进行标签覆盖的场景,如设备原来的标签为 level:1, level:2, male 这3个时,此种方式可直接用 level:3标签覆盖 level 类标签下的 level:1和 level:2标签,而无需先逐个解绑 level:1和 level:2后再绑定 level:4标签,详情见下面请求示例中 operator_type 为6的示例。

应答参数

字段名
类型
是否必填
注释
ret_code
Integer
错误码,详细参照错误码对照表
err_msg
String
请求出错时的错误信息
result
String
请求正确时:
若有额外数据要返回,则结果封装在该字段的 json 中
若无额外数据,则可能无此字段

示例说明

标签绑定解绑请求示例

增加单个 tag1,对单个 token1
{
"operator_type": 1,
"tag_list": [
"tag1"
],
"token_list": [
"token1"
]
}
删除单个 tag1,对单个 token1
{
"operator_type": 2,
"tag_list": [
"tag1"
],
"token_list": [
"token1"
]
}
增加多个 tag1、tag2,对单个 token1
{
"operator_type": 3,
"tag_list": [
"tag1",
"tag2"
],
"token_list": [
"token1"
]
}
删除多个 tag1、tag2,对单个 token1
{
"operator_type": 4,
"tag_list": [
"tag1",
"tag2"
],
"token_list": [
"token1"
]
}
删除所有标签,对单个 token1
{
"operator_type": 5,
"tag_list": [
"tag1",
"tag2"
],
"token_list": [
"token1"
]
}
标签覆盖自定义类标签,对单个 token1
{
"operator_type": 6,
"tag_list": [
"test:2",
"level"
],
"token_list": [
"token1"
]
}
说明:
若有其中一个或多个标签不带“:”号,则将 test:2 和 level 标签覆盖 token1 的全部自定义标签。
批量覆盖自定义类标签,对单个 token(此接口只覆盖到自定义类标签,而不是全部覆盖)
{
"operator_type": 6,
"tag_list": [
"test:2",
"level:2"
],
"token_list": [
"token1"
]
}
说明:
若全部标签都带“:”,由于第一个“:”前面的字符串为标签的类,则仅会覆盖设备对应相同类的标签,如test:2覆盖test:*, level:2覆盖level:*,不会影响其它标签。
为多个 token1、token2 添加单个 tag1
{
"operator_type": 7,
"tag_list": [
"tag1"
],
"token_list": [
"token1",
"token2"
]
}
多个 token1、token2 删除单个 tag1
{
"operator_type": 8,
"tag_list": [
"tag1"
],
"token_list": [
"token1",
"token2"
]
}
批量设置标签
{
"operator_type": 9,
"tag_token_list": [
{
"tag": "tag1",
"token": "token1"
}
]
}
批量删除标签,为 tag1、tag2、tag3 删除标签
{
"operator_type": 10,
"tag_token_list": [
{
"tag": "tag1",
"token": "token1"
},
{
"tag": "tag2",
"token": "token2"
},
{
"tag": "tag3",
"token": "token3"
}
]
}

标签设置请求示例

POST /v3/device/tag HTTP/1.1
Host: api.tpns.tencent.com
Content-Type: application/json
Authorization: Basic YTViNWYwNzFmZjc3YTplYTUxMmViNzcwNGQ1ZmI1YTZhOTM3Y2FmYTcwZTc3MQ==
Cache-Control: no-cache
Postman-Token: 4b82a159-afdd-4f5c-b459-de978d845d2f
{
"operator_type": 1,
"tag_list": [
"tag1"
],
"token_list": [
"token1"
]
}

标签设置应答示例

{
"seq": 0,
"ret_code": 0
}


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈