数据标签产品

修订日期: 2025.11.06

1. 接口规范

1.1 公共请求参数

字段名称 字段说明 类型 必填 示例
app_id 平台分配的接入应用ID string Y op1234567723122
timestamp 当前请求时间戳, 单位毫秒 long Y 1570318158852
sign_type 签名算法 string N 默认MD5
sign 请求数据签名 string Y C65FCAC2D3FB5E2D3D4AD93DD20C8C39

1.2 公共应答参数

字段名称 字段说明 类型 必填 备注
code 应答状态码 string Y 在具体接口说明
message 返回描述 string Y 返回描述
hint 返回错误说明 string N 返回错误说明指导
seqno 服务器日志标示 string Y 查日志用到查问题尽量提供这个值
payload 应答内容 object N 请求内容
data_node 服务节点 string N 例: CN-South
time_cost 处理耗时, 单位秒 int N 例: 32

1.3 签名算法

参数排序: 按参数名 ASCII 码升序排列。
拼接明文: 格式为 key1=value1&key2=value2... 。
计算签名: sign = stringA + "&app_secret=" + appSecret,取 MD5(32位不区分大小写)。
注意事项:

  • 空值参数不参与签名。
  • 参数名区分大小写。
  • sign参数不参与签名验证。

签名示例:

A. 密钥参数:
app_id=op88641899bxxx
app_secret=XXXX

B. 请求参数:
park_uuid=40e06b24-7320-4a61-8d97-7ebccb364a87
plate=粤B660PP
enter_time=1563242533431
car_type=1

C. 参数排序后字符串拼接:
app_id=op88641899bxxx&car_type=1&enter_time=1563242533431&park_uuid=40e06b24-7320-4a61-8d97-7ebccb364a87&plate=粤B660PP&sign_type=MD5&timestamp=1563242932357&app_secret=XXX
MD5签名结果:
8f0e8b809ac986be750e72540b1e8c6b

JAVA代码参考:

String appId = "opxxxxx";
String appSecret = "XXXXX";

Map<String, String> params = new TreeMap<>();
params.put("app_id",appId);
params.put("key_a","val_a");
params.put("key_b","val_b");
...

StringBuilder builder = new StringBuilder();
for (String key : params.keySet()) {
    builder.append(key + "=" + map.get(key) + "&");
}

String encryptStr = builder.toString() + "app_secret=" + appSecret;
String sign = MD5.encryptHEX(encryptStr);

String paramStr= builder.toString()+"sign="+sign;
String url ="https://api.4pyun.com/gate/1.0/xxxxx?"+ paramStr;

Response response = Request.Get(url).execute();

2. 接口定义

2.1 用户标签查询接口

GET /gate/1.0/dataware/user/tags
根据提供的检索参数以及数据类型,返回相关类型的标签数据

说明:
1. 参数`mobile`/`plate`/`user_id`至少传入一个。
2. 传递参数`user_id`的时候`user_type`也必须传递!

请求参数

字段名称 字段说明 类型 必填 示例
category 标签类型 string Y d52ca138-3843-4b14-ae6f-10e4a72e3ed2
user_id 检索参数 string N fc6d149cdd0d46da3be3a5cdd69c70d9
user_type 检索参数类型 string N MOBILE-手机号
PLATE-车牌号码
mobile 手机号码 string N DA283E75823102A40950EA07D7B483F9A12D4140B9C35EB72A95C9C604870635
plate 车牌号码 string N DA283E75823102A40950EA07D7B483F9A12D4140B9C35EB72A95C9C604870635
encrypt_type 传入参数mobile/plate/user_id的加密方式 string Y AES-AES加密
- 算法AES/CBC/NoPadding
- 向量IV=0x00000000000000000000000000000000
- 加密结果取HEX
MD5-明文MD5小写HEX
SHA256-明文SHA256小写HEX
nonce 一次请求标识 string N 用于区分不同请求

AES示例:

参数:
KEY=1234567890ABCDEF
PLAIN=13800138000
IV=0x00000000000000000000000000000000
CIPHER=AES/CBC/NoPadding
结果:
24E1F7641D992C58597DEEC09DFDE397

MD5:

参数:
PLAIN=13800138000
结果:
7945bd83237335e5376ff44d62e4f0ae

SHA256:

参数:
PLAIN=13800138000
结果:
a6942f9771d67f34034d2f1926988ed3fad3bf1b4e7cedb9a31f31398dea43bc

请求示例

{
  "app_id": "op1234567723122",
  "sign": "C65FCAC2D3FB5E2D3D4AD93DD20C8C39",
  "mobile": "24E1F7641D992C58597DEEC09DFDE397",
  "plate": "30D28C009196C158EDBE716F0B67D3B1",
  "encrypt_type": "AES",
  "category": "d52ca138-3843-4b14-ae6f-10e4a72e3ed2",
  "nonce": "EezacaeKo5ne0vee7QueeB8x"
}

应答状态码

状态码 说明
1001 标签已查得
1002 标签未查得
1401 数据产品无权限
1403 请求应用无权限
1500/其他 接口处理异常

应答参数

当返回状态码为`1001`时返回该数据集合
字段名称 字段说明 类型 必填 备注
tag 应答内容 array(tag) Y 查得标签集合

对象tag定义

参数名 类型 说明
key string 标签KEY, 定义参考
value string 标签数值
description string 标签描述说明

应答应答

成功

{
  "code" : "1002",
  "data_node" : "CN-South\/HS2-1",
  "payload" : {
    "tag" : [
      {
        "key": "x_1",
        "value": "321",
        "description": "This is the description of x_1."
      }
    ]
  },
  "seqno" : "2b58040f97a2c88695636d4d44c9b7b2",
  "time_cost" : 7
}

失败

{
  "code":"401",
  "message":"签名错误",
  "hint":"检查请求参数是否正确",
  "seqno":"9ce2f9ac8816496d",
  "data_node":"CN-South/HS3-3"
}
© 2025 Shenzhen ChinaRoad Technology Co., Ltd. © All Rights Reserved            UPDATED 2025/11/20 10:27:44

results matching ""

    No results matching ""