Rokomari APIrokomari.com ↗
Access Rokomari.com book data via API: search titles, get book details, browse categories, fetch quick deals, and retrieve bestseller award winners.
What is the Rokomari API?
The Rokomari.com API provides 6 endpoints for querying Bangladesh's largest online bookstore, covering book search, detailed metadata, category browsing, quick deals, and bestseller award winners. The search_books endpoint returns up to 60 results per page with title, author, offer price, regular price, and a slug you can pass directly into get_book_details for full specifications, ratings, and a text summary.
curl -X GET 'https://api.parse.bot/scraper/4bcf1cd4-c566-4d3a-a1f0-dc54e658ea15/search_books?page=1&query=Python' \ -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 rokomari-com-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.
from parse_apis.rokomari_book_store_api import Rokomari, BookSummary, Book, Category, Deal, AwardWinner
rokomari = Rokomari()
# Search for books
for book in rokomari.booksummaries.search(query="Python", limit=5):
print(book.title, book.author, book.offer_price)
# Drill into details for the first result
detail = book.details()
print(detail.title, detail.author, detail.summary)
print(detail.specifications)
print(detail.rating.average, detail.rating.total)
break
# Browse categories and their books
for category in rokomari.categories.list(limit=3):
print(category.id, category.name, category.slug)
# Use constructible category to get books directly
math = rokomari.category(id="2427")
for book in math.books(slug="math-olympiad", limit=5):
print(book.title, book.author, book.offer_price)
# List deals
for deal in rokomari.deals.list(limit=3):
print(deal.title, deal.price, deal.mrp, deal.discount_percentage, deal.in_stock)
# List award winners
for winner in rokomari.awardwinners.list(limit=5):
print(winner.author, winner.author_id)
Full-text search across all books on Rokomari.com. Returns paginated results (60 per page) matching the query against titles and authors. Supports both English and Bengali text queries. Each result includes pricing and a slug+id pair for drilling into details via get_book_details.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based) |
| queryrequired | string | Search keyword (supports English and Bengali text) |
{
"type": "object",
"fields": {
"page": "integer - current page number",
"items": "array of book objects with id, slug, title, author, offer_price, regular_price, url",
"query": "string - the search query used",
"total_results": "integer - total number of matching results"
},
"sample": {
"data": {
"page": 1,
"items": [
{
"id": "161870",
"url": "https://www.rokomari.com/book/161870/python-diye-programing-shekha-1st-theke-4th-part-rokomari-collection",
"slug": "python-diye-programing-shekha-1st-theke-4th-part-rokomari-collection",
"title": "পাইথন দিয়ে প্রোগ্রামিং শেখা",
"author": "তামিম শাহরিয়ার সুবিন",
"offer_price": "1106",
"regular_price": "1250"
}
],
"query": "Python",
"total_results": 138
},
"status": "success"
}
}About the Rokomari API
Search and Book Detail
The search_books endpoint accepts a query string (English or Bengali) and an optional page integer, returning paginated results of 60 items per page. Each item in the items array carries an id, slug, title, author, offer_price, regular_price, and a direct url. Pass any id and slug pair to get_book_details to retrieve the full record: a specifications object with key-value pairs covering Publisher, ISBN, Edition, Pages, and more; a summary text block; a rating object with average and total fields; and both price fields alongside a discount string.
Categories and Browse
The list_categories endpoint returns all available categories, each with an id, slug, name, and url. Use the category_id (required) and optionally the slug with get_books_by_category to page through titles in that category. The response mirrors the search shape — id, slug, title, author, offer_price, regular_price, and url — alongside the category_id and current page.
Deals and Awards
The get_quick_deals endpoint returns the active promotions on Rokomari, including price, mrp, discount_percentage, deal_price, deal_quantity, and sold_quantity for each deal item, plus an image URL and a link to the full deals page. The get_bestseller_award_page endpoint returns the page title and a winners array where each entry includes the author name, author_id, author_slug, and a profile url — useful for building curated author lists or award tracking features.
The Rokomari API is a managed, monitored endpoint for rokomari.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when rokomari.com 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 rokomari.com 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 Bengali-language book discovery app using
search_bookswith native Bengali query strings. - Track price differences between
offer_priceandregular_priceacross categories to surface the deepest discounts. - Aggregate book
specificationsfields (ISBN, Publisher, Pages) into a structured library catalog. - Monitor
get_quick_dealson a schedule to alert users when new time-limited promotions appear. - Compile a bestseller author directory from
get_bestseller_award_pagewinners with links to their profiles. - Build a category-level reading list browser using
list_categoriesandget_books_by_categorywith pagination. - Enrich a book recommendation engine with
rating.averageandrating.totalfields fromget_book_details.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Rokomari.com have an official public developer API?+
What does `get_book_details` return beyond what `search_books` includes?+
get_book_details endpoint adds a specifications object (Publisher, ISBN, Edition, Pages, and similar fields), a summary text description, and a rating object with average score and total count — none of which appear in the search_books response. Both endpoints share offer_price, regular_price, title, author, id, and slug.Does `search_books` return all results at once?+
total_results integer so you can calculate how many pages to request. Use the page parameter to walk through subsequent pages.Does the API expose customer reviews or individual user review text?+
rating.average and rating.total) from get_book_details, but individual review text, reviewer names, and review dates are not included in any endpoint response. You can fork this API on Parse and revise it to add an endpoint that retrieves individual review content.Can I look up an author's full profile or bibliography directly?+
get_bestseller_award_page endpoint returns award-winning author names, IDs, slugs, and profile URLs, but there is no dedicated author-profile or author-bibliography endpoint. You can fork this API on Parse and revise it to add an author detail endpoint using those slugs.