sync: 同步文档 v1.0.4 并脱敏

This commit is contained in:
MiFaZhan
2026-10-29 15:45:46 +08:00
parent c49b2bf404
commit 3ab3682d14
138 changed files with 514 additions and 477 deletions
+5 -5
View File
@@ -8,18 +8,18 @@ outline: deep
本文档收录历史 `/route/open/*` 路径下仍在维护的兼容接口。鉴权通过请求体 `verify` 中的 `appId`、`password` 和 `timeStamp` 完成;`sign` 为历史兼容字段,当前服务不校验。
这些接口由 iotLCM OpenAPI 服务实现并提供,与 V3 接口同域(`apiv3.5iot.cn`),仅请求路径与鉴权方式不同。
这些接口由 iotLCM OpenAPI 服务实现并提供,与 V3 接口同域(`api.example.com`),仅请求路径与鉴权方式不同。
## 服务地址
```text
https://apiv3.5iot.cn
https://api.example.com
```
完整请求 URL:
```text
https://apiv3.5iot.cn/route/open/{接口名}
https://api.example.com/route/open/{接口名}
```
## 统一鉴权
@@ -82,7 +82,7 @@ appId={appId}&password={password}&timeStamp={timeStamp}&key={accessKey}
```java
// 服务器请求地址
protected static String server_Ip = "https://apiv3.5iot.cn/route/open";
protected static String server_Ip = "https://api.example.com/route/open";
// appId
public static String appId = null;
// 密钥密码
@@ -121,7 +121,7 @@ public static void main(String[] args) {
verify.put("sign", getSign(verify, accessKey));
parmap.put("type", "iccid");
parmap.put("cardno", "89860423123123132135");
parmap.put("cardno", "89860400000000002135");
map.put("verify", verify);
map.put("Param", parmap);
+23 -23
View File
@@ -27,12 +27,12 @@ POST /route/open/cardInfo
{
"Param": {
"type": "iccid",
"cardno": "898604F4152391115474"
"cardno": "89860400000000005474"
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -70,10 +70,10 @@ POST /route/open/cardInfo
"result": {
"vid": "3933",
"msisdn": "1441543605474",
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"imsi": "460087436015474",
"imei": "",
"deptName": "山东云则",
"deptName": "示例企业",
"statusId": 4,
"packageId": "yd-100m-3y",
"packageName": "每月100m3年",
@@ -107,12 +107,12 @@ POST /route/open/simDataUsage
```json
{
"Param": {
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -156,13 +156,13 @@ POST /route/open/simDataUsageMonthly
```json
{
"Param": {
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"dateTime": "202509"
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -205,12 +205,12 @@ POST /route/open/simStatus
```json
{
"Param": {
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -253,12 +253,12 @@ POST /route/open/simSession
```json
{
"Param": {
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -328,14 +328,14 @@ POST /route/open/queryCardInfoList
{
"Param": {
"iccid": [
"898604F4152391115473",
"898604F4152391115474"
"89860400000000005473",
"89860400000000005474"
]
},
"verify": {
"timeStamp": "1784097284347",
"password": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc",
"appId": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"password": "example-password",
"appId": "example-app-id",
"sign": ""
}
}
@@ -363,7 +363,7 @@ POST /route/open/queryCardInfoList
"message": "",
"result": [
{
"iccid": "898604F4152391115473",
"iccid": "89860400000000005473",
"activateDate": "2023-05-11",
"dueExpireTime": "",
"imei": "",
@@ -374,7 +374,7 @@ POST /route/open/queryCardInfoList
"status": 4
},
{
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"activateDate": "2026-06-01",
"dueExpireTime": "2029-01-31 23:59:59",
"imei": "",
+9 -9
View File
@@ -1,31 +1,31 @@
---
title: 白名单转发
description: 通过 apiv3.5iot.cn 访问中国移动物联网能力开放平台 V5 接口
description: 通过 api.example.com 访问中国移动物联网能力开放平台 V5 接口
outline: deep
---
# 白名单转发
本目录说明如何通过 `apiv3.5iot.cn` 访问中国移动物联网能力开放平台 V5 接口。平台仅提供安全代理转发,不改变中国移动 V5 接口的请求方法、请求参数、响应结构和业务语义。
本目录说明如何通过 `api.example.com` 访问中国移动物联网能力开放平台 V5 接口。平台仅提供安全代理转发,不改变中国移动 V5 接口的请求方法、请求参数、响应结构和业务语义。
## 服务地址
客户侧统一使用:
```text
https://apiv3.5iot.cn
https://api.example.com
```
V5 接口的请求路径保持与中国移动官方接口一致,将官方域名替换为平台域名即可:
```text
https://apiv3.5iot.cn/v5/{官方接口路径}
https://api.example.com/v5/{官方接口路径}
```
例如,官方接口路径为 `/v5/ec/query/sim-basic-info` 时,客户侧请求路径为:
```http
POST https://apiv3.5iot.cn/v5/ec/query/sim-basic-info
POST https://api.example.com/v5/ec/query/sim-basic-info
```
平台会将该请求转发至:
@@ -64,7 +64,7 @@ https://api.iot.10086.cn/v5/ec/query/sim-basic-info
### 单卡基本信息查询
```http
POST https://apiv3.5iot.cn/v5/ec/query/sim-basic-info
POST https://api.example.com/v5/ec/query/sim-basic-info
```
请求参数:
@@ -82,8 +82,8 @@ POST https://apiv3.5iot.cn/v5/ec/query/sim-basic-info
```json
{
"transid": "113712264334542026051515200001000",
"token": "c5e1cad63e654237052be9908f989bf3515b3bdaeca904dd2e904061b65e8153",
"iccid": "898608501624D0000009"
"token": "example-access-token",
"iccid": "89860800000000000009"
}
```
@@ -110,7 +110,7 @@ POST https://apiv3.5iot.cn/v5/ec/query/sim-basic-info
{
"msisdn": "1442206200009",
"imsi": "460240406200009",
"iccid": "898608501624D0000009",
"iccid": "89860800000000000009",
"activeDate": "2025-03-26 15:49:50",
"openDate": "2025-03-13 16:52:10",
"remark": ""
+6 -6
View File
@@ -11,10 +11,10 @@ outline: deep
## 服务地址
```text
https://apiv3.5iot.cn
https://api.example.com
```
HTTP(`http://apiv3.5iot.cn`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
HTTP(`http://api.example.com`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
## 接口信息
@@ -35,7 +35,7 @@ POST /openapi/v3/query/operator-token
```json
{
"appId": "7s9g2p5n8z1d4m6r",
"appId": "example-app-id",
"chanKey": "channel_010"
}
```
@@ -52,7 +52,7 @@ POST /openapi/v3/query/operator-token
"data": {
"chanAlias": "中国移动物联网",
"chanKey": "channel_010",
"accessToken": "c5e1cad63e654237052be9908f989bf3515b3bdaeca904dd2e904061b65e8153",
"accessToken": "example-access-token",
"tokenExpire": "2026-09-09 16:00:00"
},
"error": null
@@ -76,10 +76,10 @@ POST /openapi/v3/query/operator-token
```bash
curl --request POST \
--url https://apiv3.5iot.cn/openapi/v3/query/operator-token \
--url https://api.example.com/openapi/v3/query/operator-token \
--header 'Content-Type: application/json' \
--data '{
"appId": "7s9g2p5n8z1d4m6r",
"appId": "example-app-id",
"chanKey": "channel_010"
}'
```
+19 -11
View File
@@ -9,15 +9,23 @@ outline: deep
## 服务地址
```text
https://apiv3.5iot.cn
https://api.example.com
```
HTTP(`http://apiv3.5iot.cn`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
HTTP(`http://api.example.com`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
## 鉴权
先调用 `/openapi/v3/query/token` 获取访问令牌,再在请求头中传入 `X-Access-Token`。请求体中的 `appId` 必须与凭证所属客户一致。
## 标准入口与兼容入口
新接入统一使用本文的 `/openapi/v3/change/*` 路径。原 `/openapi/v3/common/*` 前缀已停止提供,调用返回 `404`,请改用 `/change` 下的对应接口。
批量续费使用 `/change/batch-sim-subscribe`;历史 `/change/renew` 接收 `cards[]`,允许每张卡携带套餐信息,作为兼容入口保留。两者共用续费实现。
批量变更达量断网使用 `/change/batch-sim-traffic-cutoff`。原 `/change/traffic-cutoff-config` 不再对外提供,请改用标准入口——两者请求参数完全一致,迁移无需改动报文体。`/query/traffic-cutoff-config` 仅查询配置。
## 统一返回结构
```json
@@ -63,7 +71,7 @@ POST /openapi/v3/change/sim-subscribe
```json
{
"appId": "CUS-202608-0001",
"iccid": "89860401785462635152",
"iccid": "89860400000000005152",
"packageId": "001",
"validity": 1,
"remark": "客户单卡续费"
@@ -95,7 +103,7 @@ POST /openapi/v3/change/sim-subscribe
"data": {
"orderId": "54",
"orderSn": "REN20260910153546001000001",
"iccid": "89860401785462635152",
"iccid": "89860400000000005152",
"planName": "中移-1G",
"effectiveType": "immediate",
"effectiveDate": "2026-09-10 15:35:46",
@@ -116,7 +124,7 @@ POST /openapi/v3/change/sim-subscribe
"data": {
"orderId": "0",
"orderSn": "",
"iccid": "89860401785462635152",
"iccid": "89860400000000005152",
"planName": "",
"effectiveType": "",
"effectiveDate": "",
@@ -157,7 +165,7 @@ POST /openapi/v3/change/sim-traffic-cutoff
```json
{
"appId": "CUS-202608-0001",
"iccid": "89860401785462635152",
"iccid": "89860400000000005152",
"trafficCutoffStatus": 1,
"trafficCutoffThreshold": 1024,
"remark": "客户开启达量断网"
@@ -186,8 +194,8 @@ POST /openapi/v3/change/sim-traffic-cutoff
"message": "",
"data": {
"success": true,
"iccid": "89860401785462635152",
"msisdn": "14162635152",
"iccid": "89860400000000005152",
"msisdn": "14100005152",
"imsi": "460045462635152",
"trafficCutoffStatus": 1,
"trafficCutoffThreshold": 1024,
@@ -206,7 +214,7 @@ POST /openapi/v3/change/sim-traffic-cutoff
"message": "",
"data": {
"success": false,
"iccid": "89860401785462635152",
"iccid": "89860400000000005152",
"trafficCutoffStatus": 1,
"trafficCutoffThreshold": 1024,
"trafficCutoffThresholdUnit": "MB",
@@ -249,7 +257,7 @@ POST /openapi/v3/change/batch-sim-subscribe
"appId": "CUS-202608-0001",
"cards": [
{
"iccid": "89860401785462635152"
"iccid": "89860400000000005152"
}
],
"packageId": "001",
@@ -313,7 +321,7 @@ POST /openapi/v3/change/batch-sim-traffic-cutoff
"appId": "CUS-202608-0001",
"cards": [
{
"iccid": "89860401785462635152"
"iccid": "89860400000000005152"
}
],
"trafficCutoffStatus": 1,
+5 -3
View File
@@ -9,10 +9,10 @@ outline: deep
## 服务地址
```text
https://apiv3.5iot.cn
https://api.example.com
```
HTTP(`http://apiv3.5iot.cn`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
HTTP(`http://api.example.com`)仅为存量兼容保留,不做自动跳转,新接入请使用 HTTPS。
## 统一返回结构
@@ -76,4 +76,6 @@ X-Access-Token: {accessToken}
⚠️ **不要把 `appKey`(API 账号标识)当成 `appId` 使用。** `appKey` 只用于获取 token。
:::
权限控制:调用接口需具备对应接口资源的访问权限,权限与 API 账号所属权限组关联。未配置资源时,按当前开放策略放行。
权限控制:调用接口需具备对应接口资源的访问权限,权限与 API 账号所属权限组关联。未登记资源、资源停用、账号未授权均拒绝访问,返回 `10014`;权限数据查询异常返回 `10016`(系统侧故障,不是授权问题)。
原 `/openapi/v3/common/*` 前缀已停止提供,调用返回 `404`,请使用 `/openapi/v3/change/*` 下的对应接口。
+30 -30
View File
@@ -32,7 +32,7 @@ X-Access-Token: {accessToken}
```json
{
"appId": "CUS-202601-0001",
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
}
```
@@ -90,9 +90,9 @@ X-Access-Token: {accessToken}
"code": 0,
"message": "",
"data": {
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"imei": "",
"username": "山东云则",
"username": "示例企业",
"location": "370100000000",
"planCategory": "移动小流量",
"currentPlanName": "每月100m3年",
@@ -162,7 +162,7 @@ X-Access-Token: {accessToken}
```json
{
"appId": "CUS-202601-0001",
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
}
```
@@ -184,7 +184,7 @@ X-Access-Token: {accessToken}
"code": 0,
"message": "",
"data": {
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"lifeCycle": 2,
"lifeCycleName": "已激活"
},
@@ -225,7 +225,7 @@ POST /openapi/v3/query/sim-limit
```json
{
"appId": "CUS-202601-0001",
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
}
```
@@ -272,7 +272,7 @@ POST /openapi/v3/query/sim-imei
```json
{
"appId": "CUS-202601-0001",
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
}
```
@@ -315,7 +315,7 @@ POST /openapi/v3/query/sim-usage
```json
{
"appId": "CUS-202601-0001",
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
}
```
@@ -371,13 +371,13 @@ X-Access-Token: {accessToken}
"appId": "CUS-202601-0001",
"cards": [
{
"iccid": "898604F4152391115473"
"iccid": "89860400000000005473"
},
{
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
{
"iccid": "8986112223600594371"
"iccid": "8986110000000004371"
}
]
}
@@ -414,19 +414,19 @@ X-Access-Token: {accessToken}
"items": [
{
"matched": true,
"iccid": "898604F4152391115473",
"iccid": "89860400000000005473",
"lifeCycle": 2,
"lifeCycleName": "已激活"
},
{
"matched": true,
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"lifeCycle": 2,
"lifeCycleName": "已激活"
},
{
"matched": true,
"iccid": "8986112223600594371",
"iccid": "8986110000000004371",
"lifeCycle": 2,
"lifeCycleName": "已激活"
}
@@ -467,13 +467,13 @@ X-Access-Token: {accessToken}
"appId": "CUS-202601-0001",
"cards": [
{
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
{
"iccid": "898604F4152391115473"
"iccid": "89860400000000005473"
},
{
"iccid": "8986112223600594371"
"iccid": "8986110000000004371"
}
]
}
@@ -510,19 +510,19 @@ X-Access-Token: {accessToken}
"items": [
{
"matched": true,
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"useUnit": "MB",
"useAmount": 0.875
},
{
"matched": true,
"iccid": "898604F4152391115473",
"iccid": "89860400000000005473",
"useUnit": "MB",
"useAmount": 12.5
},
{
"matched": true,
"iccid": "8986112223600594371",
"iccid": "8986110000000004371",
"useUnit": "MB",
"useAmount": 36.25
}
@@ -563,10 +563,10 @@ X-Access-Token: {accessToken}
"appId": "CUS-202601-0001",
"cards": [
{
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
{
"iccid": "898604F4152391115473"
"iccid": "89860400000000005473"
},
{
"msisdn": "1441543605474"
@@ -605,12 +605,12 @@ X-Access-Token: {accessToken}
"items": [
{
"matched": true,
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"imei": ""
},
{
"matched": true,
"iccid": "898604F4152391115473",
"iccid": "89860400000000005473",
"imei": "865466070817587"
},
{
@@ -651,13 +651,13 @@ POST /openapi/v3/query/traffic-cutoff-config
"appId": "CUS-202601-0001",
"cards": [
{
"iccid": "898604F4152391115474"
"iccid": "89860400000000005474"
},
{
"iccid": "898604F4152391115475"
"iccid": "89860400000000005475"
},
{
"iccid": "898604F4152391115476"
"iccid": "89860400000000005476"
}
],
"includeUsage": true
@@ -699,7 +699,7 @@ POST /openapi/v3/query/traffic-cutoff-config
"items": [
{
"matched": true,
"iccid": "898604F4152391115474",
"iccid": "89860400000000005474",
"trafficCutoffStatus": 0,
"trafficCutoffStatusName": "未配置",
"trafficCutoffThreshold": 0,
@@ -710,7 +710,7 @@ POST /openapi/v3/query/traffic-cutoff-config
},
{
"matched": true,
"iccid": "898604F4152391115475",
"iccid": "89860400000000005475",
"trafficCutoffStatus": 1,
"trafficCutoffStatusName": "已开启",
"trafficCutoffThreshold": 100,
@@ -721,7 +721,7 @@ POST /openapi/v3/query/traffic-cutoff-config
},
{
"matched": true,
"iccid": "898604F4152391115476",
"iccid": "89860400000000005476",
"trafficCutoffStatus": 2,
"trafficCutoffStatusName": "已关闭",
"trafficCutoffThreshold": 50,
+3 -3
View File
@@ -24,8 +24,8 @@ POST /openapi/v3/query/token
```json
{
"appKey": "b96b84a4d70740c1bfe569a11ca62e219affe3a6",
"appSecret": "588035550bd35c0001fbcda2c4d812ebdebae9763127943f097758e029a0fdbc"
"appKey": "example-app-key",
"appSecret": "example-app-secret"
}
```
@@ -50,7 +50,7 @@ POST /openapi/v3/query/token
"message": "",
"data": {
"appId": "CUS-202601-0001",
"accessToken": "eyJhbGciOiJIUzI1NiJ9.eyJ1IjoiZWE3ZjJiZGY5MjQyNDFkZjg3NGIwZDMzNmZkN2UzMzEiLCJleHAiOjE3ODQ3MDAyODB9.JiYK-CXdXQKKU0UNhNOqKX5Hzyk4lVMtIpunQJDxlBI"
"accessToken": "example-access-token"
},
"error": null
}