设置渠道关联标识

渠道关联标识是触达通道上的标识值,可作为该通道的触达对象。设置和解绑均基于 EUID 与通道 ID 执行。

完整调用地址由数据中心的 Base URL 与下方接口路径组成。Base URL、API Key 与 API Secret 的获取方式请参见 REST API 概述。

调用验证

EngageLab REST API 采用 HTTP 基本认证 的验证方式:HTTP Header(头)里加 Authorization:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
此代码块在浮窗中显示

上述 base64_auth_string 的生成算法为:base64(api_key:api_secret)

  • Header 名称是 "Authorization",值是 base64 转换过的 "username:password" 对(中间有个冒号)。
  • 在 MA API 的场景里,username 是 APIKey,password 是 APISecret。请在数据来源中添加 API 类型的数据源获得 APIKey 与 API Secret。

设置渠道关联标识

调用地址

POST /v1/user/channel

请求示例

请求头

> POST /v1/user/channel > Content-Type: application/json > Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
              
              > POST /v1/user/channel
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==

            
此代码块在浮窗中显示

请求体

{ "euid": 10362473, "channel_id": 8801, "ma_rid": "1a0018970d1c9f8f8e2", "value": [ "channel_identifier_1", "channel_identifier_2" ] }
              
              {
  "euid": 10362473,
  "channel_id": 8801,
  "ma_rid": "1a0018970d1c9f8f8e2",
  "value": [
    "channel_identifier_1",
    "channel_identifier_2"
  ]
}

            
此代码块在浮窗中显示

请求参数

字段 类型 必填 描述
euid Long 是 用户唯一 ID。必须是当前项目中已存在的用户。
channel_id Long 是 触达通道 ID。必须是当前项目中已存在的通道。
ma_rid String 否 MA Registration ID。传入后,本次写入的渠道标识绑定该 MA RID,并记录其平台;该 MA RID 转移到其他 EUID 时,绑定了它的渠道标识会随之转移。不传、空字符串或只含空白时,本次写入不建立绑定;若本次写入的标识值此前已有绑定,原绑定会被清除。无法从该值解析出平台时,设置失败。
value Array<String> 是 待设置的渠道关联标识值列表。列表不能为空,每项不能为空白。值按原文保存,区分大小写,不会去掉首尾空白。同一次请求中的重复值会去重。

同一 euid + channel_id 下,相同的标识值按本次请求重写:原记录删除后写入新记录,更新时间变为当前时间。本次列表之外的已有标识值保持不变,新值追加保存。

对于 AppPush/WebPush 通道,同一 channel_id 下的同一个渠道标识只允许归属一个 EUID。写入新的 EUID 成功后,系统再从其他仍持有该值的 EUID 移除它。其他通道类型不做这个唯一性换绑。

返回参数

字段 类型 必填 描述
code Int 是 接口调用是否成功,0 表示成功。
message String 是 接口调用结果描述。

成功示例

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
此代码块在浮窗中显示

解绑渠道关联标识

调用地址

POST /v1/user/channel/unbind

请求示例

请求头

> POST /v1/user/channel/unbind > Content-Type: application/json > Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
              
              > POST /v1/user/channel/unbind
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==

            
此代码块在浮窗中显示

请求体

{ "euid": 10362473, "channel_id": 8801, "value": [ "channel_identifier_1", "channel_identifier_2" ] }
              
              {
  "euid": 10362473,
  "channel_id": 8801,
  "value": [
    "channel_identifier_1",
    "channel_identifier_2"
  ]
}

            
此代码块在浮窗中显示

请求参数

字段 类型 必填 描述
euid Long 是 用户唯一 ID。
channel_id Long 是 触达通道 ID。
value Array<String> 是 要解绑的渠道关联标识值列表。每一项必须与已设置的标识值完全一致,区分大小写,不会去掉首尾空白。

解绑按渠道标识值匹配,不按 ma_rid 匹配。解绑请求没有 ma_rid 字段。按 euid + channel_id + value 精确匹配并移除。用户不存在,或该用户下没有完全一致的标识值时,不修改数据,仍返回成功。解绑不校验 channel_id 是否属于当前项目。

返回参数

字段 类型 必填 描述
code Int 是 接口调用是否成功,0 表示成功。
message String 是 接口调用结果描述。

成功示例

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
此代码块在浮窗中显示

错误码

设置接口在业务校验失败时返回下列错误码,HTTP 状态码为 400。响应体里的 message 是英文说明,不是下表中的中文描述。解绑接口只在必填参数不合法或请求体无法解析时返回 55004;用户不存在或标识值不存在时仍返回成功。

错误码 描述 详细说明
55004 业务参数不合法 设置时,channel_id 在当前项目中不存在,响应 message 为 channel_id does not exist in current project: {channel_id}。设置时,ma_rid 无法解析出平台,响应 message 为 ma_rid is invalid。设置和解绑时,必填字段缺失、value 为空或含空白项,以及请求体无法解析(此时 message 为 Invalid request payload format),也返回该错误码。
55108 无效的 EUID 仅设置接口返回。当前项目中不存在该 EUID,响应 message 为 EUID does not exist: {euid}。

失败示例

channel_id 不存在:

{ "code": 55004, "message": "channel_id does not exist in current project: 8801" }
              
              {
  "code": 55004,
  "message": "channel_id does not exist in current project: 8801"
}

            
此代码块在浮窗中显示

ma_rid 无法解析:

{ "code": 55004, "message": "ma_rid is invalid" }
              
              {
  "code": 55004,
  "message": "ma_rid is invalid"
}

            
此代码块在浮窗中显示

EUID 不存在:

{ "code": 55108, "message": "EUID does not exist: 10362473" }
              
              {
  "code": 55108,
  "message": "EUID does not exist: 10362473"
}

            
此代码块在浮窗中显示
Icon Solid Transparent White Qiyu
联系销售