Anime
Per-anime details: episode listings, missing-episode reports, score, sync flags
Returns one DupSet per episode that has 2+ media files, with each file's parsed metadata and the currently preferred file id.
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Response Body
application/json
curl -X GET "https://example.com/api/v1/anime/0/duplicates"[ { "anime_id": "string", "anime_title": "string", "episode_id": "string", "episode_number": 0.1, "preferred_id": "string", "manually_set": true, "files": [ { "id": "string", "path": "string", "filename": "string", "size_bytes": 0, "resolution": 0, "subgroup": "string", "mod_time": "2019-08-24T14:15:22Z" } ], "wasted_bytes": 0 }]Returns which episodes the library has, which are missing, and which are still pending future airings.
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Response Body
application/json
curl -X GET "https://example.com/api/v1/anime/0/missing"{ "anime_id": "string", "bangumi_id": 0, "title": "string", "total": 0, "have": [ 0 ], "missing": [ 0 ], "airing_pending": [ 0 ], "unknown_total": true, "generated_at": "2019-08-24T14:15:22Z"}Merges the requested episode numbers into an existing bangumi-scoped download rule, or creates a new one when none exists. rss_feed_id is required only when creating a new rule.
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/anime/0/missing/auto-rule" \ -H "Content-Type: application/json" \ -d '{ "episode_numbers": [ 0 ] }'{ "rule_id": "string", "episode_range": "string", "action": "created"}Adds the magnet (or torrent_url) to the downloader and records a downloads row linked to the anime's bangumi_id and library.
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/anime/0/missing/download" \ -H "Content-Type: application/json" \ -d '{}'{ "download_id": "string", "gid": "string"}Aggregates results across configured torrent providers, deduped and ranked best-first (alive seeders, higher resolution, more seeders, larger size, known subgroup).
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v1/anime/0/missing/search" \ -H "Content-Type: application/json" \ -d '{ "episode_number": 0 }'{ "results": [ { "title": "string", "magnet": "string", "torrent_url": "string", "size_bytes": 0, "size_display": "string", "seeders": 0, "leechers": 0, "info_hash": "string", "provider": "string", "published_at": "2019-08-24T14:15:22Z", "parsed": { "title": "string", "season": 0, "episode": 0.1, "resolution": 0, "sub_group": "string", "video_codec": "string", "audio_codec": "string", "container": "string", "language": "string", "release_type": "string" } } ]}Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
Response Body
application/json
curl -X GET "https://example.com/api/v1/anime/0/playable-episodes"[ { "episode": { "bangumi_episode_id": 0, "sort": 0, "title": "string", "title_original": "string", "air_date": "string", "synopsis": "string" }, "media_file": { "id": "string", "library_id": "string", "path": "string", "filename": "string", "size": 0, "duration": 0, "bangumi_id": 0, "bangumi_episode_id": 0, "episode_number": 0, "created_at": "string", "updated_at": "string" }, "progress": { "id": "string", "media_file_id": "string", "episode_id": 0, "position_seconds": 0, "duration_seconds": 0, "completed": true, "updated_at": "string" } }]Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X PATCH "https://example.com/api/v1/anime/0/score" \ -H "Content-Type: application/json" \ -d '{ "score": 0 }'Set sync_disabled (0|1) to opt out of outgoing tracker sync, and/or watch_status_override to pin a canonical watch status. Omitted fields keep their current value.
Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
int64Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X PATCH "https://example.com/api/v1/anime/0/sync-flags" \ -H "Content-Type: application/json" \ -d '{}'Authorization
bearerAuth Pass an API token obtained from POST /api/v1/auth/login or POST /api/v1/api-tokens. Tokens have the prefix mlml_.
In: header
Path Parameters
Response Body
application/json
curl -X GET "https://example.com/api/v1/anime/0/offline-manifest"{ "bangumi_id": 0, "title": "string", "episodes": [ { "episode_id": "string", "number": 0, "title": "string", "file": { "id": "string", "url": "string", "size_bytes": 0, "etag": "string", "container": "string", "width": 0, "height": 0, "video_codec": "string" }, "subtitles": [ { "index": 0, "language": "string", "title": "string", "url": "string" } ], "danmaku_url": "string" } ]}