更新时间:2022-11-18 GMT+08:00
分享

开启会话

功能介绍

问答会话API由开启会话、处理会话、关闭会话三个接口组成。用户可通过调用开启会话API创建会话。该接口仅支持老用户,新用户请优先使用问答机器人API接口进行调用。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/sessions

表1 路径参数

参数

是否必选

参数类型

描述

endpoint

String

终端节点,即调用API的请求地址。

不同服务不同区域的endpoint不同,您可以从终端节点中获取。

project_id

String

项目ID,用于资源隔离。请参见获取项目ID

qabot_id

String

机器人标识符,qabot编号,UUID格式。如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。

进入问答机器人的Console界面,在“机器人名称/ID”列显示对应的qabot_id。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

用于获取操作API的权限。获取Token接口响应消息头中X-Subject-Token的值即为Token。

Content-Type

String

消息体的类型(格式),参数值为“application/json”。

响应参数

状态码: 400

表3 响应Body参数

参数

参数类型

描述

error_code

String

调用失败时的错误码。 调用成功时无此字段。

error_msg

String

调用失败时的错误信息。 调用成功时无此字段。

请求示例

  • 请求示例
    POST http://{endpoint}/v1/{project_id}/qabots/{qabot_id}/sessions
    
    Request Header:
    Content-Type: application/json
    X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
  • Java语言请求代码示例
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    
    /**
     * 此demo仅供测试使用,建议使用sdk
     */
    public class CBSDemo {
    
        public void cbsDemo() {
            try {
                //endpoint、projectId、qabot_id需要替换成实际信息。
                URL url = new URL("https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/sessions");
                String token = "用户获取得到的实际token值";
                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.setRequestMethod("POST");
                connection.setDoInput(true);
                connection.setDoOutput(true);
                connection.addRequestProperty("Content-Type", "application/json");
                connection.addRequestProperty("X-Auth-Token", token);
    
                InputStream is = connection.getInputStream();
                BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
                while (br.ready()) {
                    System.out.println(br.readLine());
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args) {
            CBSDemo CBSDemo = new CBSDemo();
            CBSDemo.cbsDemo();
        }
    }

响应示例

状态码:400

失败响应示例

{
"error_msg": "RESOURCE_NOT_EXIST_EXCEPTION",
"error_code": "CBS.3254"
}

状态码

状态码请参见状态码

错误码

错误码请参见错误码

相关文档