For the complete documentation index, see llms.txt. This page is also available as Markdown.

Home Depot Search API (Async)

The Home Depot Search API endpoint returns a list of Home Depot products based on a search term.

Single Query Request

curl -X POST \
	-H "Content-Type: application/json" \
	-d '{
			"apiKey": "API_KEY",
			"search_term": "SEARCH_TERM",
			"page": "PAGE",
			"sort_by": "SORT_BY",
			"callback": {
				"type": "webhook",
				"url": "YYYYY"
			}
		}' \
"https://async.scraperapi.com/structured/homedepot/search"
import requests

url = "https://async.scraperapi.com/structured/homedepot/search"
headers = {
    "Content-Type": "application/json"
}
data = {
    "apiKey": "API_KEY",
    "search_term": "SEARCH_TERM",
    "page": "PAGE",
    "sort_by": "SORT_BY",
    "callback": {
        "type": "webhook",
        "url": "YYYYY"
    }
}

response = requests.post(url, json=data, headers=headers)
print(response.text)

Multiple Queries Request

curl -X POST \
	-H "Content-Type: application/json" \
	-d '{
			"apiKey": "API_KEY",
			"search_terms": ["SEARCH_TERM1", "SEARCH_TERM2"],
			"sort_by": "SORT_BY",
			"callback": {
				"type": "webhook",
				"url": "YYYYY"
			}
		}' \
"https://async.scraperapi.com/structured/homedepot/search"
import requests

url = "https://async.scraperapi.com/structured/homedepot/search"
headers = {
    "Content-Type": "application/json"
}
data = {
    "apiKey": "API_KEY",
    "search_terms": ["SEARCH_TERM1", "SEARCH_TERM2"],
    "sort_by": "SORT_BY",
    "callback": {
        "type": "webhook",
        "url": "YYYYY"
    }
}

response = requests.post(url, json=data, headers=headers)
print(response.text)

Supported Parameters

Parameters
Details

API_KEY (required)

Your API Key.

SEARCH_TERM (required)

Search term. Required unless URL is provided.

Example:

milwaukee cordless drill

To submit several searches in one request, send them as an array in search_terms instead. Each search term creates its own job.

URL

A Home Depot search results URL, used instead of SEARCH_TERM. Both /s/ (keyword search) and /b/ (category browse) URLs are accepted.

Example:

https://www.homedepot.com/s/milwaukee%20cordless%20drill?Nao=24

Note: When URL is provided, PAGE, SORT_BY, MIN_PRICE and MAX_PRICE are ignored. Paginate or refine by changing the URL itself, or follow pagination.next.link.

PAGE

Page number, sent as a string (e.g. "2"). Each page contains up to 24 results. Defaults to "1".

SORT_BY

Instructs the API to sort the results. Supported values:

best_seller most_popular price_low_to_high price_high_to_low highest_rating

MIN_PRICE

Minimum product price in USD, sent as a string (e.g. "100").

MAX_PRICE

Maximum product price in USD, sent as a string (e.g. "500").

OUTPUT_FORMAT

This endpoint returns JSON output only. CSV is not supported.

Options: • json (default)

Home Depot's result ranking can change between requests, so the same product may appear on more than one page. Use item_id to deduplicate results when paginating.

Sample Response

Single Query Request

Multiple Queries Request

After the job(s) finish, you will find the result under the response key in the response JSON object. The structure is the same as in the corresponding SYNC data endpoint.