fahrrad.de APIfahrrad.de ↗
Access product listings, technical specs, variant availability, and store locations from fahrrad.de via 6 structured endpoints. No scraping needed.
curl -X GET 'https://api.parse.bot/scraper/652bcc57-4e8f-4e9b-b0e5-09df1c2e3d7e/search_products?limit=5&query=Cube' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for products by keyword using the predictive search API. Returns matching products with title, price, vendor, and image.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return. |
| queryrequired | string | Search keyword (e.g. 'Cube', 'e-bike', 'helmet') |
{
"type": "object",
"fields": {
"total": "integer count of products returned",
"products": "array of product objects with title, handle, price, compare_at_price, vendor, image, url"
},
"sample": {
"data": {
"total": 10,
"products": [
{
"url": "https://www.fahrrad.de/products/cube-fahrradstander-cubestand-cmpt?_pos=1&_psq=Cube&_ss=e&_v=1.0",
"image": "https://cdn.shopify.com/s/files/1/0814/6724/4875/files/c3de746d75d9a62e6baae19e198ce697dcbf7e1f_391222_fb8e00.jpg?v=1776770799",
"price": "22.95",
"title": "CUBE Fahrradständer Cubestand CMPT",
"handle": "cube-fahrradstander-cubestand-cmpt",
"vendor": "Cube",
"compare_at_price": null
}
]
},
"status": "success"
}
}About the fahrrad.de API
The fahrrad.de API covers 6 endpoints that return structured bicycle and e-bike data including product titles, technical specification tables, variant pricing, and stock status. The get_product_details endpoint is the most data-dense, returning a specifications object of parsed spec sections alongside full variant arrays. Use search_products to find products by keyword, or list_collection to browse by category handle.
Product Search and Collection Browsing
The search_products endpoint accepts a query string (e.g. 'Cube', 'e-bike', 'helmet') and an optional limit integer. It returns an array of product objects containing title, handle, price, compare_at_price, vendor, image, and url. The compare_at_price field lets you identify products that are currently discounted. The handle values returned here can be passed directly into get_product_details or get_product_availability.
The list_collection endpoint takes a collection_handle string (e.g. 'e-bikes', 'sale', 'fahrraeder') along with page and limit for pagination. It returns full Shopify-style product objects including variants, images, options, tags, body_html, and product_type — substantially more fields than search results.
Product Details and Availability
get_product_details combines JSON product data with spec tables parsed from the product page, delivering a specifications object whose keys are spec section names (e.g. frame geometry, drivetrain) each mapping to key-value pairs of technical attributes. This makes it suitable for building comparison tools or filtering bikes by frame material, gear count, motor type, or brake standard without manual parsing.
get_product_availability is a lighter call that returns only the availability array: each entry has id, title, sku, available (boolean or null), and price. Use it for stock checks without fetching the full product payload.
Brands and Store Locations
list_brands returns all brands sold on fahrrad.de with name, handle, and url — useful for building brand-filtered browsing flows or validating vendor names from product results. list_stores returns physical retail locations with name, url, and handle, covering the fahrrad.de brick-and-mortar network.
- Build a bike comparison tool using
specificationsfields fromget_product_detailsacross multiple products - Monitor price drops by comparing
pricevscompare_at_pricefromsearch_productsresults - Check real-time variant stock status using the
availablefield fromget_product_availability - Enumerate all e-bike listings in the
'e-bikes'collection with full variant data vialist_collection - Aggregate brand catalogs using
list_brandshandles then querying each brand's collection - Build a store locator or in-store pickup feature using
list_storeslocation data - Track SKU availability across size and color variants for inventory intelligence using
skuandavailablefields
| 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 | 250 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 fahrrad.de have an official developer API?+
What does the `specifications` field in `get_product_details` actually contain?+
available field on variants can be boolean or null; null typically means availability is undetermined rather than out of stock.Does the API return customer reviews or ratings for products?+
How does pagination work in `list_collection`?+
page (integer) and limit (integer) parameters. Results are returned as an array under the products key. If a collection has more products than the limit value, increment the page parameter to retrieve the next batch. There is no explicit total-count field in the collection response, so you iterate until the returned array is smaller than the requested limit.Can I filter `list_collection` results by price range, frame size, or other attributes?+
collection_handle, page, and limit. Attribute filtering must be done client-side against the returned variants and tags fields. You can fork the API on Parse and revise it to add server-side filtering logic over those fields.