tencent cloud

文档反馈

数智人 aPaas 接口调用方式

最后更新时间:2024-07-19 10:02:02
    本文档主要描述腾讯云智能数智人 aPaas 平台接口调用方式,包括权限、公共参数、签名要求等。

    一、接口调用环境

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

    二、权限申请及开通

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

    2.1. 接口必要参数获取:

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

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

    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": {}
    }
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持