screwfix.com APIscrewfix.com ↗
Access Screwfix product listings, pricing, specs, ratings, and category hierarchies via a structured API. Browse, search, and monitor 4 endpoints.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/58a70077-9830-4202-94a9-60a5673aa987/get_top_level_categories' \ -H 'X-API-Key: $PARSE_API_KEY'
Get the full category hierarchy from the main navigation menu. Returns an array of top-level categories, each containing nested children subcategories.
No input parameters required.
{
"type": "object",
"fields": {
"data": "array of category objects each with id, name, navigationPath, and children"
},
"sample": {
"data": [
{
"id": "cat830034",
"name": "Tools",
"children": [
{
"id": "cat830692",
"name": "Power Tools",
"children": [],
"navigationPath": "/c/tools/power-tools/cat830692"
}
],
"navigationPath": "/c/tools/cat830034"
}
],
"status": "success"
}
}About the screwfix.com API
The Screwfix API provides 4 endpoints to query the full Screwfix.com product catalog, covering category navigation, paginated product listings, detailed product specifications, and keyword search. The get_product_details endpoint returns technical specifications, images, pricing, and review counts for individual products, while get_category_products delivers filtered, paginated listings with brand and star rating data across any category in the hierarchy.
Category and Product Navigation
The get_top_level_categories endpoint returns the complete Screwfix navigation hierarchy as an array of category objects, each with an id, name, navigationPath, and nested children. The navigationPath values feed directly into get_category_products as the required category_url parameter, making it straightforward to walk the full catalog tree. get_category_products returns products (each with skuId, longDescription, priceInformation, brand, starRating, and detailPageUrl), along with totalProducts, pagination (offset and limit), breadcrumbs, and available filter facets. An optional page parameter controls which page of results is returned.
Product Details
The get_product_details endpoint accepts a product_url — obtainable from the detailPageUrl field in listing responses — and returns a productDetails object containing skuId, longDescription, overview, brand, priceInformation, technicalSpecifications, images, starRating, and a review count field. The seoOverrides object provides title, canonicalUrl, productName, and productDescription, useful for cataloging or SEO research. breadcrumbs give the full category path for each product.
Search Behavior
The search_products endpoint accepts a query string and optional page number. When a search term maps cleanly to a Screwfix category, the response returns a status of redirect and a redirect_url rather than inline product results — callers should detect this and follow up with get_category_products using the redirected path. When results are returned directly, the response includes the same products array shape used by the category endpoint, plus pagination and totalProducts.
- Monitor price changes for specific tools or fixings using
priceInformationfromget_product_details - Build a product comparison tool by fetching
technicalSpecificationsfor multiple SKUs - Index the full Screwfix catalog by walking the category tree from
get_top_level_categoriesthroughget_category_products - Track average
starRatingand review counts across product lines for market research - Detect when a keyword search redirects to a category versus returning direct results, for catalog mapping
- Extract
brandandlongDescriptionfields across a category for competitive analysis - Paginate through category listings to build an up-to-date local product database
| 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 Screwfix have an official public developer API?+
How does the search endpoint behave when a query matches a category exactly?+
search_products receives a query that Screwfix maps to a specific category, the response sets status to redirect and returns a redirect_url instead of a products array. You should detect the redirect status and call get_category_products with the returned URL path to retrieve the actual product listings.Does the API return individual product reviews or review text?+
get_product_details endpoint returns a numberOf (review count) and starRating, but individual review text and reviewer details are not currently returned. The API covers product specs, pricing, images, and aggregate ratings. You can fork this API on Parse and revise it to add an endpoint that retrieves individual review content.Can I filter category listings by brand, price range, or other facets?+
get_category_products response includes a filters array describing available filter facets for a given category, but passing filter parameters to narrow results is not currently supported as a query input. The API returns the full unfiltered page for a given category_url and page. You can fork this API on Parse and revise it to add filter parameter support.What does the pagination object contain, and how do I fetch subsequent pages?+
get_category_products and search_products return a pagination object with offset and limit fields, alongside a totalProducts integer. To fetch subsequent pages, pass an incremented value as the page parameter in either endpoint. Divide totalProducts by limit to calculate the total number of pages available.