华为云用户手册

  • 响应示例 状态码:200 成功响应示例 { "questions" : [ { "qa_pair_id" : "****", "st_question" : "桌面云打不开", "domain" : "桌面云" }, { "qa_pair_id" : "****", "st_question" : "桌面云无法登录", "domain" : "桌面云" } ] } 状态码:400 失败响应示例 { "error_code":"CBS.0021", "error_msg":"request parameter error" }
  • 响应参数 状态码: 200 表4 响应参数 参数 参数类型 描述 questions Array of HotQuestionCount objects 指定时间范围内,热点问题列表。 调用失败时无此字段。 表5 HotQuestionCount 参数 参数类型 描述 qa_pair_id String 问答对Id。 st_question String 标准问题。 domain String 问题类别。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 quota Integer 配额。 total Integer 总数。 offset Integer 偏移量。 count Integer 返回数量。 characters Array of Character objects 形象列表。 表3 Character 参数 参数类型 描述 create_time String 创建时间。 update_time String 更新时间。 character_name String 形象的个人姓名。 gender Integer 性别。0:男,1:女。 id String 形象id。 name String 形象名。 photo_url String 形象obs地址。 posture Integer 姿态。 0:站姿全身 1:站姿半身 2:坐姿全身 3:坐姿半身 train_finish_time_estimate String 估算的训练结束时间。 train_start_time String 训练开始时间。 train_status Integer 训练状态。 0:初始化 1:训练中 2:训练成功 3:训练失败 type Integer 形象类型。 0:预制形象 1:用户自定义形象 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 CBS.XXXX。 error_msg String 错误详情。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 CBS.XXXX。 error_msg String 错误详情。
  • 响应示例 状态码: 200 OK { "quota" : 100, "total" : 19, "offset" : 0, "count" : 10, "characters" : [ { "id" : "xiaoya_suit_grey_stand", "name" : "正装深色西装", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-29T10:19:48Z", "update_time" : "2022-07-29T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:16:50Z" }, { "id" : "xiaoya_dress_white_stand", "name" : "正装白裙", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-27T10:19:48Z", "update_time" : "2022-07-27T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:17:26Z" }, { "id" : "xiaoya_suit_black_stand", "name" : "正装黑裙", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-26T12:19:48Z", "update_time" : "2022-07-26T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:10:24Z" }, { "id" : "xiaoya_dress_pink_stand", "name" : "休闲粉裙", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-25T10:19:48Z", "update_time" : "2022-07-26T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:17:55Z" }, { "id" : "xiaoya_cheongsam_yellow_stand", "name" : "正装旗袍", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-24T10:19:48Z", "update_time" : "2022-07-25T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:18:22Z" }, { "id" : "xiaoya_uniform_blue_stand", "name" : "正装蓝衬衫", "type" : 0, "gender" : 1, "posture" : 0, "create_time" : "2022-07-23T10:19:48Z", "update_time" : "2022-07-24T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:18:57Z" }, { "id" : "xiaoya_suit_white_sit_desk", "name" : "正装白裙(坐)", "type" : 0, "gender" : 1, "posture" : 3, "create_time" : "2022-07-22T10:19:48Z", "update_time" : "2022-07-23T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:20:23Z" }, { "id" : "xiaoya_suit_black_sit_desk", "name" : "正装黑裙(坐)", "type" : 0, "gender" : 1, "posture" : 3, "create_time" : "2022-07-21T09:19:48Z", "update_time" : "2022-07-23T09:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-22T15:03:00Z" }, { "id" : "xiaoya_dress_flower_sit_desk", "name" : "休闲花裙(坐)", "type" : 0, "gender" : 1, "posture" : 3, "create_time" : "2022-07-20T09:19:48Z", "update_time" : "2022-07-23T09:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:22:06Z" }, { "id" : "xiaoya_dress_flower_sit_chair", "name" : "休闲花裙(椅)", "type" : 0, "gender" : 1, "posture" : 2, "create_time" : "2022-07-19T10:19:48Z", "update_time" : "2022-07-21T10:19:48Z", "photo_url" : "https://cbs-digital-human-cn-north-4.obs.cn-north-4.myhuaweicloud.com", "character_name" : "小娅", "train_status" : 2, "train_finish_time_estimate" : "2022-07-26T09:23:09Z" } ] } 状态码: 400 Bad Request { "error_code" : "CBS.0003", "error_msg" : "This resource Id:[33dbe0e2-bb9b-xxx] does not exist." } 状态码: 500 Internal Server Error { "error_code" : "CBS.0004", "error_msg" : "Internal Server Error" }
  • URI GET https://{endpoint}/v1/{project_id}/digital-human/characters?offset={offset}&limit={limit}&type={type}&train_status={train_status}&character_name={character_name} 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 character_name 是 String 形象名称。 limit 是 String 大于等于1。 默认值:10。 offset 是 String 范围,大于等于0。 默认值:0。 train_status 是 Integer 训练状态。 0:训练中 1:预览视频生成中 2:成功 3:失败 默认值:2。 type 是 Integer 形象类型。 0:预制形象 1:用户自定义形象 默认值:0。
  • 请求消息头 可选的附加请求头字段,如指定的URI和HTTPS方法所要求的字段。详细的公共请求消息头字段请参见表3,其中请求认证信息请参见认证鉴权。 表3 公共请求消息头 名称 描述 是否必选 示例 Content-type 发送的实体的MIME类型。 是 application/json Content-Length 请求body长度,单位为Byte。 POST/PUT请求为可选, GET不包含该字段。 3495 X-Auth-Token 用户Token。用于获取操作API的权限。获取方法请见Token认证。 是 MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... X-Language 请求语言类型。 否,默认为zh-cn。 en-us 公有云API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见AK/SK认证。 对于获取问题提示接口,由于需要认证,所以需要添加“Content-Type”和“X-Auth-Token”,添加消息头后的请求如下所示。 POST https://cbs-ext.cn-north-1.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/suggestions Content-Type: application/json X-Auth-Token:MIIaBgYJKoZIhvcNAQcC……
  • 请求消息体 请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。如果请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取问题提示接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示。 POST https://cbs-ext.cn-north-1.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/suggestions Content-Type: application/json X-Auth-Token:MIIaBgYJKoZIhvcNAQcC…… { "question":"桌面云", "top":2 } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于获取问题提示接口,您可以从响应消息部分看到返回参数及参数说明。
  • 请求方法 HTTPS方法(也称为操作或动词),它告诉服务您正在请求什么类型的操作。 表2 HTTPS方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在-获取问题提示的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://cbs-ext.cn-north-1.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/suggestions
  • 请求URI 请求URI由如下部分组成。 {URI-scheme} :// {Endpoint} / {resource-path} ? {query-String} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器 域名 或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点中获取。例如 对话机器人服务 在“华北-北京四”区域的Endpoint为“cbs-ext.cn-north-4.myhuaweicloud.com”。 resource-path 资源路径,也即API访问路径。从具体API的URI模块获取,例如“ 问答机器人 获取问题提示”API的resource-path为“/v1/{project_id}/qabots/{qabot_id}/suggestions”。其中{project_id}为项目编号,请参考获取项目ID获取,{qabot_id}为 智能问答机器人 编号,可在CBS服务智能问答机器人首页获取。 query-String 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。当前CBS服务未使用该参数。 例如,您需要获取“华北-北京四”区域的调用获取问题提示API,则需使用“华北-北京四”区域的Endpoint(cbs-ext.cn-north-4.myhuaweicloud.com),并在获取问题提示的URI部分找到resource-path(/v1/{project_id}/qabots/{qabot_id}/suggestions),拼接起来如下所示。 https://cbs-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/suggestions 图2 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 响应示例 状态码:200 成功响应示例 { "reply_type" : 0, "qabot_answers" : { "answers" : [ { "score" : 1, "answer" : "桌面云打不开了", "domain" : "桌面云", "qa_pair_id" : "305cd440-ab4f-4704-9b30-ffa4e82a5606", "st_question" : "桌面云打不开" } ] } } 状态码:400 失败响应示例 { "error_code":"CBS.0011", "error_msg":"auth failed" }
  • 请求示例 提问“桌面云打不开了” POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/chat Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "question": "桌面云打不开了" } Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/chat" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} body = {"question": "用户问"} 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}/chat"); 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\": \"用户问\"}"; 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 表6 响应Body参数 参数 参数类型 描述 reply_type Integer 回复类型: 0 知识库回复。 1 技能回复。 2 闲聊回复。 3 图谱回复。 4 文档回复。 5 表格回复。 qabot_answers QaBotAnswersNew object 知识库回复。 chat_answers ChatAnswers object 闲聊回复。 taskbot_answers TaskBotAnswers object 技能回复。只有专业版机器人有该回复。 docqa_answers DocqaAnswers object 文档回复。只有专业版机器人有该回复。 tableqa_answers TableQaAnswers object 表格回复。只有专业版机器人有该回复。 session_id String 会话id,每次对话开启,机器人创建会话id,下次请求中传入该id表示继续该对话,从用户最后一次答案开始,会话超时时间为2分钟。 kbqa_answers KbqaAnswers object 图谱回复。只有专业版机器人有该回复。 request_id String 请求ID。用来标记调用失败时,用来标记本次问答。 表7 QaBotAnswersNew 参数 参数类型 描述 answers Array of QaBotAnswer objects 问答机器人回复。 recommend_answers Array of RecomendAnswer objects 问答机器人推荐回复。 表8 QaBotAnswer 参数 参数类型 描述 qa_pair_id String 问答对ID,UUID格式,如:305cd440-ab4f-4704-9b30-ffa4e82a5606。 st_question String 标准问题,如:桌面云打不开。 answer String 答案,如:桌面云打不开了。 score Double 相似度得分,精确到小数点后3位。 domain String 问题类别。 top_score_question String 最高评分的扩展问或标准问。具体见表4。 表9 RecomendAnswer 参数 参数类型 描述 qa_pair_id String 问答对ID,UUID格式,如:305cd440-ab4f-4704-9b30-ffa4e82a5606。 st_question String 标准问题,如:桌面云打不开。 score Double 相似度得分,精确到小数点后3位。 domain String 问题类别。 top_score_question String 最高评分的扩展问或标准问。具体见表4。 表10 ChatAnswers 参数 参数类型 描述 answer String 答案,如:美好的一天祝您一切顺利。 score Float 闲聊的置信度,范围:[0.0,1.0 ]。0.0表示兜底回复。 表11 TaskBotAnswers 参数 参数类型 描述 answer String 答案, 如:请问您需要查询哪里的天气?(##SPLIT## 标签:多个回复节点分隔符) skill_id String 技能标识符,UUID格式。如:9eece064-bdb5-43cb-8e0f-8c19a929e25c。 skill_responses Array of SkillResponse objects 技能回复信息。 表12 SkillResponse 参数 参数类型 描述 skill_id String 输入问题,不能为空,UUID格式,如:9eece064-bdb5-43cb-8e0f-8c19a929e25c。 skill_version String skill的版本。 frame Frame object 命中意图。 candidate CandidateIntention object 候选意图。 locked Boolean 技能是否被锁定,默认是false。 related_intenions Array of RelatedIntention objects 相关意图信息。 表13 Frame 参数 参数类型 描述 intention String 意图。 confidence Double 命中意图置信度。 current_slots Array of CurrentSlot objects 当前槽位列表。 history_slots Array of HistorySlot objects 历史槽位列表。 reply String 机器人回复。 task_complete Boolean 任务是否完成。 flow_complete Boolean 对话流程是否结束。 candidate_words Array of Strings 候选词。 intention_alias String 意图名称。 表14 CurrentSlot 参数 参数类型 描述 slot_id String 槽位ID,UUID格式,如:9eece064-bdb5-43cb-8e0f-8c19a929e25c。 slot_name String 槽位名称。 slot_values Array of SlotValue objects 槽位值。 slot_identification String 用户设置的槽位标识。 表15 SlotValue 参数 参数类型 描述 word String 词。 norm_word String 通用词。 begin_position Integer 词的起始位置。 end_position Integer 词的结束位置。 表16 HistorySlot 参数 参数类型 描述 slot_name String 槽位名称。 slot_values Array of HistorySlotWord objects 槽信息。 slot_identification String 用户设置的槽位标识。 表17 HistorySlotWord 参数 参数类型 描述 word String 词。 norm_word String 归一化后的词。 表18 CandidateIntention 参数 参数类型 描述 candidate_intention String 候选意图。 candidate_confidence Double 候选技能置信度。 表19 RelatedIntention 参数 参数类型 描述 intention String 意图名称。 confidence Double 意图置信度。 表20 DocqaAnswers 参数 参数类型 描述 answer String 答案。 score Double 文档问答回复的得分。 question String 问题。 answer_detail DocQueryAnswerDetail object 文档回复的详细信息。 details Array of DocQueryAnswerDetail objects 文档回复的topN答案。 表21 DocQueryAnswerDetail 参数 参数类型 描述 answer String 答案。 doc_id String 文档ID。 end_index Integer 答案结束下标。 paragraph_score Double 段落评分。 paragraph_text String 段落文字。 phrase_score Double 文档问答阅读理解评分。 start_index Integer 答案开始下标。 total_score Double 文档问答总评分。 paragraph_number Integer 段落在文档中的编号。 表22 TableQaAnswers 参数 参数类型 描述 table_id String 表格ID。 answer String 表格问答答案。 score Double 评分。 表23 KbqaAnswers 参数 参数类型 描述 answer String 图谱问答的答案。 score Double 评分。 状态码: 400 表24 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • URI POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/chat 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String 机器人标识符,qabot编号,UUID格式。如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 获取方法: 登录 对话机器人 服务控制台,在智能问答机器人列表中查看qabot_id。
  • URI POST https://{endpoint}/v1/{project_id}/digital-human/video/{video_id}/upload/ppt 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 video_id 是 String 视频id。可以通过调用获取视频列表接口获取。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 list Array of ImageUrlResp objects 图片链接列表。 表4 ImageUrlResp 参数 参数类型 描述 id String 图片id。 name String 图片名称。 url String 访问地址。 resolution Resolution object 分辨率。 表5 Resolution 参数 参数类型 描述 x Integer 像素x。 y Integer 像素y。
  • 响应示例 状态码: 200 OK { "list" : [ { "id" : "f8b08136-9537-4ff8-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第一页" }, { "id" : "98559178-16c1-493b-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第二页" }, { "id" : "225d7e8a-d29d-4ad5-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第三页" }, { "id" : "d5adb76e-9ad0-4393-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第四页" }, { "id" : "4fea8fd5-6171-4b4a-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第五页" }, { "id" : "764df339-3e0f-4f4e-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第六页" }, { "id" : "b8f090cc-fc69-4b4d-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "第七页" } ] }
  • 响应示例 状态码:200 成功响应示例 { "interval":"day", "total":{ "session_count":122, "user_count":4, "avg_request_count":1.467, "avg_session_time":23909.836 }, "intervals":[ { "start":"2021-02-14", "session_count":8, "user_count":1, "avg_request_count":3.500, "avg_session_time":157500.000 }, { "start":"2021-02-15", "session_count":1, "user_count":1, "avg_request_count":2.000, "avg_session_time":2000.000 }, { "start":"2021-02-19", "session_count":113, "user_count":4, "avg_request_count":1.319, "avg_session_time":14646.018 } ], "startutc":1613059200000, "endutc":1613720965417, "time_zone":"+08:00" } 状态码:400 失败响应示例 { "error_code":"CBS.0021", "error_msg":"request parameter error" }
  • 请求示例 获取用户会话统计信息 GET https://cbs-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/requests/session-stats?interval=day&time_zone=%2B08%3A00 Request Header: Content-Type: application/json X-Auth-Token:MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/session-stats?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone}" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.get(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.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}/requests/session-stats?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone}"); String token = "用户获取得到的实际token值"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setDoInput(true); connection.setDoOutput(false); 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(); } }
  • URI GET https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/session-stats?start_time={start_time}&end_time={end_time}&interval={interval}&time_zone={time_zone} 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot_id,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 获取方法: 登录对话机器人服务控制台,在智能问答机器人列表中查看qabot_id。 表2 Query参数 参数 是否必选 描述 start_time 否 查询的起始时间,long,UTC时间,采用毫秒时间戳,默认值为0。 end_time 否 查询的结束时间,long,UTC时间,采用毫秒时间戳,默认值为当前时间的毫秒数。 interval 是 统计周期目前支持month、week、day。 time_zone 否 请求所在时区,例如:中国东八区为"+08:00";美国西五区为"-05:00";默认为"UTC"。(注意+-:符号需要经过urlEncoder加码)
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 interval String 统计周期目前支持year、month、week、day。 time_zone String 所在时区,默认为"utc"。例如:中国东八区为"+08:00";美国西五区为"-05:00"。 total SessionStatsTotal object 会话总计统计数据。调用失败时无此字段。 intervals Array of SessionStatsIntervals objects 会话间隔统计数据。调用失败时无此字段。 startutc Long 统计开始的utc时间。调用失败时无此字段。 endutc Long 统计结束的utc时间。调用失败时无此字段。 表5 SessionStatsTotal 参数 参数类型 描述 session_count Long 会话总数。 user_count Long 独立用户个数。 avg_request_count Double 平均会话轮数,保留小数点后三位。 avg_session_time Double 平均会话时长,保留小数点后三位。 表6 SessionStatsIntervals 参数 参数类型 描述 start String 间隔周期开始时间。 session_count Long 间隔周期会话总数。 user_count Long 间隔周期独立用户个数。 avg_request_count Double 间隔周期平均会话轮数,保留小数点后三位。 avg_session_time Double 间隔周期平均会话时长,保留小数点后三位。 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • 请求参数 表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]。
  • 请求示例 获取“桌面云”问题的提示问题列表 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(); } }
  • URI POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/suggestions 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot编号,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 进入问答机器人的Console界面,在“机器人名称/ID”列显示对应的qabot_id。
  • 请求示例 标记问答结果为转人工操作 POST https://{endpoint}/v1/1604d8170cd84440a81281e5a3a04f8b/qabots/303a0a00-c88a-43e3-aa2f-d5b8b9832b02/requests/{request_id}/labor Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/{request_id}/labor" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.post(url, headers=headers, 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}/requests/{request_id}/labor"); 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(); } }
  • URI POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/{request_id}/labor 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot编号,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 进入问答机器人的Console界面,在“机器人名称/ID”列显示对应的qabot_id。 request_id 是 String 请求ID,获取方式请参见响应参数中的request_id。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 request_id String 调用成功时的返回请求ID。 调用失败时无此字段。 updated_time String 转人工的时间。格式为“yyyy-MM-dd THH:mm:ssZ”。其中,T指某个时间的开始;Z指UTC时间。 调用失败时无此字段。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • 响应示例 状态码: 200 OK { "id" : "c4f1d8a5-36b4-4076-xxx", "url" : "https://cbs-digital-human-cn-north-5.obs.cn-north-5.myhuaweicloud.com", "name" : "12345" } 状态码: 400 Bad Request { "error_code" : "CBS.0003", "error_msg" : "This resource Id:[33dbe0e2-bb9b-4efc-xxx] does not exist." } 状态码: 500 Internal Server Error { "error_code" : "CBS.0004", "error_msg" : "Internal Server Error" }
  • URI POST https://{endpoint}/v1/{project_id}/digital-human/video/{video_id}/upload/image 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 video_id 是 String 视频id。可以通过调用获取视频列表接口获取。 表2 Query参数 参数 是否必选 参数类型 描述 name 是 String 图片名。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 id String 图片id。 name String 图片名称。 url String 访问地址。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 CBS.XXXX。 error_msg String 错误详情。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 CBS.XXXX。 error_msg String 错误详情。
  • 请求示例 统计用户问关键词 GET https://cbs-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/qabots/{qabot_id}/requests/keywords Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/keywords?top={top}&start_time={start_time}&end_time={end_time}" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.get(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.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}/requests/keywords?top={top}&start_time={start_time}&end_time={end_time}"); String token = "用户获取得到的实际token值"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setDoInput(true); connection.setDoOutput(false); 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(); } }
共100000条