用户之声——提建议·赢好礼> HOT
本文档主要描述腾讯云智能数智人 aPaas 平台接口调用方式,包括权限、公共参数、签名要求等。

一、接口调用环境

正式环境:https://gw.tvs.qq.com

二、权限申请及开通

交互数智人 apass 接口使用权限可以通过官网下单开通。

2.1. 接口必要参数获取:

调用交互数智人apass接口必须要携带该数智人项目对应的 appkey 、 accesstoken、virtrualmankey,具体获取方式是配置平台中以下界面获取:
下述界面的登录地址是 https://xiaowei.cloud.tencent.com/ivh#/application,请使用腾讯云账号登录并创建一个项目,按照截图所示获取 appkey 、accesstoken、virtrualmankey。




三、请求公共参数及签名方法

3.1.公共参数

在调用 aPaas 任一接口时,都需在 URL 中以 QueryString 形式携带以下公共参数:
参数
类型
必须
说明
appkey
string
使用 “2.1.接口必要参数获取” 到的appkey
timestamp
string
请求时间戳,单位:秒。时间戳需要和当前时间的差异不过能超过五分钟,否则会鉴权失败。
signature
string
请求签名(参考3.2计算签名)

3.2.签名方法

请求参数签名步骤如下:
1. signature 签名规则如下,这里以下为例说明(示例仅供参考)
appkey = e38267c0e86411ebb02aed82acb0ed99
accesstoken = f68f2d10ae9e4604b76fb05cf46bccec
域名路由 = https://gw.tvs.qq.com/v2/ivh/sessionmanager/sessionmanagerservice/createsession
2. 对除 signature 之外的所有参数按字典序进行排序,作为签名原文, HTTPS 接口目前仅有 appkey 和 timestamp 两个参数,因此排序拼接后的字符串示例为:
appkey=e38267c0e86411ebb02aed82acb0ed99&timestamp=1646636485
注意:
创建长链接通道接口的 url 会有 appkey 、requestid、 timestamp 三个参数,注意都要拼接。
拼接示例:appkey=xxx&requestid=xxxx&timestamp=xxxxx
3. 对签名原文使用 accesstoken 进行 HmacSha256 加密,之后再进行 base64 编码。
hashBytes = HmacSha256("appkey=e38267c0e86411ebb02aed82acb0ed99&timestamp=1646636485","f68f2d10ae9e4604b76fb05cf46bccec")
signature = Base64Encode(hashBytes)
4. 得到 signature 签名值为:
BfWuaC9kmaicCggXc693uK+sZQ8qe88O4HVQNTdwZuo=
5. 将 signature 值进行 urlencode(必须进行 URL 编码,否则将导致鉴权失败偶现 )后拼接得到最终请求 URL 为:
https://gw.tvs.qq.com/v2/ivh/sessionmanager/sessionmanagerservice/createsession?appkey=e38267c0e86411ebb02aed82acb0ed99&timestamp=1646636485&signature=BfWuaC9kmaicCggXc693uK%2BsZQ8qe88O4HVQNTdwZuo%3D

四、请求及响应结构

请求体结构
请求体分为 Header 和 Payload 两个参数,Header 中不需要传参数,每个接口的业务参数均放在 Payload 中传递。
注意:
Header 和 Payload 在请求体中必传,不可缺少。
{
"Header": {
},
"Payload": {
#业务参数
}
}
响应体结构
响应体分为 Header 和 Payload 两个参数,Header 中包含结果码、消息、以及请求唯一 ID。接口具体的返回参数将放置在 Payload 中。
{
"Header": {
"Code": 0,
"Message": "",
"RequestID": "", // 由云端生成返回
},
"Payload": {}
}