百度知道OPEN API接口规范文档1.0_final
有道云笔记Open API说明文档 v1.0
有道云笔记Open API说明文档
概述
有道云笔记旨在以云存储技术帮助用户建立一个可以轻松访问、安全存储的云笔记空间,解决了个人资料和信息跨平台跨地点的管理问题,目前已经提供了桌面版、网页版以及部分手机型号的版本。但是用户对笔记的需求不仅仅局限于这几种情形,对于很多非笔记应用,用户仍然可能有跨平台跨设备的存储需求。通过开放的API,第三方应用只需要进行简单的开发,就可以通过标准的web协议对有道云笔记的数据进行安全的访问与修改,而不需要搭设和维护运存储服务,这大大降低了第三方的开发与运营成本,从而将更多的精力专注于应用本身。
本文档从技术角度对有道云笔记的开放API进行说明,从而方便开发者的理解和使用。
数据模型
目前有道云笔记的数据模型包括用户、笔记本、笔记以及附件四部分,下面对它们分别进行说明:
用户
每一个有道云笔记的账号(目前我们主要使用网易通行证作为账号,但是同时也支持用户使用新浪微博账号进行登录,以后也将允许用户使用QQ账号进行登录)都在系统中对应着一份用户信息以及相应的配置,包括该用户邮箱、笔记总空间大小、当前使用空间大小、默认笔记本、在线时间以及注册时间、上次修改时间等一系列信息。
笔记本
用户通过笔记本对所有笔记进行组织管理,每一篇笔记必须属于某一个笔记本,同时为了方便用户的区分与定位,每个笔记本也必须具有唯一的名字。目前有道云笔记已经支持将多个笔记本归类为一个笔记组,但是尚未对OpenAPI开放。
对于同一篇笔记,可以在两个笔记本之间进行转移,但是却不允许出现在两个笔记本中。此外,每个用户在任何时候都有一个笔记本被标记为默认笔记本,如果一个笔记在创建时没有特别指明笔记本,它将被放入默认笔记本中。删除一
前后端接口文档规范模板
前后端接口文档规范模板
一、概述
前后端接口文档是用于规范前后端接口开发的文档,确保开发团队能够准确、快速地进行接口开发和集成。本文档提供了一套规范模板,旨在提高开发效率、降低沟通成本,确保前后端开发能够高效协同。
二、命名规范
1. 接口名称:采用英文单词或短语描述接口功能,采用驼峰命名法,首字母小写。
2. URL路径:采用全小写字母、数字和横线组合的格式,以斜杆(/)开头。
3. 请求方法:采用大写字母表示,常用的包括GET、POST、PUT、DELETE等。
4. 请求参数:采用小写字母、数字和下划线组合的格式,单词之间用下划线连接。
5. 响应状态码:采用纯数字格式表示。
三、接口说明
1. 接口名称:XXX
2. 接口描述:XXX
3. URL路径:/xxx
4. 请求方法:POST
四、请求参数
1. 参数名称:XXX
参数类型:XXX
是否必填:XXX
参数说明:XXX
五、响应参数
1. 参数名称:XXX
参数类型:XXX
参数说明:XXX
六、响应状态码
1. 200:成功
2. 400:请求参数错误
3. 401:未授权
4. 500:服务器错误
七、示例
请求示例:
```json
{
"param1": "value1",
"param2": "value2"
}
```
响应示例:
```json
{
"code": 200,
"message": "操作成功", "data": {}
}
```
八、接口变更记录
版本号:1.0
修改时间:XXX
修改内容:XXX
九、附录
详细的接口设计、规范及约束请参考附录中的相关文档。
十、总结
通过使用前后端接口文档规范模板,我们可以确保接口的一致性,提高开发效率,减少沟通成本。希望开发团队能够遵循本规范进行开
接口规范文档
接口规范文档
接口规范文档
1. 引言
接口规范文档是为开发人员提供开发接口时遵循的标准和规范。本文档详细描述了接口的命名、参数、返回值、错误处理、安全性等方面的规范。遵循该规范可以保证接口的一致性、可读性和易用性。
2. 接口命名规范
2.1 接口名应使用动词或动词短语,如getUser、createOrder。2.2 接口名应使用驼峰命名法,首字母小写,例如getUserInfo、createUser。
2.3 接口名应能准确地反映接口的功能。
3. 参数规范
3.1 参数应使用英文单词,并采用驼峰命名法。
3.2 参数应有具体的类型,如String、Integer、List等。
3.3 参数应有明确的说明,包括是否必填、最大长度等限制。3.4 参数应按照功能和逻辑进行分组。
4. 返回值规范
4.1 返回值应使用具体的类型,如String、Integer、List等。
4.2 返回值应有明确的说明,包括返回值的含义、格式等。
4.3 返回值应符合业务逻辑和功能需求。
5. 错误处理规范
5.1 错误码应采用统一的格式,如4xx代表客户端错误,5xx 代表服务器错误。
5.2 错误信息应精简明了,便于开发人员查找和定位问题。5.3 错误处理应返回明确的错误信息,便于用户理解和处理。
6. 安全性规范
6.1 接口应有访问权限控制,确保只有授权用户可以访问。6.2 接口应对敏感数据进行加密和处理,保护用户的个人信息安全。
6.3 接口应有防止恶意请求的措施,如验证码、限制访问频率等。
7. 版本管理规范
7.1 接口的版本号应采用标准格式,如v1、v2.1等。
Open API 调用说明_V0.1
文档版本控制和变更记录
1.项目介绍
Open API 是为第三方推送二手房信息提供接口. 主要包含推送中介公司信息、门店信息、经济人信息以及房源信息。所有的数据以XML文件形式通过POST方法传递数据。下面详细介绍调用方式。
2.partner-key
是户博士给签约商家提供的认证签名,所有的数据推送必须包含商家的key值(XML协议中指定),否则视为无效数据。Demo中提供的key只能用于测试,正式环境下无效。
3.推送说明
a)访问地址
/executor/trade1
b)提交方式
POST方式提交XML文件协议,编码类型(enctype)是multipart/form-data。
使用form表单提交文件的方式提交到
/executor/trade1中。表单的name必须有值,但是不
限值的内容。
c)响应请求数据格式
接口以JSON个格式返回处理结果给推送方.JSON对象中ec的值为0表示处理成功,如果小于0表示处理失败,es描述失败的原因.例如:
成功的JSON:
{"success":"true","ec":0}
失败的JSON:
{"es":"Premature end of file.","ec":-1}
d)文件编码
xml内容使用UTF-8的编码, 数据提交也采用UTF-8的编码。
4.XML协议
Xml协议规定推送方需要提供的数据以及数据格式。推送方需要把数据按照XML协议中的格式组织成文件提交到
/executor/trade1地址。协议规范在protocol目录中。
a)文件大小限定
xml文件最大为10M。
完整word版,接口文档模板1.0
完整word版,接口文档模板1.0
完整word版接口文档模板1.0.0
接口文档模板
1. 引言
本文档旨在提供一个标准的接口文档模板,用于描述系统内部或与外部系统之间的接口规范。通过遵循本模板,可以准确地描述接口的请求和响应参数,以及接口的使用方法、返回码定义等相关内容。
2. 接口信息
- 接口名称:[接口名称]
- 接口版本:1.0.0
- 接口地址:[接口地址]
- 请求方法:[请求方法]
- 返回格式:JSON
- 授权方式:[授权方式] 3. 接口描述
[接口描述]
4. 请求参数
4.1 公共参数
无
4.2 请求参数
5. 响应参数
5.1 公共参数
无
5.2 响应参数
6. 接口示例
6.1 请求示例
import requests
headers = {'Content-Type': 'application/json'} data = {
"param1": "value1",
"param2": 123
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json())
6.2 响应示例
{
"code": 200,
"message": "请求成功",
"data": {
"result": "success"
}
}
7. 返回码定义
8. 接口权限控制
无
9. 参考资料
无
以上是一个标准的接口文档模板,通过填写相关信息,可以准确地描述一个接口的规范和用法。根据实际情况,可以对文档的结构和内容进行适当调整和扩展。希望这个模板对您有所帮助!如果需要进一步的协助,请随时告诉我。
openapi 标准
OpenAPI是一种规范,它定义了构建、描述、产生、可视化RESTful 风格的Web服务的接口。它可以帮助人和计算机发现和理解服务,使得使用最少的实现逻辑来理解远程服务并与之交互成为可能。
OpenAPI标准的内容包括使用规定的格式来描述HTTP RESTful API的定义,以此来规范RESTful服务开发过程。它使用JSON或YAML来描述一个标准的、与编程语言无关的HTTP API接口。一个典型的OpenAPI文档包含至少一个paths字段和一个components字段或一个webhooks字段。
OpenAPI文档编写在一个.json或.yaml中,推荐将其命名为openapi.json或openapi.yaml。OpenAPI文档其实就是一个单一的JSON对象,其中包含符合OpenAPI规范中定义的结构字段。
此外,OpenAPI还有以下一些特点:
1. OpenAPI是规范化描述API领域应用最广泛的行业标准,由OpenAPI Initiative(OAI)定义并维护,同时也是Linux基金会下的一个开源项目。
2. OpenAPI规范最初基于SmartBear Software在2015年捐赠的Swagger规范演变而来,目前最新的版本是v
3.1.0。
3. OpenAPI就是用来定义HTTP接口文档的一种规范,大家都按
照同一套规范来编写接口文档,能够极大的减少沟通成本。
4. OpenAPI规范包含非常多的细节,比如每个路径参数必须对应一个Path Item或Operations对象,例外的是如果路径项为空(例如由于ACL约束),则不需要匹配的路径参数。
openapi接口规范
openapi接口规范
OpenAPI接口规范又称为RESTfulAPI接口规范,是一种现代的Web服务接口规范,用于描述从软件客户端到服务端之间的接口调用行为。OpenAPI接口规范可以让Web服务更容易理解,从而更容易被开发者使用,从而更快捷地完成接口开发。
OpenAPI是一种服务接口规范,用于描述从客户端到服务端之间的接口调用行为。OpenAPI本身就是一种严谨的接口规范,它使得Web 服务调用更容易理解、更容易维护,也更容易被客户端使用。OpenAPI 由一组资源组成,每个资源向客户端暴露了一些接口功能,通过资源及其行为(即接口功能),客户端就可以调用Web服务,从而完成特定的功能。OpenAPI使得客户端和服务端之间的接口调用更容易理解和实现,也扩展了Web服务的定义、构建和部署的能力。
OpenAPI服务接口规范的设计思想是基于资源的,它将Web服务的接口定义为一组资源,每个资源代表一个实体,并且可以提供有限的操作。OpenAPI规范定义了不同的操作,也即不同的HTTP请求方法,用于操作不同的资源,从而实现不同的功能。OpenAPI支持多种请求方法,如GET、POST、DELETE、PUT等,可以更有效地根据客户端的需求来访问Web服务。另外,OpenAPI还提供了更多API供开发者使用,可以更方便地开发客户端应用。
另外,OpenAPI支持RESTful架构,RESTful架构是一种Web服务的架构,它基于HTTP协议,是基于表示性状态转移(REST)的软件架构风格,用于通过网络完成分布式架构中不同组件之间的接口调
ELN--OPEN API接口规范
上海时代光华OpenAPI
接口规范
2008-11-18
Revision History
目录
一、功能表 (4)
1.1 validateUser (5)
1.2 getOrganizes (6)
一、功能表(方法参数见下详细说明)
1.1请求到ISV的URL:
●userId:用户在ELN上的唯一ID。
●coopCode:用户所在公司ID。
●appId:ELN为每个ISV服务生成的ID。
●token: DES(userId=””&coopCode=””&appId=””&time=””)
time: 1970-01-01 00:00:00到当前时间的秒数。
1.2 ISV接受请求,组合参数请求ASSP验证
调用validateUser请求就是发送一个HTTP:1.1 POST或者GET请求到ASSP,实
●userId:用户在ELN上的唯一ID。
●coopCode:用户所在公司ID。
●appId:ELN为每个ISV服务生成的ID。
●token: DES(userId=””&coopCode=””&appId=””&time=””)
time: 1970-01-01 00:00:00到当前时间的秒数。
●time:返回时间戳(秒)。
●isvCoopCode:服务提供商的coopCode。
●isvSecret:ELN为每个注册的服务生成的唯一的安全码。
●elnApiName:服务名。
●sign:摘要。必须带上这个字符串,且数据正确,才能得到正确的ASSP响应。
Sign生成的算法对于所有接口适用,简单的说就是把所有需要的参数,
API接口规范V1.0——制定好规范,才好合作开发
API接⼝规范V1.0——制定好规范,才好合作开发
返回码规范:
统⼀六位 000000 表⽰成功!参数相关返回码预留100000-199999;系统相关返回码预留200000-299999;数据中⼼310000-319999后续项⽬以此类推,后续根据业务扩展情况新增操作码需要提前备案!
module = 系统码 optCode = 操作码 optDesc = 操作描述 resultCode = 结果码 resultDesc = 结果描述 bizCode = 业务码 data = 返回数据
业务码 = 系统码- + 操作码- + 结果码业务码内容与之前定义的保持⼀致,实例:TaoBao- + Order_ADD- + 330002
返回结果⽰例如下所⽰:
异常返回:
{
"optCode": "STORE_ADDMSG",
"optDesc": "库管中⼼新增消息",
"resultCode": "330002",
"resultDesc": "库管中⼼新增消息失败,添加消息到搜索引擎库异常",
"data": "",
"module": "HME",
"bizCode": "TaoBao-Order_ADD-330002",
"success": false
}
正常返回:
{
"optCode": "STORE_ADDMSG",
"optDesc": "库管中⼼新增消息",
"resultCode": "000000",
"resultDesc": "操作成功",
"data": "",
"module": "HME",
"success": true,
OpenAPI规范摘要
OpenAPI规范摘要
介绍
OpenAPI 规范(OAS)定义了⼀个标准的、语⾔⽆关的 RESTful API 接⼝规范,它可以同时允许开发⼈员和操作系统查看并理解某个服务的功能,⽽⽆需访问源代码,⽂档或⽹络流量检查(既⽅便⼈类学习和阅读,也⽅便机器阅读)。正确定义 OAS 后,开发者可以使⽤最少的实现逻辑来理解远程服务并与之交互。
此外,⽂档⽣成⼯具可以使⽤ OpenAPI 规范来⽣成 API ⽂档,代码⽣成⼯具可以⽣成各种编程语⾔下的服务端和客户端代码,测试代码和其他⽤例。
数据类型
OAS 使⽤⼏种已知的format格式来详细定义所使⽤的type数据类型。
format属性是开放的字符串值,可以是⾃定义的任意类型值,⽐如:email、uuid。
OAS 定义的formats类型如下:
通⽤名称数据类型数据格式描述
integer integer int32signed 32 bits,32位有符号数
long integer int64signed 64 bits,64位有符号数
float number float
double number double
string string
byte string byte base64 encoded characters,base64 编码字符
binary string binary any sequence of octets
boolean boolean
date string date参考 - full-date
dateTime string date-time参考 - date-time
API接口规范
API接口规范
1. 引言
该文档旨在规范API接口的设计和使用,确保系统之间的顺畅通信和数据交互。接口规范的合理设计将有助于提高系统的稳定性和可维护性。
2. 基本原则
在设计API接口时,遵循以下基本原则:
- 简洁性:接口应简洁明确,避免过度冗长的命名和复杂的参数结构。简洁性:接口应简洁明确,避免过度冗长的命名和复杂的参数结构。
- 一致性:接口应符合整个系统的一致性标准,保持统一的命名约定和数据格式。一致性:接口应符合整个系统的一致性标准,保持统一的命名约定和数据格式。
- 可扩展性:接口应考虑未来的扩展需求,具备良好的灵活性和可扩展性。可扩展性:接口应考虑未来的扩展需求,具备良好的灵活性和可扩展性。
- 安全性:接口应采取必要的安全措施,确保数据传输和用户身份的安全性。安全性:接口应采取必要的安全措施,确保数据传输和用户身份的安全性。
- 文档化:接口应有清晰完整的文档,包括接口功能、参数说明、返回结果等。文档化:接口应有清晰完整的文档,包括接口功能、参数说明、返回结果等。
3. 接口设计规范
3.1 接口命名
接口命名应具有表达力和一致性,采用英文小写单词,使用短横线连接。例如:
GET /api/user-profile
POST /api/submit-form
3.2 接口认证
为确保接口的安全性,需要进行合适的接口认证措施。可以采用令牌认证、身份验证等方式,以确保只有授权的用户或系统可以使用接口。
3.3 请求方法
根据操作的不同,选择合适的请求方法:
- GET:用于获取资源信息,不修改服务端数据。
完整word版,API参考指南模板1.0
完整word版,API参考指南模板1.0
本文档旨在提供一个完整的API参考指南模板,帮助开发者快速编写和更新API文档。
模板结构
本模板以以下几个部分组成:
1. 标题页:包括文档标题、版本号和修改历史等信息。
2. 目录页:列出了API参考指南的各个章节和子章节。
3. 介绍部分:介绍API的概念、使用场景和整体架构等信息。
4. 接口列表:列出API的各个接口及其参数、请求示例和响应示例等详细信息。
5. 错误码表:列出API可能返回的错误码及其对应的含义和解决办法等信息。
6. 常见问题:提供开发者常遇到的问题和解决办法等信息。
使用方法
2. 编辑文档内容:打开模板文件,根据实际情况填写和修改文
档内容。
3. 格式调整:根据需要调整文档的格式、字体和排版等样式。
4. 导出为Word文档:完成编辑后,将文档导出为Word格式,保存为最终的API参考指南。
更新和维护
为了保持API参考指南的最新和准确,及时更新和维护是必要的。以下是几个维护指南:
1. 版本管理:在文档的标题页中明确文档的版本号,并在修改
历史中记录每次修改的内容和日期。
2. 反馈机制:为开发者提供反馈机制,收集他们在使用API时
遇到的问题和建议。
3. 定期审核:定期检查文档的准确性和完整性,并根据需要进
行更新和修订。
结论
本文档提供了一个完整的API参考指南模板,可以帮助开发者准确、快速地编写和更新API文档。通过合理使用这个模板,可以提高API文档的质量和可读性,为开发者提供更好的开发体验。
api接口规范
api接口规范
接口规范是指在软件开发中,定义和使用接口的一些规则和约定。接口是不同软件组件之间进行交互和通信的一种方式,它可以定义一组操作、参数和返回值等信息,供其他软件组件调用和使用。良好的接口规范可以提高软件的可扩展性、可重用性和可维护性,降低软件开发和集成的复杂度,提高软件的质量和稳定性。以下是一些常见的API接口规范:
1. 命名规范:
- 接口名称应该准确描述接口的功能和作用,使用动词或动词短语表示接口的操作。
- 接口名称应该采用驼峰命名法,并且使用名词或名词短语表示接口的资源。
2. 参数规范:
- 接口的参数应该明确指定参数的类型和含义,如字符串、数值、枚举等。
- 对于必须的参数,应该使用非空约束,防止参数为空或缺失。
- 对于可选的参数,应该提供默认值,方便使用者根据需要选择是否使用。
3. 返回值规范:
- 接口的返回值应该明确指定返回值的类型和含义,如字符串、数值、对象、集合等。
- 对于可能发生错误的接口,应该定义错误码和错误信息,并在返回值中进行说明。
- 对于可能返回大量数据的接口,应该考虑分页和筛选功能,以便使用者获取所需的数据。
4. 接口版本规范:
- 对于接口的变更和升级,应该采用版本号进行管理和控制,以保证接口的向后兼容性。
- 接口的版本号应该采用主版本号和次版本号的格式,如
v1.0、v2.1等。
5. 安全认证规范:
- 对于敏感的接口,应该使用安全认证机制,如OAuth、Token等,以保护接口的安全性和可信度。
- 接口的安全认证应该在接口文档中进行明确说明,包括认
证方式和所需的认证参数。
API文档模板1.0.0解读
项目推荐接口文档
1.目录
项目推荐接口文档 (1)
1. 目录 (1)
2. 版本信息 (1)
3. 接口说明 (1)
4. 获取项目推荐列表 (1)
6.项目详情 (2)
7. 实体参数 (3)
8. ProjectsModel 实体 (3)
9. CategoryModel (3)
10. IndustryModel (3)
23.ProjectsModel (4)
11. 枚举说明 (4)
12. 联系方式 (4)
2.版本信息
3.接口说明
4.获取项目推荐列表
5.Api地址:
6.参数定义:
5.获取自己的推荐项目列表
1.Api地址:
2.参数定义:
6.项目详情
3.Api地址
2.参数定义
7.实体参数
8.ProjectsModel 实体
9.CategoryModel
10.IndustryModel
23.ProjectsModel
11.枚举说明
12.联系方式
完整PDF版,API文档模板1.0
完整PDF版,API文档模板1.0
概述
本文档是完整PDF版的API文档模板,用于提供对应API的详细说明和使用方法。本文档的版本号为1.0.0。
API文档结构
API文档模板包含以下主要部分:
1. 标题和版本信息:包括API文档标题和版本号信息。
2. 概述:对API的目的和功能进行简要说明。
4. 接口详情:针对每个API接口提供详细的说明,包括请求URL、请求方法、请求参数、请求示例、响应结果和响应示例等。
5. 错误处理:列出可能的错误响应和相应的错误代码,以及错误示例。
使用指南
以下是使用本API文档模板的建议步骤:
1. 阅读概述:快速了解API的目的和功能。
2. 查找接口:使用接口列表找到所需的API接口。
3. 阅读接口详情:详细了解每个API接口的请求和响应规范。
4. 尝试API:使用提供的请求示例和API工具进行试用和测试。
5. 处理错误:了解可能的错误响应和错误处理方法。
6. 参考资料:查阅其他相关参考资料以获取更多信息。
版本控制
本API文档模板采用版本控制机制,当前版本号为1.0.0。随
着API的演化和改进,可能会发布新的版本。请确保使用最新版本
的API文档以获取准确和最新的信息。
注意事项
1. 本API文档模板仅供参考和使用,具体API接口和参数请根据实际应用情况进行调整。
2. 所有的请求示例和响应示例仅用于演示目的,实际应用时请
根据具体需求进行参数和数据的设置和处理。
反馈和支持
如果您对API文档模板有任何疑问或建议,或遇到任何问题,
请联系我们的支持团队。我们将尽快回复并提供帮助。
API接口文档(简明版)
API接口文档(简明版)
概述
本文档提供了对API接口的简明描述,旨在帮助开发人员理解和使用API接口。API接口是用于不同应用程序之间进行通信和交互的一种方式。
基本信息
- 接口名称:API接口
- 版本号:1.0
请求方法
API接口支持以下请求方法:
- GET:用于获取资源的信息
- POST:用于创建资源
- PUT:用于更新资源
- DELETE:用于删除资源
接口地址
API接口的地址如下:
接口参数
API接口支持以下参数:
- 参数1:用于...
- 参数2:用于...
返回结果
API接口返回的结果采用JSON格式,示例如下:
{
"code": 200,
"message": "请求成功",
"data": {
"id": 1,
"name": "John Doe",
}
}
错误处理
- 400:请求参数错误
- 401:未授权访问
- 404:资源不存在
- 500:服务器内部错误
示例代码
以下是使用API接口的示例代码:import requests
response = requests.get(url)
if response.status_code == 200:
data = response.json()
print(data)
else:
print("Error:", response.status_code)
授权信息
使用API接口需要进行身份验证。请联系管理员获取授权信息,并在请求中包含相应的授权头信息。
其他注意事项
- 请遵循相关的API使用规范和最佳实践,以实现良好的开发
体验。
以上是API接口的简明文档,希望对开发人员有所帮助。如有
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
百度知道OPEN API接口规范文档V1.0
系统名称百度知道OPEN API服务接口
项目负责人
作者耿艳坤
文档提交日期2010-08-26
百度在线网络技术(北京)有限公司
(版权所有,翻版必究)
修改记录
No 修改后
版本号
修改内容简介修改日期修改人
1 1.0 百度知道OPEN API服务接口2010-08-26 耿艳坤
目录
1背景 (5)
2规范适用对象说明 (5)
3名词解释 (5)
4请求数据包格式规范 (5)
4.1URL (5)
4.2参数 (5)
4.2.1系统级参数 (5)
4.2.2业务级参数的通用约定 (6)
4.2.3参数签名算法 (6)
5响应数据包格式规范 (7)
5.1XML输出格式 (7)
5.2json输出格式 (7)
5.3错误响应输出格式 (8)
6错误码定义 (8)
7API接口细则 (9)
7.1baidu.zhidao.getQuestionList (9)
7.1.1功能 (9)
7.1.2参数 (9)
7.1.3返回值 (9)
7.2baidu.zhidao.getQuestionSearch (10)
7.2.1功能 (10)
7.2.2参数 (10)
7.2.3返回值 (10)
7.3baidu.zhidao.getQuestionInfo (11)
7.3.1功能 (11)
7.3.2参数 (11)
7.3.3返回值 (11)
7.4baidu.zhidao.getQuestionAnswer (12)
7.4.1功能 (12)
7.4.2参数 (12)
7.4.3返回值 (13)
7.5baidu.zhidao.question (13)
7.5.1功能 (13)
7.5.2参数 (13)
7.5.3返回值 (13)
7.6baidu.zhidao.answer (14)
7.6.1功能 (14)
7.6.2参数 (14)
7.6.3返回值 (14)
8第三方提供API接口细则 (15)
9附件及参考资料 (16)
1背景
本文旨在为第三方合作站点应用访问百度知道开放服务提供统一的HTTP接口调用与交互规范。
本文中描述的规范包括百度知道问题列表查询接口、检索查询接口、提问接口和回答接口。
2规范适用对象说明
本规范仅适用于由服务器端发起调用请求、POST提交数据以及GET请求文本数据结果的Open API。
3名词解释
●百度知道:
●API KEY:注册API合作时由百度的OPEN API平台分配的唯一标识一个应用的字符串,又
称应用公钥
●API SECRET:注册API合作时由百度的OPEN API平台分配的应用密钥,用于平台与合作站
点之间通信时的参数签名
4请求数据包格式规范
4.1URL
按照百度Open API规范,百度知道OPEN API提供如下REST风格的HTTP接口:
/restserver/zhidao?{query_string}
query_string由系统级参数部分和具体Open API调用参数部分组成,以key1=value&key2=value2&…表示,对于采用POST请求的Open API,query_string部分则是在POST 请求体里。所有查询类的Open API接口既支持POST,也支持GET方式,提交类的OPEN API接口仅支持POST方式。
4.2参数
4.2.1系统级参数
以下参数是由百度Open API平台系统定义的,百度知道需要支持这些参数以便接入该平台提供开放接口。百度知道采用应用授权认证接口方式,合作初始百度知道代第三方站点申请应用分配api_key和参数签名密钥api_secret。
表格4-1 API系统级参数
参数名类型是否必需描述
api_key string 是注册应用时分配到的api key
method string 是采取baidu.zhidao.getQuestionList这样的命名空间方式制定方法名
call_id uint 是时间戳,系统时间的秒值,同个应用的不同api请求的time值应该是递增的, 用于防replay攻击
format string 否响应包格式,可以是xml(默认)或json
ie string 否API调用请求包的编码类型,支持UTF-8和GBK
bd_sig string 是参数签名,对bd_sig外所有参数串的签名,包括业务级的参数。
4.2.2业务级参数的通用约定
百度知道遵守百度Open API规范中业务级通用参数的约定。
表格4-2 业务级参数的通用约定
参数名类型描述
page_no Int 用于支持分页的api,默认为1,表示第几页
page_size Int 用于支持分页的api,表示每页返回多少条数据,默认以及上限为25
4.2.3参数签名算法
参数签名生成算法采取如下方式(PHP版),其它语言根据注释描述完成等同功能://param_array是key-value形式的参数数组,不包括api_secret密钥本身
//secret是合作申请成功后分配的api_secret密钥
function generate_sig($param_array, $secret) {
$str = '';
//对param_array中的参数名称进行升序排序
ksort($param_array);
//按照如下格式转换数组为string格式
foreach ($param_array as $k=>$v) {
$str .= "$k=$v";
}
//string末端补充api_secret密钥