API reference · Home Depot
home-depot/search
Integrate this model through SandBase's unified API, with production-ready schemas and examples.
Production endpoint
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
POST
https://api.sandbase.ai/v1/api/home-depot/searchModel ID
home-depot/search01
Input Schema
17 parameters · 1 required · 16 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
q | stringnumberboolean | Required | The search query. You can use anything that you would use in a regular The Home Depot search. |
ps | stringnumberboolean | Optional | Determines the number of items per page. There are scenarios where The Home Depot overrides the `ps` value. By default, The Home Depot returns `24` (maximum allowed value) results. |
nao | stringnumberboolean | Optional | Defines offset for products result. A single page contains 24 products. First page offset is 0, second -> 24, third -> 48 and so on. |
page | stringnumberboolean | Optional | Value is used to get the items on a specific page. (e.g., `1` (default) is the first page of results, `2` is the 2nd page of results, `3` is the 3rd page of results, etc.). This parameter is common for both US and CA searches. |
sort | union | Optional | Results sorted by different options in Home Depot Canada. It can be set to: `price-asc`: Price Low to High, `price-desc`: Price High to Low, `reviewAvgRating`: Top Rated, `relevance`: Recommended (Default) |
store | stringnumberboolean | Optional | Store ID to filter the products by the specific store only in Home Depot Canada. The default store is Gatineau (`7140`). See all Home Depot Canada stores |
filter | stringnumberboolean | Optional | Used to pass filter tokens divided by dash (-) in Home Depot Canada. Filter tokens can be obtained from API response |
minmax | stringnumberboolean | Optional | Defines lower and upper bound for price in CAD. Parameter is only used in the Home Depot Canada. Example: `price:[100 TO 500]`(Between $100 to $500) Example: `price:[100 TO *]`(Minimum $100) Example: `price:[0 TO 500]`(Maximum $500) Example: `price:%5B100%20TO%20500%5D`(Encoded version, Between $100 to $500) |
country | stringnumberboolean | Optional | The country to use for the Home Depot search. Only United States(`us`), and Canada(`ca`) are supported. |
hd_sort | union | Optional | Results sorted by different options in Home Depot US. It can be set to: `top_sellers`: Top Sellers, `price_low_to_high`: Price Low to High, `price_high_to_low`: Price High to Low, `top_rated`: Top Rated, `best_match`: Best Match |
pagesize | stringnumberboolean | Optional | Determines the number of items per page in the Home Depot Canada. By default, the Home Depot Canada returns `40` (maximum allowed value) results. |
store_id | stringnumberboolean | Optional | Store ID to filter the products by the specific store only. See all Home Depot stores |
lowerbound | stringnumberboolean | Optional | Defines lower bound for price in USD. |
upperbound | stringnumberboolean | Optional | Defines upper bound for price in USD. |
delivery_zip | stringnumberboolean | Optional | ZIP Postal code. To filter the shipping products by a selected area. |
json_restrictor | stringnumberboolean | Optional | The fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details. |
hd_filter_tokens | stringnumberboolean | Optional | Used to pass filter tokens divided by comma. Filter tokens can be obtained from API response |
02
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom the completed response
03
Code Examples
Ready-to-run snippets
const apiKey = process.env.SANDBASE_API_KEY;
const response = await fetch("https://api.sandbase.ai/v1/api/home-depot/search", {
method: "POST",
headers: {
Authorization: `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify({}),
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());