AniList API: Get airing schedule
Lists upcoming AniList anime episodes ordered by air time, with air times in the chosen time zone and available streaming links.
Unofficial. Not affiliated with or endorsed by AniList.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Time Zone optional
time_zone City or time zone name for air times, for example New York or America/New_York.
New York
Default
UTC.- Days Ahead optional
days_ahead Number of days ahead to include, for example 7.
7
Whole number from 1 to 14. Default
7.- Max Results optional
max_results Maximum number of upcoming episodes to return, for example 100.
100
Whole number from 1 to 500. Default
100.
Input as JSON
{ "time_zone": "New York", "days_ahead": 7, "max_results": 100}Output
{ "airing_episodes": [ { "format": "TV SHORT", "air_time": "2026-10-23T05:40:00-04:00", "anilist_id": 194207, "anime_title": "Pan Dorobou", "anilist_link": "https://anilist.co/anime/194207" , "episode_number": 4, "total_episodes": null, "streaming_links": [], "cover_image_link": "https://s4.anilist.co/file/anilistcdn/media/anime/cover/medium/bx194207-7n4M6jOwLdcF.jpg" }, { "format": "TV", "air_time": "2026-10-23T05:55:00-04:00", "anilist_id": 158871, "anime_title": "Pokémon Horizons: The Series", "anilist_link": "https://anilist.co/anime/158871" , "episode_number": 154, "total_episodes": null, "streaming_links": [ { "link": "https://www.netflix.com/title/81696980" , "site_name": "Netflix" } ], "cover_image_link": "https://s4.anilist.co/file/anilistcdn/media/anime/cover/medium/bx158871-GBM9AMDfDRSu.jpg" }, { "format": "TV", "air_time": "2026-10-23T06:00:00-04:00", "anilist_id": 165159, "anime_title": "BEYBLADE X", "anilist_link": "https://anilist.co/anime/165159" , "episode_number": 136, "total_episodes": null, "streaming_links": [ { "link": "https://www.netflix.com/title/81924739" , "site_name": "Netflix" }, { "link": "https://www.hulu.com/series/0e46c665-5191-407f-8dc5-e22a0095578c" , "site_name": "Hulu" } ], "cover_image_link": "https://s4.anilist.co/file/anilistcdn/media/anime/cover/medium/bx165159-aCFC9Sng7t4M.png" } ]}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"anilist.co/get_airing_schedule","input":{"time_zone":"New York","days_ahead":7,"max_results":100}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "anilist.co/get_airing_schedule" , "input": { "time_zone": "New York", "days_ahead": 7, "max_results": 100 }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "anilist.co/get_airing_schedule" , "input": { "time_zone": "New York", "days_ahead": 7, "max_results": 100 } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run anilist.co/get_airing_schedule# with {"time_zone":"New York","days_ahead":7,"max_results":100}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "properties": { "time_zone": { "type": "string", "default": "UTC", "description": "City or time zone name for air times, for example New York or America/New_York." }, "days_ahead": { "type": "integer", "default": 7, "maximum": 14, "minimum": 1, "description": "Number of days ahead to include, for example 7." }, "max_results": { "type": "integer", "default": 100, "maximum": 500, "minimum": 1, "description": "Maximum number of upcoming episodes to return, for example 100.", "x-fous-developer": true } }, "additionalProperties": false}Output schema
{ "type": "object", "required": [ "airing_episodes" ], "properties": { "airing_episodes": { "type": "array", "items": { "type": "object", "required": [ "air_time", "anime_title", "episode_number", "total_episodes", "format", "streaming_links", "cover_image_link", "anilist_link", "anilist_id" ], "properties": { "format": { "type": [ "string", "null" ], "description": "Anime format such as TV or ONA." }, "air_time": { "type": "string", "format": "date-time", "description": "Scheduled episode time in the chosen time zone, with UTC offset." }, "anilist_id": { "type": "integer", "x-fous-developer": true }, "anime_title": { "type": "string", "description": "English anime title, or romanized Japanese title." }, "anilist_link": { "type": "string" }, "episode_number": { "type": "integer" }, "total_episodes": { "type": [ "integer", "null" ] }, "streaming_links": { "type": "array", "items": { "type": "object", "required": [ "site_name", "link" ], "properties": { "link": { "type": "string" }, "site_name": { "type": "string" } }, "additionalProperties": false } }, "cover_image_link": { "type": [ "string", "null" ] } }, "additionalProperties": false } } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
anilist.co/get_airing_schedule- Returns
- air time, anime title, episode number, format, streaming links, AniList link
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method anilist.co/get_airing_schedule with the inputs above.
Ask your agent
- What anime episodes air in the next 3 days, shown in Tokyo time?
- Show me the upcoming anime releases for this week with streaming links in New York time.
- Which episodes of currently airing shows come out tomorrow, and where can I watch them?
- List the next 20 anime episodes airing in London time over the coming two weeks.
- On AniList, what's on the airing schedule for the next 5 days in Pacific time?
See more
All AniList methodsFinds the most popular anime matching a name on AniList and returns its next scheduled episode with local air time, status, episode count and streaming links.
anilist.co/get_next_episodeLooks up an anime on MyAnimeList by English or Japanese name, or by a MyAnimeList anime link. For ambiguous names it returns the most popular match.
myanimelist.net/get_animeLists MyAnimeList's top anime in rank order for a selected ranking (all, airing, upcoming, TV, movies or most popular), with English title, score, type, episodes, airing dates and members.
myanimelist.net/list_top_animeLists anime in a MyAnimeList season sorted by members, with scores, episode counts, studio, genres and links. Continuing TV series are optional.
myanimelist.net/list_seasonal_animeGets the TV broadcasts scheduled in a country for a date from TVmaze. It can also add local and worldwide streaming releases. Airtimes are shown in the service's timezone, or in UTC when the service has none.
tvmaze.com/get_tv_scheduleReturns a Twitch channel's public upcoming stream schedule for the next 1 to 30 days, with start and end times, titles, categories and cancellations.
twitch.tv/get_stream_scheduleLists MLB games and scores for a date or up to seven days, optionally for one team. Start times are shown in the requested time zone.
mlb.com/get_scoresLooks up a TV show by name or TVmaze link and returns its status, schedule, rating, next and previous episodes, and optionally the full episode list including specials.
tvmaze.com/get_show