BK8 Plus APIbk8-plus.com ↗
Access BK8 Plus sports betting and casino blog posts, static pages, and categories via 4 REST endpoints. Filter by category, paginate results, and fetch full HTML content.
What is the BK8 Plus API?
The BK8 Plus API exposes 4 endpoints for retrieving content from BK8 Plus, a sports betting and online casino content platform. Use list_posts to browse paginated blog post summaries with titles, excerpts, slugs, and category IDs, or call get_post with a slug to fetch the full rendered HTML content and metadata of any individual article. Category filtering and static page retrieval are also supported.
curl -X GET 'https://api.parse.bot/scraper/9df94530-a1c2-42ec-9542-afdd4030c6d8/list_posts?page=1&per_page=5' \ -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 bk8-plus-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.
"""Walkthrough: BK8 Plus SDK — bounded, re-runnable; every call capped."""
from parse_apis.bk8_plus_com_api import BK8Plus, ContentNotFound
client = BK8Plus()
# List categories to understand the site's navigation structure
for cat in client.categories.list(limit=3):
print(cat.name, cat.slug, cat.count)
# List recent posts, optionally filtered by category
for post in client.posts.list(limit=3):
print(post.title, post.date, post.slug)
# Drill down into a specific post by slug
item = client.posts.list(limit=1).first()
try:
full = client.posts.get(slug=item.slug)
print(full.title, full.date, full.link)
except ContentNotFound as e:
print("not found:", e.slug)
# Retrieve a static page for site structure
page = client.pages.get(slug="online-casino")
print(page.title, page.link)
print("exercised: categories.list, posts.list, posts.get, pages.get")
Retrieve blog posts with optional category filtering. Results are paginated; each post includes title, excerpt, date, slug, and category IDs. Use a category ID from list_categories to filter by topic.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| category | string | Category ID to filter posts. Obtain IDs from list_categories endpoint. |
| per_page | integer | Number of posts per page (1-100). |
{
"type": "object",
"fields": {
"page": "current page number",
"posts": "array of post summaries with id, title, slug, date, excerpt, categories, and featured_media",
"total": "total number of posts available (may be null)",
"per_page": "items per page",
"total_pages": "total number of pages (may be null)"
},
"sample": {
"data": {
"page": 1,
"posts": [
{
"id": 2224,
"date": "2026-07-17T11:42:00",
"link": "https://bk8-plus.com/france-vs-england-world-cup-betting-preview/",
"slug": "france-vs-england-world-cup-betting-preview",
"title": "France vs England World Cup Betting Preview",
"author": 4,
"excerpt": "<p>France vs England is one of the biggest fixtures in the 2026 World Cup...</p>\n",
"modified": "2026-07-17T11:47:09",
"categories": [
1
],
"featured_media": 2227
}
],
"total": null,
"per_page": 5,
"total_pages": null
},
"status": "success"
}
}About the BK8 Plus API
Blog Posts and Pagination
The list_posts endpoint returns an array of post summaries, each containing id, title, slug, date, excerpt, categories, and featured_media. Pagination is controlled with the page and per_page parameters (1–100 items per page). The response also includes total and total_pages fields, though these may be null depending on the query. To narrow results to a specific topic — such as sports betting previews or casino game guides — pass a category parameter using an ID obtained from list_categories.
Full Post and Page Content
Calling get_post with a post's slug returns the complete content field as rendered HTML, alongside author, modified date, link, and the categories array the post belongs to. The get_page endpoint works similarly for static site pages such as online-casino, sports-betting, esports-betting, and faq. Page responses include a parent field (0 for top-level pages) to reflect the site's page hierarchy.
Categories and Filtering
list_categories returns the full category list with no required inputs. Each category object includes id, name, slug, description, parent (for nested categories), post count, and link. These IDs feed directly into the category filter on list_posts, making it straightforward to scope content retrieval to a particular section of the site.
The BK8 Plus API is a managed, monitored endpoint for bk8-plus.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bk8-plus.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 bk8-plus.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?+
- Aggregate sports betting preview articles filtered by a specific category ID for a content digest tool
- Sync BK8 Plus blog post slugs and dates to detect newly published content
- Pull full HTML content from
get_postto extract odds, team names, or match details from betting articles - Retrieve static page content via
get_pageto mirror site sections like FAQ or Esports Betting in a third-party app - Map category hierarchies using
parentIDs fromlist_categoriesto build a structured content taxonomy - Track post modification dates from the
modifiedfield to identify updated betting guides or promotional pages
| 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 BK8 Plus have an official developer API?+
How do I filter blog posts by topic using `list_posts`?+
category parameter with an integer ID from the list_categories endpoint. Each category object includes id, name, and slug, so you can match a topic like 'sports-betting' or 'online-casino' to its ID before filtering. Results are paginated; use page and per_page to step through them.Are author profiles or user data available through this API?+
author field containing a numeric author ID, but no endpoint resolves that ID into a profile, name, or biography. You can fork this API on Parse and revise it to add an author-detail endpoint if that data is needed.Can I retrieve comments or user-submitted content from posts?+
Are the `total` and `total_pages` fields in `list_posts` always populated?+
total and total_pages may be null depending on the query, so pagination logic should not rely on them exclusively. Use the presence of results in the posts array to determine whether additional pages exist.