NovelBin APInovelbin.me ↗
Access NovelBin novel data via API: search titles, fetch chapter content, browse by genre, and retrieve trending or completed novel listings.
What is the NovelBin API?
The NovelBin API provides 11 endpoints covering novel search, full chapter text retrieval, genre browsing, and listing feeds across trending, popular, and completed categories. Call get_novel_details to pull a novel's title, author, genres, rating score and count, publication status, and synopsis in a single response. From there, get_novel_chapters returns the full chapter index, and get_chapter_content delivers the complete text of any individual chapter.
curl -X GET 'https://api.parse.bot/scraper/386a2968-f8d8-4fd3-b5da-8c640e6db70b/search_novels?query=shadow+slave' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace novelbin-me-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: NovelBin SDK — search, browse, and read novels."""
from parse_apis.novelbin_api import NovelBin, Genre, NovelNotFound
client = NovelBin()
# Search novels by keyword, capped at 3 results.
for novel in client.novels.search(query="shadow slave", limit=3):
print(novel.title, novel.author, novel.slug)
# Browse fantasy novels using the Genre enum.
for novel in client.novels.by_genre(genre=Genre.FANTASY, limit=5):
print(novel.title, novel.author)
# Get full details for a specific novel.
detail = client.novels.get(slug="shadow-slave")
print(detail.title, detail.status, detail.genres)
# Drill into a novel's chapter list and read the first chapter's content.
first_chapter = client.novel("shadow-slave").chapters.list(limit=1).first()
if first_chapter:
full_chapter = first_chapter.content()
print(full_chapter.title, full_chapter.content_[:80] if full_chapter.content_ else "")
# Navigate from a summary to full details with typed error handling.
top_hit = client.novels.search(query="cultivation", limit=1).first()
if top_hit:
try:
full = top_hit.details()
print(full.title, full.description[:80] if full.description else "")
except NovelNotFound as exc:
print(f"Novel not found: {exc.slug}")
# Discover related novels for an existing novel.
for related in client.novel("shadow-slave").related(limit=3):
print(related.title, related.slug)
print("exercised: novels.search / novels.by_genre / novels.get / chapters.list / chapter.content / details / related")
Full-text search over NovelBin's catalog by keyword. Returns matching novels with title, author, cover image, and latest chapter info. Results are not paginated — all matches for the keyword appear in a single response.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword (e.g. 'shadow slave', 'cultivation') |
{
"type": "object",
"fields": {
"items": "array of novel objects with title, slug, author, image_url, and latest_chapter",
"query": "the search keyword used"
},
"sample": {
"data": {
"items": [
{
"slug": "shadow-slave",
"title": "Shadow Slave",
"author": "Guiltythree",
"image_url": "https://images.novelbin.me/novel_200_89/shadow-slave.jpg",
"latest_chapter": {
"slug": null,
"title": "Chapter 3034 Forlorn Battlefield"
}
}
],
"query": "shadow slave"
},
"status": "success"
}
}About the NovelBin API
Novel Discovery and Search
search_novels accepts a keyword string — for example 'shadow slave' or 'cultivation' — and returns all matching novels in a single unpaginated response. Each result includes the novel's title, slug, author, cover image URL, and latest chapter info. The slug returned here is the identifier used across all other endpoints. For browsing without a specific title in mind, get_latest_release_novels, get_hot_novels, get_most_popular_novels, and get_completed_novels each return paginated feeds of 20 novels per page, with title, slug, author, and cover image.
Novel Details and Chapter Access
get_novel_details takes a novel slug and returns a full metadata object: title, author, an array of genre strings, a rating object with score and count fields, publication status (e.g. 'Ongoing' or 'Completed'), a synopsis in description, and cover_image_url. To navigate chapters, get_novel_chapters returns the complete ordered chapter list — potentially thousands of entries for long-running serials — where each entry carries a title and slug. Pass both novel_slug and chapter_slug to get_chapter_content to retrieve the full prose text of that chapter.
Genre Filtering and Related Novels
get_genres_list returns the full array of genre name strings available on NovelBin. Pass any of those genre names to get_novels_by_genre along with an optional page parameter to paginate results. get_related_novels accepts a novel slug and returns the sidebar list of related titles and their slugs — novels in the same genre that are currently trending — useful for building recommendation flows or expanding a dataset around a specific genre cluster.
The NovelBin API is a managed, monitored endpoint for novelbin.me — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when novelbin.me changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official novelbin.me API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a novel recommendation engine using genre arrays from
get_novel_detailsand related titles fromget_related_novels - Track publication status changes by periodically calling
get_novel_detailsand comparing thestatusfield - Compile a full-text corpus of web novel chapters using
get_novel_chapterscombined withget_chapter_content - Surface trending titles in a reading app by polling
get_hot_novelsandget_latest_release_novels - Filter a genre-specific reading list using
get_genres_listto enumerate categories thenget_novels_by_genreto paginate results - Aggregate author bibliographies by querying
search_novelswith an author name and collecting matching novel slugs - Build a completed-novels feed for readers who prefer finished series, using
get_completed_novelswith pagination
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does NovelBin have an official developer API?+
What does `get_novel_details` return beyond basic metadata?+
get_novel_details returns the novel's title, author, an array of genre strings, a rating object containing both a numeric score and a vote count, publication status, a full synopsis in the description field, and a cover image URL. It does not return chapter count or view count figures — those are not part of the response shape.Does `search_novels` support pagination or filtering by genre?+
search_novels returns all matching results for a keyword in a single unpaginated response. It does not support genre filters or sorting options. For genre-filtered browsing, use get_novels_by_genre with the genre parameter and the optional page integer. You can fork the API on Parse and revise it to add paginated search or combined keyword-plus-genre filtering.Are reader comments or reviews accessible through this API?+
How large can the response from `get_novel_chapters` be?+
title and a slug. Very large novels may produce response payloads that take longer to return and are worth caching on the client side.