MyAnimeList API (官方) logo

MyAnimeList API (官方)

MyAnimeList API (官方)

未知免费media

MyAnimeList 的官方 API v2(https://api.myanimelist.net/v2)。读公开数据需注册应用拿 Client ID 并带 X-MAL-CLIENT-ID 头;任何涉及具体用户的操作(读/写其动画/漫画列表、状态、评分)需完整 OAuth2 授权码流程。它是唯一能以用户身份认证、并写入用户列表的 MyAnimeList API——这正是它相对非官方的 Jikan 不可替代的地方。限流未公布,实践上建议约 1 req/秒。免费。

适合什么时候用

唯一能写用户列表:以登录用户身份读写状态、评分、列表条目,这是 Jikan 永远做不到的

先注意什么

OAuth2 摩擦大:要注册应用、实现授权码流程、处理 redirect URI、存储和刷新 token——只展示公开数据时这全是白费功夫

第一步先查

在 https://myanimelist.net/apiconfig 注册一个应用,拿到 Client ID。读公开数据时带 HTTP 头 X-MAL-CLIENT-ID: YOUR_CLIENT_ID,例如 GET https://api.myanimelist.net/v2/anime?q=frieren&limit=5。要读写某个用户自己的列表,实现 OAuth2 授权码流程:用户登录授权后你拿到 access token,再带 Authorization: Bearer USER_ACCESS_TOKEN 调用 /users/@me/animelist 等端点。限流没有官方文档,保守按约 1 req/秒。如果你的功能只展示公开数据、不碰用户账号,考虑改用零认证的 Jikan 省掉整套 OAuth2。

认证
oauth
CORS
?
HTTPS
注册
需要
协议
REST
计费
free

可用率 · 30 天窗口

日常巡检数据收集后将在此处显示。
01

关于这个 API

MyAnimeList 官方 API v2 是 MyAnimeList 自家提供的接口,基址 https://api.myanimelist.net/v2。它和非官方的 Jikan 有两处关键不同。第一,即便读公开数据也要标明应用身份:你在 https://myanimelist.net/apiconfig 注册一个应用拿到 Client ID,并把它作为 X-MAL-CLIENT-ID 头发送;少了这个头,公开读取会以未授权错误失败。第二,任何涉及具体用户的操作——读他的列表(含私有条目)、更新追番状态(在看/看完/搁置/抛弃/想看)、设置或修改评分、增删列表条目——都需要完整的 OAuth2 授权码流程:用户登录并授权你的应用,你拿到一个绑定该用户的 access token。这条 OAuth2 路径正是官方 API 对大多数开发者存在的全部理由,也是它相对 Jikan 不可替代的地方:只有它能以用户身份认证并写入用户列表。代价是实打实的摩擦——从「发个 GET」变成注册应用、实现 OAuth2、处理 redirect URI、存储和刷新 token、管理每用户的 scope。如果你的功能根本不碰用户账号,这就是白费的工作。限流方面官方没有公布明确数字,社区共识是保守按约 1 req/秒以避免被限。现实中很多 MyAnimeList 集成两个 API 一起用:公开目录(搜索、详情、季度、排行)用零认证、覆盖面广的 Jikan,只在登录用户读写自己列表那一薄片上用官方 API 的 OAuth2——公开的大头享受 Jikan 的零摩擦,只为真正需要的小部分付 OAuth2 的代价。

02

你可以做什么

  • 1追番应用的写入路径:让用户用 MyAnimeList 账号登录,读/写其追番状态、评分、增删列表条目——只有官方 API 能做
  • 2账号同步与备份:通过 OAuth2 读取用户完整的动画/漫画列表(含私有条目)做导出或跨端同步
  • 3需要实时准确的展示:直连官方拿最新公开数据,避免 Jikan 缓存延迟
03

优劣对比

优点

  • 唯一能写用户列表:以登录用户身份读写状态、评分、列表条目,这是 Jikan 永远做不到的
  • 数据实时:直连官方源,没有缓存延迟
  • 官方且免费:MyAnimeList 自家维护,无付费档,稳定性有官方背书

注意事项

  • OAuth2 摩擦大:要注册应用、实现授权码流程、处理 redirect URI、存储和刷新 token——只展示公开数据时这全是白费功夫
  • 连公开读取也要 Client ID:少了 X-MAL-CLIENT-ID 头公开读取就以未授权失败,不像 Jikan 完全零认证
  • 限流未公布:没有明确的速率文档,只能保守按约 1 req/秒来用
04

官方快速开始

在官方文档查看快速开始:myanimelist.net

05

快速开始

在 https://myanimelist.net/apiconfig 注册一个应用,拿到 Client ID。读公开数据时带 HTTP 头 X-MAL-CLIENT-ID: YOUR_CLIENT_ID,例如 GET https://api.myanimelist.net/v2/anime?q=frieren&limit=5。要读写某个用户自己的列表,实现 OAuth2 授权码流程:用户登录授权后你拿到 access token,再带 Authorization: Bearer USER_ACCESS_TOKEN 调用 /users/@me/animelist 等端点。限流没有官方文档,保守按约 1 req/秒。如果你的功能只展示公开数据、不碰用户账号,考虑改用零认证的 Jikan 省掉整套 OAuth2。

06

常见问题

官方 MyAnimeList API 和 Jikan 怎么选?+

看你的功能碰不碰某个具体用户的账号。只展示公开数据(搜索、详情、季度、排行)用零认证的 Jikan;要读写登录用户自己的列表、状态、评分,只能用官方 API v2 的 OAuth2。很多应用两个都用。

官方 MyAnimeList API 读公开数据也要认证吗?+

要。即便只读公开数据,也得在 https://myanimelist.net/apiconfig 注册应用拿 Client ID,并带 X-MAL-CLIENT-ID 头;少了它公开读取会失败。完整 OAuth2 只在涉及用户自己列表时才需要。

官方 MyAnimeList API 的限流是多少?+

官方没有公布明确速率上限。社区共识是保守按约 1 req/秒使用以避免被限流。

官方 MyAnimeList API 收费吗?+

免费。它没有付费档,真正的「成本」是 OAuth2 集成的工作量,而不是钱。

07

技术细节

CORS: ?HTTPS: Yes注册: Yes开源: No
认证方式
oauth
计费
free
速率限制
Rate limits are not officially published. The community consensus is to stay at roughly 1 request/second to avoid throttling. Public reads require the X-MAL-CLIENT-ID header (your registered Client ID); user-scoped reads/writes require an OAuth2 access token.
免费额度
Free to use. You must register an application at https://myanimelist.net/apiconfig to obtain a Client ID. No paid tiers; the cost is the OAuth2 integration work, not money.
协议
REST
SDK
JavaScript, Python, Go
08

标签