Home Depot API endpoint
Returns one Home Depot product's full detail: name, description, brand, model, store SKU, GTIN, price, images, aggregate rating and review count, and the featured customer reviews embedded on the product page. id is the numeric product/internet id (the trailing number of a /p/{slug}/{id} URL). The product page does not distinguish an unknown id from a known one in a consistent way, so an unrecognized id may return an upstream error rather than a not-found.
/homedepot/product/{id}id is required. It is the numeric product/internet id — the trailing number of a product page URL (/p/{slug}/{id}), e.g. 320326875.
Notable response behavior:
sku is the store SKU, model is the model number, and gtin is the UPC/EAN-13 where the product carries one.rating and review_count come from the page's aggregate rating; reviews is the small set of featured customer reviews embedded on the page (the site's full review list is a separate system and is not returned here).price and currency come from the page's own offer; price is the current price.images is the product's image gallery.id may return a 503 upstream error rather than a 404.| Field | Filled in, of 10 checked | Values in the sample |
|---|---|---|
| author | 10 | |
| rating | 10 | 1 to 5, median 5 |
| headline | 5 | “As always great products” and 4 other values |
| body | 9 | median 208 characters |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id (path) | string | Yes | Home Depot product/internet id, e.g. 320326875 | 320326875 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/homedepot/product/320326875" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": "320326875",
"title": "Milwaukee M18 FUEL 18V Lithium-Ion Brushless Cordless 1/4 in. Hex Impact Driver (Tool-Only) 2953-20",
"description": "The M18 FUEL 1/4 in. Hex Impact Driver is a cordless brushless impact driver.",
"brand": "Milwaukee",
"model": "2953-20",
"sku": "1007901520",
"gtin": "0045242637867",
"currency": "USD",
"price": 179,
"images": [
"https://images.thdstatic.com/productImages/fa7d2462-8481-4bd3-8010-384a85aa902f/svn/milwaukee-impact-drivers-2953-20-64_100.jpg"
],
"rating": 4.7,
"review_count": 1544,
"reviews": [
{
"author": "HomeDepotCustomer",
"rating": 5,
"body": "The impact is just what I needed."
}
],
"url": "https://www.homedepot.com/p/320326875",
"source_url": "https://www.homedepot.com/p/320326875",
"fetched_at": "2026-08-16T00:00:00Z"
}
}Request schema
No body schema
Response schema
#/definitions/homedepot.productResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | homedepot.Product | No | ||||
| data.brand | string | No | Milwaukee | |||
| data.currency | string | No | USD | |||
| data.description | string | No | ||||
| data.fetched_at | string | No | ||||
| data.gtin | string | No | 0045242637867 | |||
| data.id | string | No | 320326875 | |||
| data.images | array | No | ||||
| data.key_features | array | No | ||||
| data.key_features[].name | string | No | Motor Type | |||
| data.key_features[].value | string | No | Brushed | |||
| data.model | string | No | 2953-20 | |||
| data.price | number | No | 179 | |||
| data.rating | number | No | 4.7 | |||
| data.review_count | integer | No | 1544 | |||
| data.reviews | array | No | ||||
| data.reviews[].author | string | No | HomeDepotCustomer | |||
| data.reviews[].body | string | No | The impact is just what I needed. | |||
| data.reviews[].headline | string | No | Great tool | |||
| data.reviews[].rating | number | No | 5 | |||
| data.sku | string | No | 1007901520 | |||
| data.source_url | string | No | ||||
| data.specifications | array | No | ||||
| data.specifications[].name | string | No | Battery Power Type | |||
| data.specifications[].value | string | No | Lithium Ion | |||
| data.title | string | No | Milwaukee M18 FUEL 18V Lithium-Ion Brushless Cordless 1/4 in. Hex Impact Driver (Tool-Only) 2953-20 | |||
| data.url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/homedepot/product/320326875" \
-H "x-api-key: $CRAWLORA_API_KEY"