更新时间:2023-06-06 GMT+08:00

获取问题提示

功能介绍

获取用户输入问题的提示问题列表。

URI

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

表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”。

表3 请求Body参数

参数

是否必选

参数类型

描述

question

String

用户输入的问题,如果输入的question为空字符串返回结果为空。长度为1~512。

top

Integer

最多提示条数,默认为5,取值范围[1,10]。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

questions

Array of strings

推荐问列表。

状态码: 400

表5 响应Body参数

参数

参数类型

描述

error_code

String

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

error_msg

String

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

请求示例

  • 请求示例
    POST https://{endpoint}/v1/41551a23c2be484cb0070631e323ee52/qabots/b36a01da-7fc2-43f8-8990-218e57a94420/suggestions
    
    Request Header:
        Content-Type: application/json
        X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
    
    Request Body:
    {
        "question":"桌面云",
        "top":2
    }
  • Python语言请求代码示例
    import requests
    url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/suggestions"
    token = "用户获取得到的实际token值"
    headers = {'Content-Type': 'application/json', 'X-Auth-Token': token}
    body = {"question":"桌面云","top":2}
    
    response = requests.post(url, headers=headers, json=body, verify=False)
    print(response.text)
  • Java语言请求代码示例
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.net.HttpURLConnection;
    import java.net.URL;
    
    public class CBSDemo {
    
        public void cbsDemo() {
            try {
                //endpoint、projectId、qabot_id需要替换成实际信息。
                URL url = new URL("https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/suggestions");
                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);
    
                //输入参数
                String body = "{\"question\":\"桌面云\",\"top\":2}";
    
                OutputStreamWriter osw = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
                osw.append(body);
                osw.flush();
                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();
        }
    }

响应示例

状态码:200

成功响应示例

{
    "questions":[
       "桌面云打不开",
       "桌面云无法登录"
    ]
}

状态码:400

失败响应示例

{
  "error_code": "CBS.0022",
  "error_msg": "question can not be null"
}

状态码

状态码请参见状态码

错误码

错误码请参见错误码