开放平台
概述
访问地址
墨墨开放平台是一个第三方应用的开发平台,你可以在上面创建应用,审核通过后你可以通过开放授权取得其他墨墨用户的授权后进行应用开发和数据交互。
开放 API
目前开放的能力可以通过 API 文档查看:open.maimemo.com
应用场景举例
浏览器拓展
经过用户授权后你可以获取用户的 Access Token,把单词、例句、释义、助记等数据同步到用户的墨墨背单词 App,甚至直接将单词加入学习规划或者提前复习。
数据分析
经过用户授权后你可以有限的获取用户的学习数据的记忆情况,如当天学习列表,制作成报表或者图表、或者结合 AI 进行数据分析和辅助记忆。
数据连接器
可将墨墨背单词的单词数据、学习数据单向或双向连接到其他应用,如 Anki,Notion 等。
前提要求
- 你需要有一个绑定了手机号的墨墨背单词账号,在登录开放平台时会进行检查
- 创建应用时,你需要阅读并同意 墨墨开放平台服务协议
开发流程
创建应用
登录 open.maimemo.com/app,点击右上角创建应用
填写应用信息
- 应用名称
需要能准确应用用途,建议和你的网站应用名称等一致,名称不能直接或间接暗示为墨墨官方应用,不能包含“墨墨”、MaiMemo、官方等相关字样,否则会审核失败。
- 应用描述
描述你将使用哪些能力、使用场景等,帮助我们更快的进行审核
- 主页 URL
主页需要是已上线可访问的 HTTPS 页面,并和登录回调地址使用同一个域名。使用已备案域名更容易通过审核。
- 应用模板
如果你的应用有后端服务器,选择后端应用,后续将使用 client_id + client_secret 通过 OIDC Authorization Code 流程获取用户 Access Token
如果你的应用没有后端,只有前端网页,则选择纯前端应用,后续将使用 OIDC PKCE 流程获取用户 AccessToken
注意应用一旦创建后则不可修改
- 授权范围
以页面显示为准,建议只申请需要用的的权限,后续需要增加权限可以再次编辑
- 提交审核
一切就绪后就可以点击创建应用来进行创建了,随后在列表页面可以点击提交审核
在审核通过前可以撤回审核继续编辑
接入授权
issuer: https://accounts.maimemo.com/oidc
scope: openid, profile 和通过审核批准的 scope
前端应用
告诉 AI 在项目中实现 OIDC PKCE 登录流程就可以了,把 client_id 和登录回调地址、scope、issuer 信息给 AI 即可。
后端项目
告诉 AI 在项目中实现 OIDC Auth Code 登录流程就可以了,把 client_id、client_secret 和登录回调地址、scope、issuer 信息给 AI 即可。
开始开发
在用户授权完成后,你会获得 id_token 和 access_token,解包 id_token 后可以使用 payload.sub 作为用户 ID,需要注意同一个用户在不同应用中的 sub 都是不同的,id_token 中还包含 name、picture、gender 等信息。
access_token 可以用来以用户身份请求开放 API。
限制
限流
所有应用下同一个用户的请求进行限流,这个用户指的是 Access Token 对应的用户,而不是创建应用的用户。
跨域请求
应用审核通过和主页地址的域名会被允许跨域请求开放 API。
样例
纯前端登录并获取学习数据
www.maimemo.com/pages/openapi-demo/index.html
安全说明
请勿将 client_secret 以任何方式泄露,一但发现应用会被停用,情况严重者可能会被禁止使用开放平台。
联系我们
可以加入飞书群进行问题反馈或建议