hood APIhood.de ↗
Access hood.de marketplace data via 5 endpoints: search listings, fetch product details, browse categories, get autocomplete, and retrieve featured deals.
What is the hood API?
The hood.de API provides 5 endpoints for accessing Germany's hood.de marketplace, covering product search, full product detail pages, category hierarchy, autocomplete suggestions, and featured deals. The search_products endpoint returns up to 48 listings per page with price, seller type, and rating data, while get_product_details delivers structured fields including EAN, brand, condition, images, and a full description for any individual listing.
curl -X GET 'https://api.parse.bot/scraper/c0b8c4ee-4db9-4f03-9a76-a79868f148a7/search_products?page=1&query=laptop&condition=new&category_id=0' \ -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 hood-de-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.hood_de_api import Hood, Product, ProductDetail, Category, Suggestion, Deal, Condition
client = Hood()
# Search for products using the Condition enum
for product in client.products.search(query="laptop", condition=Condition.NEW, category_id=0):
print(product.title, product.price, product.seller_type)
# Navigate from search result to full detail
detail = product.details()
print(detail.title, detail.price, detail.condition, detail.description[:80])
break
# Browse all categories
for category in client.categories.list():
print(category.name)
for sub in category.subcategories:
print(sub.name, sub.url)
# Get autocomplete suggestions
for suggestion in client.suggestions.search(query="handy"):
print(suggestion.value, suggestion.link, suggestion.topTermFlag)
# Get featured deals
for deal in client.deals.list():
print(deal.title, deal.price, deal.discount)
Full-text search across hood.de listings. Filters by condition (new/used/both) and category. Returns up to 48 products per page sorted by relevance. Each product includes id, title, price, image, seller type, and rating summary.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| queryrequired | string | Search keyword. |
| condition | string | Filter by item condition. |
| category_id | integer | Category ID to filter by. 0 means all categories. |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"query": "string, the search keyword used",
"products": "array of product objects with id, title, url, price, price_value, image, seller_type, rating",
"total_on_page": "integer, number of products returned on this page"
},
"sample": {
"data": {
"page": 1,
"query": "laptop",
"products": [
{
"id": "92571966",
"url": "https://www.hood.de/i/auto-aufkleber-udo-keine-panik-s040-in-10cm-jdm-oem-sticker-wunschfarbe-92571966.htm",
"image": "https://i.hood.de/fit-in/396x396/images/44613/446137700.jpg",
"price": "8,79 €",
"title": "Auto Aufkleber Udo Keine Panik S040 in 10cm",
"rating": "5.00 Sterne - 136 Bewertungen",
"price_value": "8.79",
"seller_type": "commercial"
}
],
"total_on_page": 46
},
"status": "success"
}
}About the hood API
Search and Product Data
The search_products endpoint accepts a query string plus optional filters for condition (new, used, or both) and category_id. It returns a products array where each object includes id, title, url, price, price_value, image, seller_type, and a rating summary. Pagination is handled via the page parameter, with total_on_page telling you how many results were returned on the current page.
For single-item lookup, get_product_details takes a full hood.de product URL and returns a detailed object: ean, brand, condition, images (as an array of URLs), a properties key-value object for structured attributes, and the complete description text. If the product page no longer exists, the endpoint returns a stale_input signal rather than an error.
Categories, Autocomplete, and Deals
get_categories requires no inputs and returns the full category tree — top-level categories each with a subcategories array containing names and URLs. This is the recommended way to discover valid category_id values for use in search_products. The get_autocomplete_suggestions endpoint accepts a partial query and returns three arrays: searchTerms (with topTermFlag popularity indicators), categories, and manufacturers — matching the suggestion behavior on the hood.de search bar.
get_hood_deals retrieves the current Hood Deals promotional page, returning a deals array where each item includes title, url, price, discount (percentage when available), and image. No inputs are required. This endpoint is useful for monitoring active promotions or price-tracking discounted items.
The hood API is a managed, monitored endpoint for hood.de — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when hood.de 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 hood.de 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?+
- Monitor price changes on specific hood.de listings using
get_product_detailsand thepricefield. - Build a product comparison tool by searching across conditions (new/used) with
search_productsand theconditionfilter. - Populate a category-browsing UI using the full hierarchy returned by
get_categories. - Track featured promotions and discounts with
get_hood_dealsto surface deal alerts. - Implement search autocomplete in a German marketplace app using
get_autocomplete_suggestionswith thesearchTermsarray. - Extract structured product attributes — brand, EAN, condition, properties — from hood.de for catalog enrichment via
get_product_details. - Identify active sellers and their types by aggregating
seller_typefromsearch_productsresults across queries.
| 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 hood.de offer an official developer API?+
What does `get_product_details` return beyond what search provides?+
get_product_details endpoint returns fields not present in search results: ean (EAN/GTIN barcode), brand, condition, an images array of all product image URLs, a properties key-value object for structured attributes like size or material, and the full description text. Search results only expose a single image, price, seller_type, and rating.How does pagination work in `search_products`, and is there a total result count?+
page parameter controls which page of results to retrieve. Each page returns up to 48 products, and total_on_page indicates how many were actually returned. The endpoint does not currently return a total result count across all pages, so you determine the end of results when total_on_page drops below 48 or returns zero.Does the API expose seller profile pages or individual seller inventory?+
seller_type in search results and product detail, but does not expose dedicated seller profile pages, full seller inventory listings, or seller feedback history. You can fork this API on Parse and revise it to add a seller-focused endpoint.Does `get_product_details` handle removed or expired listings?+
stale_input signal instead of throwing an error, allowing your application to handle delisted products gracefully.