# 添加有数数据源
此接口是后端数据使用接口上报的第一步。
您可将有数数据源dataSourceId
理解为数据的集合,它随着后端上报,存于每一条数据中。腾讯有数数据接入于 2021 年 4 月 29 日完成了对dataSourceId
的升级,目前支持商品数据“一次对接多次应用,一份数据多处复用”的使用效果,支持的应用范围包括 DPA 广告、品牌专区等应用,并将不断扩展。
# 测试环境
# 请求地址
域名/data-api/v1/data_source/add
# 请求方法
POST
# 请求参数
参数名 | 样例 | 描述 |
---|---|---|
app_id | abc | 分配的app_id |
nonce | 61794670f155b | 随机字符串 |
sign | sha256 | 签名算法 |
timestamp | 1569232087 | 请求时间戳(秒级) |
signature | aee30792812d7b09ba7d3aa67c24e16c6a7ea81282ac728ad5966dd1b3eef6d5 | 签名结果 |
# 请求体类型
application/json
# 请求体参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
merchantId | string | Y | 商家 id,有数提供 |
# 请求体示例
POST {{host}}/data-api/v1/data_source/add?app_id=abc&nonce=61794670f155b&sign=sha256×tamp=1569232087&signature=aee30792812d7b09ba7d3aa67c24e16c6a7ea81282ac728ad5966dd1b3eef6d5
Content-Type: application/json
{
"merchantId": "xxxx"
}
# 应答体字段
名称 | 类型 | 描述 |
---|---|---|
retcode | integer | 返回码 |
errmsg | string | 错误信息 |
data | json object | 响应内容 |
dataSource | DataSource | 有数数据仓库 |
id | string | 有数数据仓库 ID |
merchantId | string | 有数商家 ID |
# 应答体示例
{
"retcode": 0,
"errmsg": "",
"data": {
"dataSource": {
"id": "10001",
"merchantId": "40"
}
}
}
创建接口,返回dataSource Object。
# 生产环境
# 情况1:已有 1 个数据源
您可登录 DataNexus (opens new window) <数据管理>-<数据源管理>-<接口数据源> 查看是否已有数据源,如下图,如有可直接使用。
# 情况2:已有多个数据源
如有多个历史数据,可使用”已授权应用“的数据源ID,如下图,选择第一行的数据源ID使用。
# 情况3:没有数据源
请求生产环境的 域名/data-api/v1/data_source/add ,生成 1 个新的数据源。
# 常见FAQ
问:关于dataSourceId
,4 月 29 日和之前相比,变化点有哪些?
答:变化点如下:
旧(2021 年 4 月 29 日之前) | 新(2021 年 4 月 29 日之后) |
---|---|
每个接口都需创建 1 个 dataSourceId | 赋予dataSourceId 业务属性,dataSourceId 无需按照接口创建,而是业务场景需要创建,即假设您只需接入有数,所有接口可共用 1 个dataSourceId |
每个接口请求时,都需要使用对应接口的dataSourceId ,否则会报错 | 去掉接口dataSourceType 和dataSourceId 的关联关系,不同接口使用同一个 dataSourceId ,不会报错。 |
问:已接入腾讯有数,这次dataSourceId
的升级有兼容旧方法吗?如何判断自己是否需要调整代码呢?
答:情况如下:
情况一:我是品牌方,已完成有数接入。
获取数据仓库兼容旧方法,不影响您当前使用,目前无需调整。
情况二:我是服务商,已完成有数接入,但我的接入流程已标准化部署,后续还将有新商家接入有数。
请您按文档调整为最新方案。
问:已接入腾讯有数,如何调整为最新方案?
答:修改点如下:
请求时去掉dataSourceType
,即可完成该商家的dataSourceId
创建。
请求时去掉dataSourceType=0&merchantId=1&
部分,可返回该商家下的所有dataSourceId
,任一使用 1 个dataSourceId
即可,为方便处理,您可固定使用第 1 个返回的dataSourceId
。
问:我已创建多个dataSourceId
,请求 data_source/get 时dataSourceId
,有数返回给我的dataSourceId
顺序是怎样的?我每次请求时,返回的会保持一致吗?
答:会保持一致,且您新增的的会排在最后。
问:创建数据仓库时返回retcode: 16
errmsg: data_source_already_exist
,该如何处理?
答:该返回代表该接口已创建过数据仓库,请使用获取有数数据仓库接口获取已创建好的 dataSourceId 。
更多疑问,可前往常见问题清单。