Dimzou API 是一套可用于多人同时协同写作的 RESTful API。对于大部分的网页应用(包括移动应用),Dimzou API 是授权访问用户的Dimzou数据的最佳选择。
Dimzou API 提供了关于Bundle, Publication 的富有表现力的接口,让你可以灵活地访问用户的 Dimzou 数据。选择一种你喜欢的现在语言,你可以通过这些API在你的应用中添加 Dimzou 的特色功能,如:
- 获取一个Bundle列表
- 创建、编辑、插入段落、发布、删除bundle
- 修改bundle的可见性,公开、仅合作者可见
- 为bundle添加应用场景、分类
- 审核段落的各个版本
- 添加章节合作者
使用Dimzou API所需的全部就是注册成为Feat.com的用户并进行身份验证。
典型用例
Dimzou API 可以在不同的场景中使用,包括,但不限于:
- 多人协同写作
我可以从哪去获取更多资料?
从现在开始使用这个文档来开始构建一个 Dimzou 应用:
- 开发者指南可以帮助你了解如何实现典型的应用场景
- API 参考为你提供了 Dimzou API 中所有资源的信息以及其方法。
API 预览
Dimzou API 是一个网络服务。它遵循 RESTful API 规范,并且使用 JSON 作为消息体。基本的API特性以及使用场景将会在这个部分进行描述。如果想要了解更多,可以在 Dimzou API 参考中查阅 API 的资源以及方法。
关键的资源类型
Dimzou API 提供了以下资源类型:
Bundle指的是书的封面。多章节bundle下可以创建多个章节,单章节bundle只有一个章节(创建时默认生成的章节)。
Node指的是章节,分为普通章节和封面章节2种。
Publication 是出版物,一个出版物对应一个章节。当作者出版该章节后会生成出版物。
Paragraph 是段落。一个章节有多个段落,段落有序号表示其顺序。
Reword 是段落版本,一个段落有多个段落版本。不同参与编辑该bundle的用户都可以提交段落版本。段落版本有待审核、已审核状态,每个段落有且仅有一个“当前被选中段落版本”。段落版本的版本号会递增。
Category 是分类。bundle的作者可以设置分类。
身份认证和Dimzou API
与其他 Feat REST API 一样,Dimzou API 使用 OAuth 2.0 来处理认证以及授权。你的应用需要指定一个或者多个 Scopes。 Scopes 是用来标记应用需要访问数据范围的字符串。这些 scopes 一组 token 一起确保数据访问安全。 一个 Scope 可以代表对单个资源的访问,也可以代表对一组资源的访问范围,例如:
- 读取bundle列表(
dimzou_bundle
) - 读取publication列表 (
dimzou_publication
)
你可以为你的应用授予Dimzou权限,来更加深入地了解如何在认证条件下使用 Dimzou API。
Scopes
Dimzou API支持许多细粒度的授权范围,以实现所需级别的访问控制。 通过请求所需的最小访问级别,用户可以更自信地授予对其 Dimzou 的访问权限。
示范用例
目标场景:返回当前用户的bundle列表。为了实现这个功能,你的应用需要一下步骤:
- 使用
dimzou_bundle
授权范围,完成认证用户的授权 - 调用API GET
https://www.featapi.com/api/dimzou/bundle/
- 在应用中处理返回的用户的bundle列表
常见用途
本节在一个较高的视角来描述一些常见的用例该如何实现。 有关更多详细信息,请参阅开发人员指南。
通常出版bundle的流程
Bundle是Dimzou最基础的数据单元。创建并完成bundle下的章节发布,需要:
- 创建一个页面(单章节bundle)或封面(多章节bundle)
- 邀请添加章节合作者
- 添加段落/修改段落内容
- 审核段落版本
- 出版