## **接口说明**
API V2.0是基于图灵机器人平台语义理解、深度学习等核心技术,为广大开发者和企业提供的在线服务和开发接口。
目前API接口可调用聊天对话、语料库、技能三大模块的语料:
聊天对话是指平台免费提供的近10亿条公有对话语料,满足用户对话娱乐需求;
语料库是指用户在平台上传的私有语料,仅供个人查看使用,帮助用户最便捷的搭建专业领域次的语料。
技能服务是指平台打包的26种实用服务技能。涵盖生活、出行、购物等多个领域,一站式满足用户需求。
## **使用说明**
#### ****编码方式****
UTF-8(调用图灵API的各个环节的编码方式均为UTF-8)
#### ****接口地址****
http://openapi.turingapi.com/openapi/api/v2
#### ****请求方式****
HTTP POST
#### ****请求参数****
请求参数格式为 json
请求示例:
~~~
{
"reqType":0,
"perception": {
"inputText": {
"text": "附近的酒店"
},
"inputImage": {
"url": "imageUrl"
},
"selfInfo": {
"location": {
"city": "北京",
"province": "北京",
"street": "信息路"
}
}
},
"userInfo": {
"apiKey": "",
"userId": ""
}
}
~~~
>**参数说明**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| reqType | int | N | - | 输入类型:0-文本(默认)、1-图片、2-音频 |
| perception | - | Y | - | 输入信息 |
| userInfo | - | Y | - | 用户参数 |
**perception**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| inputText | - | N | - | 文本信息 |
| inputImage | - | N | - | 图片信息 |
| inputMedia | - | N | - | 音频信息 |
| selfInfo | - | N| - | 客户端属性 |
注意:输入参数必须包含inputText或inputImage或inputMedia!
***inputText***
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| text | String | Y | 1-128字符 | 直接输入文本 |
***inputImage***
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| url | String | Y | | 图片地址 |
***inputMedia***
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| url | String | Y | | 音频地址 |
***selfInfo***
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| location | - | N | - | 地理位置信息 |
*****location*****
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| city | String | Y | - | 所在城市 |
| province | String | N | - | 省份 |
| street | String | N | - | 街道 |
**userInfo**
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| apiKey | String | Y | 32位 | 机器人标识 |
| userId | String | Y | 长度小于等于32位 | 用户唯一标识 |
| groupId | String | N| 长度小于等于64位 | 群聊唯一标识 |
| userIdName | String | N | 长度小于等于64位 | 群内用户昵称 |
#### ****输出参数****
输出示例:
~~~
{
"intent": {
"code": 10005,
"intentName": "",
"actionName": "",
"parameters": {
"nearby_place": "酒店"
}
},
"results": [
{
"groupType": 1,
"resultType": "url",
"values": {
"url": "http://m.elong.com/hotel/0101/nlist/#indate=2016-12-10&outdate=2016-12-11&keywords=%E4%BF%A1%E6%81%AF%E8%B7%AF"
}
},
{
"groupType": 1,
"resultType": "text",
"values": {
"text": "亲,已帮你找到相关酒店信息"
}
}
]
}
~~~
>****参数说明****
| 参数 | 类型 | 是否必须 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| intent | - | Y | - | 请求意图 |
| results | - | N | - | 输出结果集 |
**intent**
| 参数 | 类型 | 是否包含 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| code | int | Y | - | 输出功能code |ap
| intentName | String | N | - | 意图名称 |
| actionName | String | N | - | 意图动作名称 |
| parameters | Map | N | - | 功能相关参数 |
**results**
| 参数 | 类型 | 是否包含 | 取值范围 | 说明 |
| --- | --- | --- | --- | --- |
| resultType | String | Y | 文本(text);连接(url);音频(voice);视频(video);图片(image);图文(news)| 输出类型 |
| values | - | Y | - | 输出值 |
| groupType | int | Y | - | ‘组’编号:0为独立输出,大于0时可能包含同组相关内容 (如:音频与文本为一组时说明内容一致)|
### ****异常返回码****
###### 异常返回格式
~~~
{
'intent':
{
'code':5000
}
}
~~~
###### 异常返回说明
| 异常码 | 说明 |
| --- | --- |
| 5000 | 无解析结果 |
| 6000 | 暂不支持该功能 |
| 4000 | 请求参数格式错误 |
| 4001 | 加密方式错误 |
| 4002 | 无功能权限 |
| 4003 | 该apikey没有可用请求次数 |
| 4005 | 无功能权限 |
| 4007 | apikey不合法 |
| 4100 | userid获取失败 |
| 4200 | 上传格式错误 |
| 4300 | 批量操作超过限制 |
| 4400 | 没有上传合法userid |
| 4500 | userid申请个数超过限制 |
| 4600 | 输入内容为空 |
| 4602 | 输入文本内容超长(上限150)|
| 7002 | 上传信息失败 |
| 8008 | 服务器错误 |
| 0 | 上传成功 |