AXE模式绑定信息查询接口(v2.0)- QueryAXEBinding(v2.0)
接口功能
该接口用于客户向隐私保护通话平台查询已设置的AXE绑定关系的相关信息。
- 支持基于游标的分页查询单个X号码的所有绑定关系信息。
- 支持查询单条绑定信息。
请求方向
客户应用(客户端) → 隐私保护通话平台(服务端)
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限管理。
URI
GET /rest/caas/extendnumber/v2.0
请求参数
| 参数名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| virtualNum | 否 | String(1-32) | X号码,携带为全局号码格式(包含国家码),并需要把号码中的+号转义为%2B,如:%2B86180****0021。 该参数必须与extendNum同时携带,指定唯一一组绑定关系。 |
| extendNum | 否 | String(1-4) | 分机号E,最大4位,如:1234。 该参数必须与virtualNum同时携带,指定唯一一组绑定关系。 |
| subscriptionId | 否 | String(0-64) | 指定“AXE模式绑定接口”返回的绑定ID查询绑定关系 携带该参数时系统以该参数为准,可不关注virtualNum和extendNum参数。 |
| cursor | 否 | String | 上一次请求返回的nextCusor值,首次请求默认为0000000000000_0。 正则约束:\d{13}_\d{1,20}。 当携带了subscriptionId或virtualNum+extendNum时表示查询单条绑定关系,该参数不生效,无需关注。 |
| limit | 否 | Integer | 查询数量,即每次查询最多返回多少条数据。 取值范围:1~100,默认为50。 当携带了subscriptionId或virtualNum+extendNum参数时,表示查询单条绑定关系,该参数不生效,无需关注。 |
| 参数名称 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| Content-Type | 是 | String | 参数解释: 消息体的类型(格式)。 约束限制: 不涉及。 取值范围: 固定填写为application/json;charset=UTF-8。 默认取值: 不涉及。 |
| Authorization | 是 | String | 固定填写为AKSK realm="SDP",profile="UsernameToken",type="Appkey"。 |
| X-AKSK | 是 | String | 取值为UsernameToken Username="APP_Key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。
|
响应参数
| 参数名称 | 参数类型 | 说明 |
|---|---|---|
| resultcode | String(1-32) | 请求返回的结果码。 |
| resultdesc | String(1-256) | 操作结果描述。 |
| nextCursor | String | 指向下一次请求的游标值cursor,分页查询场景下返回。 |
| limit | Integer | 查询的分页大小,分页查询时返回。 |
| extendNumBinds | List<ExtendNumBind> | X号码绑定关系列表。 |
| 参数名称 | 参数类型 | 说明 |
|---|---|---|
| subscriptionId | String | 绑定ID,唯一标识一组绑定关系。 |
| virtualNum | String | X号码,为全局号码格式(包含国家码),如:+86180****0021。 |
| extendNum | String | 分机号E,最大4位,例如:1234 。 |
| bindNum | String | A号码,填写为全局号码格式(包含国家码),如:+86138****0021 或 +8675528****01。 |
| displayNumMode | String | 非A用户呼叫X时,A用户看到的主显号码。 0:X号码 1:真实主叫号码 |
| recordFlag | String | 录音标识。
|
| recordHintTone | String | 此参数在recordFlag为true时才有效。 此字段携带录音功能的提示音文件名。 |
| callbackTone | String | A呼叫X时,如果不存在回呼记录,则播放该参数指定的语音文件。携带为放音文件名。 |
| callbackNum | String | A呼叫X时,如果不存在回呼记录,则转接到该参数指定的号码。携带为全局号码格式(包含国家码),如:+86180****0021。 |
| timeUnit | String | 时间单位。
|
| bindExpiredTime | Integer | 绑定关系有效时间,单位:由timeUnit控制。 |
| callbackExpiredTime | Integer | 回呼记录有效时间,单位:由timeUnit控制。 |
| userData | String | 用户附属信息。 |
| subscribeTime | String | 绑定时间。 该参数为UTC时间(+8小时为北京时间),时间格式为“yyyy-MM-dd HH:mm:ss”。 |
结果码说明
| 响应码 | 结果码 | 英文描述 | 中文描述 | 处理方法 |
|---|---|---|---|---|
| 200 | 0 | Success. | 成功。 | - |
| 400 | 1023006 | Authorization not contained in the HTTP header. | HTTP消息头未找到Authorization字段。 | 请检查HTTP消息头中是否携带了Authorization字段。 |
| 1023007 | realm not contained in Authorization. | Authorization字段中未找到realm属性。 | 请检查Authorization字段中的是否携带了realm属性。 | |
| 1023008 | profile not contained in Authorization. | Authorization字段中未找到profile属性。 | 请检查Authorization字段中的是否携带了profile属性。 | |
| 1023009 | The value of realm in Authorization must be SDP. | Authorization中realm属性值应该为“SDP”。 | 请检查Authorization字段中的realm属性值是否为“SDP”。 | |
| 1023010 | The value of profile in Authorization must be UsernameToken. | Authorization中profile属性值应该为“UsernameToken”。 | 请检查Authorization字段中的profile属性值是否为“UsernameToken”。 | |
| 1023011 | The value of type in Authorization must be app_key. | Authorization中type属性值应该为“Appkey”。 | 请检查Authorization字段中的type属性值是否为“Appkey”。 | |
| 1023012 | type not contained in Authorization. | Authorization字段中未找到type属性。 | 请检查Authorization字段中是否携带了type属性。 | |
| 1023033 | HTTP header not found X-AKSK field. | HTTP头未找到X-AKSK字段。 | 请检查HTTP消息头中是否携带了X-AKSK字段。 | |
| 1023034 | UserName not contained in X-AKSK. | X-AKSK字段中未找到UserName属性。 | 请检查X-AKSK字段中的是否携带了Username属性。 | |
| 1023035 | Nonce not contained in X-AKSK. | X-AKSK字段中未找到Nonce属性。 | 请检查X-AKSK字段中的是否携带了Nonce属性。 | |
| 1023036 | Created not contained in X-AKSK. | X-AKSK字段中未找到Created属性。 | 请检查X-AKSK字段中的是否携带了Created属性。 | |
| 1023037 | PasswordDigest not contained in X-AKSK. | X-AKSK字段中未找到PasswordDigest属性。 | 请检查X-AKSK字段中的是否携带了PasswordDigest属性。 | |
| 1023038 | UsernameToken not contained in X-AKSK. | X-AKSK中没有携带UsernameToken。 | 请检查X-AKSK字段中的是否携带了UsernameToken属性。 | |
| 401 | 1010010 | Invalid digest. | PasswordDigest校验失败。 | 请检查PasswordDigest字段填写是否正确。 |
| 1010013 | Time out limit. | 时间超出限制。 | 请确认X-AKSK鉴权时,生成随机数的时间与发送请求时的本地时间不能相差太大(具体差值请与管理员确认)。 | |
| 403 | 1010002 | Invalid request. | 无效请求。 | 参考各接口参数说明,检查请求携带的参数格式是否正确,如以下参数格式问题:
|
| 1010003 | Invalid app_key. | 无效的app_key。 | 请检查请求携带的app_key填写是否正确。 | |
| 1010008 | The status of the app_key is unavailable. | app_key状态异常。 | 请检查请求携带的app_key所属应用状态是否正常。 | |
| 1010010 | The flow control upper limit is reached on the platform. | 平台达到系统流控上限。 | 请稍等一分钟后再试。 | |
| 1010040 | The app_key is not allowed to invoke the API. | app_key没有调用本API的权限。 | 调用的接口和app_key所属的应用模式不一致。如添加应用时选择的AXB模式的应用,调用接口时只能调用AXB模式的接口,不能调用其他模式的接口。 | |
| 1012001 | Resource of number is not to be applied. | 资源未申请 | 携带的app_key和X号码没有绑定关系,请检查携带的X号码是否属于该应用。 | |
| 1016001 | The record does not exist. | 记录不存在 | 绑定关系不存在,请检查virtualNum,extendNum或subscriptionId的填写是否正确。 | |
| 1020166 | The app client ip is not in ip white list. | 对端app IP不在白名单列表中。 | 联系管理员检查IP白名单是否配置正确。 | |
| 1020176 | Authentication failed, try again later | 鉴权失败,稍后重试 | IP因鉴权失败次数过多导致被拉黑,请30分钟后重试,或联系管理员放通该IP。 | |
| 500 | 1010001 | Internal system error. | 系统错误。 | 请联系客服处理。 |
| 1023001 | Internal error. | 内部错误。 | ||
| 1023002 | Response timeout. | 响应超时。 | 重新发送一次请求,若依然返回响应超时,请联系管理员处理。 |
接口示例
接口示例仅供参考,请以实际消息为准。
- 请求示例1:分页查询单个X号码的绑定关系信息
GET /rest/caas/extendnumber/v2.0?virtualNum=%2B8613888888888&cursor=1751882344516_0&limit=10 HTTP1.1 content-type: application/json;charset=UTF-8 authorization: AKSK realm="SDP",profile="UsernameToken",type="Appkey" x-AKSK: UsernameToken Username="ZRBRz4bAXoFgEH7o4Ew308eXc1RA",PasswordDigest="NDA1MWIwNjI2ZTkyNWFlM2FhMTE5NDE1YTk5NjU1YWE4NjNlZTY1MmRhYzkxZGViNzczZjdjMjkzZWQ4ZjAwNA==",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2025-05-13T00:35:30Z"
- 响应示例
HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: xx { "resultcode": "0", "resultdesc": "Success", "nextCusor": "1751882348538_0", "limit": 10, "extendNumBinds": [ { "subscriptionId": "a132d3244543tg425982fe34df", "virtualNum": "+8613888888888", "extendNum": "1234", "bindNum": "+8613999888880", "displayNumMode": "0", "recordFlag": "false", "callbackTone": "callbackTone.wav", "bindExpiredTime": 0, "callbackExpiredTime": 0, "subscribeTime": "2025-07-08 01:09:41" }, { "subscriptionId": "a132d3244543tg425982fe34de", "virtualNum": "+8613888888888", "extendNum": "1235", "bindNum": "+8613999888889", "displayNumMode": "0", "recordFlag": "false", "callbackTone": "callbackTone.wav", "bindExpiredTime": 0, "callbackExpiredTime": 0, "subscribeTime": "2025-07-08 01:09:41" } ] } - 请求示例2:查询单条绑定关系信息
GET /rest/caas/extendnumber/v2.0?virtualNum=%2B8613888888888&extendNum=1234 HTTP1.1 content-type: application/json;charset=UTF-8 authorization: AKSK realm="SDP",profile="UsernameToken",type="Appkey" x-AKSK: UsernameToken Username="ZRBRz4bAXoFgEH7o4Ew308eXc1RA",PasswordDigest="NDA1MWIwNjI2ZTkyNWFlM2FhMTE5NDE1YTk5NjU1YWE4NjNlZTY1MmRhYzkxZGViNzczZjdjMjkzZWQ4ZjAwNA==",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2025-05-13T00:35:30Z"
- 响应示例
HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: xx { "resultcode": "0", "resultdesc": "Success", "extendNumBinds": [ { "subscriptionId": "a132d3244543tg425982fe34df", "virtualNum": "+8613888888888", "extendNum": "1234", "bindNum": "+8613999888880", "displayNumMode": "0", "recordFlag": "false", "callbackTone": "callbackTone.wav", "bindExpiredTime": 0, "callbackExpiredTime": 0, "subscribeTime": "2025-07-08 01:09:41" } ] }