WEBTOON API: Get series
Finds a WEBTOON series by name and returns its public details and newest publicly listed episodes. App-only episodes are excluded, and the public site shows no numeric rating.
Unofficial. Not affiliated with or endorsed by WEBTOON.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Series, required
series Series name, such as Lore Olympus.
Omniscient Reader
- Language optional
language Language of the WEBTOON edition, such as English or Spanish.
English (default)
- Max Episodes optional
max_episodes Maximum number of latest episodes to list, such as 10.
12
Whole number from 1 to 50. Default
10.
Input as JSON
{ "series": "Omniscient Reader", "max_episodes": 12}Output
{ "genre": "Action", "title": "Omniscient Reader", "rating": null, "status": "ongoing", "authors": [ "singNsong", "UMI", "Sleepy-C" ], "summary": "Dokja was an average office worker whose sole interest was reading his favorite web novel 'Three Ways to Survive the Apocalypse.' But when the novel suddenly becomes reality, he is the only person who knows how the world will end. Armed with this realization, Dokja uses his understanding to change t…", "episodes": [ { "date": "2026-06-01", "link": "https://www.webtoons.com/en/action/omniscient-reader/episode-308/viewer?title_no=2154&episode_no=309" , "title": "Episode 308", "like_count": 37197, "episode_number": 309 }, { "date": "2026-05-25", "link": "https://www.webtoons.com/en/action/omniscient-reader/episode-307/viewer?title_no=2154&episode_no=308" , "title": "Episode 307", "like_count": 35574, "episode_number": 308 }, { "date": "2026-05-18", "link": "https://www.webtoons.com/en/action/omniscient-reader/episode-306/viewer?title_no=2154&episode_no=307" , "title": "Episode 306", "like_count": 36690, "episode_number": 307 } ], "series_link": "https://www.webtoons.com/en/action/omniscient-reader/list?title_no=2154" , "series_type": "WEBTOON Original", "total_views": 599700000, "title_number": 2154, "update_schedule": "Every Tuesday", "cover_image_link": "https://swebtoon-phinf.pstatic.net/20251108_229/17625507016773FMqp_JPEG/4) Thumb_Poster_2154.jpg?type=crop540_540" , "subscriber_count": 4500000}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"webtoons.com/get_series","input":{"series":"Omniscient Reader","max_episodes":12}}' # 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": "webtoons.com/get_series" , "input": { "series": "Omniscient Reader", "max_episodes": 12 }})# 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": "webtoons.com/get_series" , "input": { "series": "Omniscient Reader", "max_episodes": 12 } }), 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 webtoons.com/get_series# with {"series":"Omniscient Reader","max_episodes":12}"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", "required": [ "series" ], "properties": { "series": { "type": "string", "minLength": 1, "description": "Series name, such as Lore Olympus." }, "language": { "type": "string", "default": "English", "description": "Language of the WEBTOON edition, such as English or Spanish." }, "max_episodes": { "type": "integer", "default": 10, "maximum": 50, "minimum": 1, "description": "Maximum number of latest episodes to list, such as 10." } }}Output schema
{ "type": "object", "required": [ "title", "authors", "series_link", "title_number", "episodes" ], "properties": { "genre": { "type": [ "string", "null" ] }, "title": { "type": "string" }, "rating": { "type": [ "number", "null" ] }, "status": { "type": [ "string", "null" ] }, "authors": { "type": "array", "items": { "type": "string" } }, "summary": { "type": [ "string", "null" ] }, "episodes": { "type": "array", "items": { "type": "object", "properties": { "date": { "type": [ "string", "null" ] }, "link": { "type": "string" }, "title": { "type": "string" }, "like_count": { "type": [ "integer", "null" ] }, "episode_number": { "type": "integer" } } } }, "series_link": { "type": "string" }, "series_type": { "type": "string" }, "total_views": { "type": [ "integer", "null" ] }, "title_number": { "type": "integer" }, "update_schedule": { "type": [ "string", "null" ] }, "cover_image_link": { "type": [ "string", "null" ] }, "subscriber_count": { "type": [ "integer", "null" ] } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
webtoons.com/get_series- Returns
- title, authors, genre, summary, subscribers, views, schedule, status, cover, episodes
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 webtoons.com/get_series with the inputs above.
Ask your agent
- Find the WEBTOON series Lore Olympus and show me its author, genre, schedule, and latest 10 public episodes in English
- What are the newest public episodes and status of Tower of God on webtoons.com?
- Look up the Spanish edition of Solo Leveling on WEBTOON and list its summary, cover, and up to 20 latest episodes
- I want to know the subscriber count, views, and publishing schedule for the series Omniscient Reader's Viewpoint in English
- Get details on the WEBTOON series True Beauty, including authors and its 5 most recent episodes
See more
All WEBTOON methodsLists popular or trending WEBTOON series in ranking order, with authors and displayed subscriber and view counts. Genre filtering keeps matching series from the public top 30.
webtoons.com/list_rankingsGets public Crunchyroll series details by series name or series link; matches a series title rather than a movie.
crunchyroll.com/get_seriesFinds a TV show on TMDB by exact name or TMDB show link and returns its details, cast, seasons, the last aired and next scheduled episodes, and the streaming services listed for a chosen country.
themoviedb.org/get_tv_showGets an Apple Podcasts show's details and its newest available episodes, by show name or Apple Podcasts link.
podcasts.apple.com/get_podcastGets one Netflix movie or series by its exact name or Netflix title URL: title details, publicly shown seasons and episodes, and whether it is available in a given country's catalogue (checked against public JustWatch listings).
netflix.com/get_movie_or_showLooks 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_showGets a manga, manhwa or light novel from MyAnimeList by title or by MyAnimeList link. When several entries share the top result's title, it returns the most popular one.
myanimelist.net/get_mangaFinds a Substack newsletter by name or web address and returns its latest public posts with dates, authors, access level and engagement counts.
substack.com/list_newsletter_posts