AlfaBB APIalfabb.com ↗
Access Alfa Romeo forum threads from AlfaBB via API. Search discussions by keyword, retrieve full post content, author data, reply counts, and pagination info.
What is the AlfaBB API?
The AlfaBB API provides 2 endpoints for searching and reading forum threads on alfabb.com, the Alfa Romeo owner community. The search_threads endpoint returns up to 20 thread results per page including title, forum section, reply count, view count, author, and a content snippet. The get_thread endpoint fetches full post content for any thread by its numeric ID, with replies paginated at up to 24 posts per page.
curl -X GET 'https://api.parse.bot/scraper/226fe410-4fee-446f-ad6f-34aad84bdb28/search_threads?page=1&query=engine+swap&title_only=true' \ -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 alfabb-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: AlfaBB Forum API — search threads and read posts."""
from parse_apis.AlfaBB_Forum_API import AlfaBB, TitleOnly, ThreadNotFound
alfabb = AlfaBB()
# Search for threads about engine swaps (title-only search)
for thread in alfabb.threads.search(query="engine swap", title_only=TitleOnly.TRUE, limit=5):
print(thread.title, thread.forum, thread.replies, thread.views)
# Drill into a single thread's posts
thread = alfabb.threads.search(query="engine swap", limit=1).first()
if thread:
for post in thread.posts.list(limit=3):
print(post.author, post.date, post.content[:80])
# Handle a thread that doesn't exist
try:
detail = alfabb.threads.get(thread_id="999999999")
print(detail.title)
except ThreadNotFound as exc:
print(f"Thread not found: {exc.thread_id}")
print("exercised: threads.search / threads.get / thread.posts.list")
Full-text search over AlfaBB forum threads. `query` matches thread titles by default; set `title_only` to 'false' to search full post content. Returns up to 20 results per page ordered by relevance. Each result includes thread metadata (title, forum, snippet, reply count, views, author, date) and a `thread_id` usable with get_thread.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for paginated results. Each page returns up to 20 results. |
| queryrequired | string | Search keywords to find matching forum threads. |
| title_only | string | Whether to search only thread titles. Accepts 'true' or 'false'. When 'false', searches full post content. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"query": "string echoing the search query",
"threads": "array of thread search result objects with thread_id, title, thread_slug, forum, snippet, replies, views, author, date",
"has_more": "boolean indicating if more pages of results exist"
},
"sample": {
"data": {
"page": 1,
"query": "engine swap",
"threads": [
{
"date": "2026-01-21T12:23:48-0500",
"forum": "Engine Conversions",
"title": "Engineswap4C into ‘81 Spider",
"views": "639",
"author": "S",
"replies": "28",
"snippet": "Have a 1981 with a bad engine...",
"thread_id": "747916",
"thread_slug": "engine-swap-4c-into-%E2%80%9881-spider"
}
],
"has_more": true
},
"status": "success"
}
}About the AlfaBB API
Searching Forum Threads
The search_threads endpoint accepts a query string and returns an array of matching thread objects. Each object includes thread_id, title, thread_slug, forum (the subforum name), snippet, replies, views, author, and date. By default the search matches against thread titles. Set title_only to 'false' to extend matching across full post content. Results are ordered by relevance and paginated; check has_more to determine whether additional pages exist before incrementing the page parameter.
Reading Full Thread Posts
Once you have a thread_id from search results, pass it to get_thread to retrieve the actual posts. The response contains a posts array where each object includes post_id, author, date, content (full post text), and reactions. The total_pages field tells you how many pages the thread spans, and has_more confirms whether a next page is available. Long threads with many replies are split at up to 24 posts per page.
Coverage and Scope
All data is scoped to alfabb.com, an English-language community forum focused on Alfa Romeo models, maintenance, and modifications. The search endpoint surfaces threads across all subforums — model-specific boards, technical help sections, and general discussion — without requiring you to specify a subforum upfront. The forum field in each result tells you which subforum the thread belongs to.
The AlfaBB API is a managed, monitored endpoint for alfabb.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when alfabb.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 alfabb.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 technical troubleshooting threads for a specific Alfa Romeo model using
queryandforumfields from search results - Build a fault-code lookup tool by searching AlfaBB for diagnostic trouble codes and retrieving matching thread content
- Monitor community discussion volume and engagement by tracking
repliesandviewsfields across search result pages - Extract owner-reported maintenance tips and restoration advice from full post
contentviaget_thread - Index Alfa Romeo part number discussions by searching part numbers and reading full thread posts for context
- Compile author activity data across threads using the
authorfield returned in both search results and individual posts
| 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 AlfaBB have an official developer API?+
What does `get_thread` return beyond the post text?+
post_id, author, date, content (full text of the post), and reactions. The thread-level response also includes title, thread_id, page, total_pages, and has_more for pagination control.Can I filter `search_threads` results by subforum or date range?+
forum field on returned thread objects to filter results client-side. You can fork this API on Parse and revise it to add subforum or date-range filtering as an input parameter.Does the API return user profiles or member statistics?+
How does pagination work across both endpoints?+
search_threads returns up to 20 results per page; get_thread returns up to 24 posts per page. Both expose a has_more boolean and accept an integer page parameter. For get_thread, total_pages gives the full page count upfront so you can determine how many requests a full thread fetch requires.