Decathlon APIdecathlon.fr ↗
Search Decathlon France products, retrieve prices, descriptions, images, variants, and customer reviews via 4 structured JSON endpoints.
What is the Decathlon API?
The Decathlon.fr API provides 4 endpoints to query sporting goods listed on decathlon.fr, covering product search, detailed product data, customer reviews, and autocomplete suggestions. The search_products endpoint returns up to 40 products per page with pricing, brand, images, and pagination metadata. get_product_details exposes color variants, sport categories, eco-design tags, and SKU-level data. Together they give structured access to Decathlon France's catalogue without manual browsing.
curl -X GET 'https://api.parse.bot/scraper/961694c7-1bda-4ace-bfc8-4675353abcab/search_products?page=1&limit=10&query=running' \ -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 decathlon-fr-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.decathlon_france_product_api import Decathlon, ProductSummary, Product, Suggestion
client = Decathlon()
# Search products and iterate results (pagination is automatic)
for product in client.products.search(query="chaussures running", limit=5):
print(product.name, product.brand, product.price, product.price_currency)
# Navigate from summary to full details
detail = product.details()
print(detail.description, detail.sports, detail.genders)
# Walk sub-resource: reviews for this product
for review in product.reviews.list(page_size=3, limit=6):
print(review.title, review.rating, review.author, review.date)
# Autocomplete suggestions
suggestion = client.suggestions.search(query="velo")
for cat in suggestion.categories:
print(cat.label, cat.url)
for q in suggestion.queries:
print(q.label, q.url)
Full-text search over Decathlon.fr product catalog. Returns up to 40 products per page with pagination metadata. Queries that would redirect to a category page on the site are handled transparently. Each product carries pricing, brand, review summary, and available sizes.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (1-based) |
| limit | integer | Max number of products to return (up to 40 per page) |
| queryrequired | string | Search keyword (e.g., 'chaussures running', 'tente camping', 'velo') |
{
"type": "object",
"fields": {
"page": "integer - current page number",
"query": "string - the search query used",
"products": "array of product summary objects with id, name, brand, price, price_without_tax, original_price, price_currency, price_type, image_url, url, model_id, sku_id, product_nature, available_online, reviews_count, reviews_rating, available_sizes",
"total_pages": "integer - total number of pages",
"has_next_page": "boolean - whether more pages are available",
"items_per_page": "integer - items per page (always 40)",
"total_products": "integer - total number of matching products"
},
"sample": {
"data": {
"page": 1,
"query": "running",
"products": [
{
"id": "386925",
"url": "https://www.decathlon.fr/p/chaussure-de-running-homme-brooks-ghost-18-beige-orange/386925/m9030646",
"name": "Chaussure de running homme Brooks Ghost 18 Beige Orange",
"brand": "BROOKS",
"price": 149.99,
"sku_id": "0a65eb6c-dfe5-41ee-95b3-fcc8696e4271",
"model_id": "9030646",
"image_url": "https://contents.mediadecathlon.com/p3171663/picture.jpg",
"price_type": "STANDARD",
"reviews_count": null,
"original_price": null,
"price_currency": "EUR",
"product_nature": "chaussures de sport",
"reviews_rating": null,
"available_sizes": [
"40",
"41",
"42"
],
"available_online": true,
"price_without_tax": 124.992
}
],
"total_pages": 90,
"has_next_page": true,
"items_per_page": 40,
"total_products": 3575
},
"status": "success"
}
}About the Decathlon API
Search and Browse the Catalogue
The search_products endpoint accepts a required query string — for example 'chaussures running' or 'tente camping' — plus optional page and limit parameters. Each result object includes id, name, brand, price, original_price, price_without_tax, price_currency, price_type, image_url, and a product url. The response also surfaces total_products, total_pages, and has_next_page, so iterating through a full result set is straightforward. Queries that would normally redirect to a category page on the site are handled transparently.
Product Detail and Variant Data
get_product_details takes a sku_id UUID from any search_products result and returns a richer object: full name, price, available colors, associated sports categories, size label, and tags such as BUY_BACK or ECO_DESIGN. The response also includes the product url and brand, making it straightforward to build a detail view or compare specific variants. The sku_id and model_id fields bridge between endpoints — model_id is needed for the reviews endpoint.
Customer Reviews and Ratings
get_product_reviews accepts a model_id, a page number, and a page_size of up to 50. The stats object includes average_rating, total_reviews, recommended_count, percent_satisfied, a full rating_distribution breakdown, and average_attribute_ratings. Individual review objects carry rating, rating_label, title, comment, author, date, recommended, is_verified_buyer, country, and lang.
Autocomplete Suggestions
search_suggestions takes a single query string and returns three arrays: queries (suggested query strings with labels and URLs), products (top matching products with price and image), and categories (matching category entries with labels, URLs, and images). This endpoint is useful for building typeahead interfaces or discovering canonical category structures within the Decathlon France catalogue.
The Decathlon API is a managed, monitored endpoint for decathlon.fr — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when decathlon.fr 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 decathlon.fr 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 Decathlon France products using
search_productsand tracking thepriceandoriginal_pricefields over time. - Aggregate customer sentiment by pulling
average_rating,percent_satisfied, andrating_distributionfromget_product_reviewsacross product lines. - Build a product comparison tool using
colors,sports,tags, andpricefields fromget_product_details. - Populate a typeahead search bar using the
queriesandcategoriesarrays returned bysearch_suggestions. - Identify eco-labeled or buy-back eligible gear by filtering
get_product_detailsresults forECO_DESIGNorBUY_BACKin thetagsarray. - Compile a structured catalogue of Decathlon France sporting goods across categories using paginated
search_productscalls with sport-specific queries. - Analyze verified-buyer review text by filtering
is_verified_buyerreviews fromget_product_reviewsfor sentiment or keyword analysis.
| 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 Decathlon have an official public developer API?+
What does `get_product_reviews` return beyond a star rating?+
rating and comment, the stats object includes recommended_count, percent_satisfied, a rating_distribution breakdown across star levels, and average_attribute_ratings. Each individual review also carries is_verified_buyer, country, and lang fields.Does the API cover Decathlon stores in other countries or other regional domains?+
Is stock availability or inventory data returned by any endpoint?+
How does pagination work in `search_products`?+
total_pages, has_next_page, and items_per_page (fixed at 40) alongside the current page number. Pass the page parameter incrementally to walk through the full result set for a given query.