Pet product assortment research
Use PetSmart endpoints to turn pet product assortment research into repeatable API requests with documented inputs and JSON responses.
Use PetSmart's hierarchical paths to scope product searches, then keep product SKU, price range, online availability, pickup eligibility, and store inventory as separate fields.
Search PetSmart's US and Canadian pet catalog, discover category and facet values, and resolve product details and per-store inventory by returned SKU.
Endpoint families
4
Documented params
43
Examples
6
Live catalog snapshot
Active endpoints
6
Methods
GET
Required params
9
Schema refs
6
{
"platform": "PetSmart",
"endpoint": "petsmart-search",
"method": "GET",
"path": "/petsmart/search",
"auth": "apiKey"
}Use cases
Search PetSmart's US and Canadian pet catalog, discover category and facet values, and resolve product details and per-store inventory by returned SKU.
Use PetSmart endpoints to turn pet product assortment research into repeatable API requests with documented inputs and JSON responses.
Use PetSmart endpoints to turn price and promotion monitoring into repeatable API requests with documented inputs and JSON responses.
Use PetSmart endpoints to turn store-level inventory snapshots into repeatable API requests with documented inputs and JSON responses.
Managed execution
Every figure below is read from the live PetSmart endpoint catalog — 6 endpoints, 43 documented request parameters, and 6 published response schemas — the same catalog Docs and Playground run against.
6 documented PetSmart endpoints, grouped into 4 request families — Product, Search and Categories, plus 1 more.
43 request parameters are documented across those PetSmart endpoints, 9 of them required — the full input contract is public before you write any integration code.
6 of the 6 PetSmart endpoints ship a recorded example response, and 6 carry a documented response schema — you can code against the real JSON before the first request.
PetSmart endpoints document their error responses (400, 404 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
6 hosted MCP tools back the PetSmart endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Coverage map
/petsmart/product
/petsmart/search/filters
/petsmart/categories
/petsmart/suggest
Endpoint catalog
/petsmart/categoriesReturns PetSmart's category directory: every category path (for example Dog > Food > Dry Food) with its name, parent path and depth, about 1,400 in all, hierarchical so a parent path covers its descendants. A category's path is the value /petsmart/search and /petsmart/search/filters take as category. Filter with query (text in the path), parent (descendants of a path) and depth, and page through with page and limit. Ancestor paths that the directory does not list itself are included, since products carry them and they are valid category filters. Pass country=ca for the Canadian catalog.
MCP tool petsmart_categories
/petsmart/search/filtersReturns every filter PetSmart's catalog offers (about 120, such as brand, pet type, food form, size, flavor and life stage) with each filter's top values and product counts, scoped to the same search arguments /petsmart/search takes so the counts describe the result set that search would return. facet_names always lists every valid filter name for /petsmart/search's filter parameter. Pass facet to list one filter's values (up to 1,000) and facet_query to search within them, for example brand names containing blue; numeric_ranges reports the spread of numeric attributes such as price and rating over the scoped products. An unknown facet returns a 400. Pass country=ca for the Canadian catalog.
MCP tool petsmart_search_filters
/petsmart/suggestReturns PetSmart's own search suggestions for partial text, each with its relative popularity and how many products it matches exactly. Useful for completing a search phrase before calling /petsmart/search. Pass country=ca for the Canadian catalog.
MCP tool petsmart_suggest
/petsmart/searchReturns one page of PetSmart products from its catalog of about 20,000, optionally narrowed by keyword, category, brand, price range, minimum rating or any catalog filter, in six orderings (relevance, price_asc, price_desc, best_sellers, top_rated, new_arrivals). Each product carries its SKU id, master product id, name, brand, price (current, list and PetSmart's display text, with the range across sizes), images, rating and review count, primary category, pets, size, variations, UPC and availability flags (available online, in stock in stores, in-store only, online only, pickup and autoship eligible). total_results and total_pages describe the whole result set; PetSmart pages no deeper than 10,000 results, so narrow the search to reach the rest. Call /petsmart/categories and /petsmart/search/filters for the valid category and filter values; an unknown category path or filter name returns a 400 rather than an empty list. Pass country=ca for the Canadian catalog.
MCP tool petsmart_search
/petsmart/productReturns one product's full public detail by SKU: everything /petsmart/search returns plus the full description (as text and as PetSmart's HTML), short description, manufacturer name and SKU, every UPC, all category paths, the size and flavor variation options, current promotions, shipping dimensions and every other catalog attribute PetSmart publishes (life stage, food form, flavor, health considerations and so on) under attributes. An unknown SKU returns a 404. Pass country=ca for the Canadian catalog.
MCP tool petsmart_product
/petsmart/product/inventoryReturns how many units of a product PetSmart reports in each store, as store number and quantity, highest stock first, with totals over every store that has a record (stores_with_record, stores_in_stock, total_units). Narrow with store_id (repeatable) and min_quantity; limit caps the list (default 100, maximum 2000) without changing the totals. Store numbers are PetSmart's own; PetSmart's store locator is not available anonymously, so this endpoint does not map them to addresses. An unknown SKU returns a 404.
MCP tool petsmart_product_inventory
Related APIs
Marketplaces & Retail
Separate an auction that is still open from a completed sale, and use BaT's own make and model directory to carry valid IDs into search and price-history requests.
Marketplaces & Retail
Treat Glovo as a local marketplace: discover the supported city first, then follow that city's category, store, menu, and collection identifiers through the catalog.
Marketplaces & Retail
Research new, used, and vintage instruments across Reverb listings, seller shops, and the Price Guide. Keep current asking prices separate from historical sales, and preserve model, finish, year, condition, and currency when comparing gear.
How to scrape PetSmart
PetSmart's public catalog spans pet types and shopping departments, while its help pages distinguish fulfillment availability from a product's detail listing. The official product-availability guidance says stock status can change, and pickup eligibility is shown for selected products and a selected store; prescription items are excluded from in-store pickup. On 2026-11-05, a US dog-food search reported 4,063 results. Its first card showed a current price of $77.99 alongside a $20.68–$94.99 variant range, demonstrating why a single price field should not replace the display range.
petsmart-categories returns hierarchical paths such as Dog > Food > Dry Food, with parent and depth. Pass the path as category to search or search-filters; a parent path includes descendants. The live depth-one catalog contained 32 roots, including pet types, Featured Shops, and flash-sale groupings.
Use petsmart-search-filters for the current facet names and values. A brand facet query is different from a free-text product search; filter names are source-defined and repeated values can have documented AND/OR semantics. Use only values returned for the same country and search scope.
petsmart-search returns SKU id, product name, brand, current and displayed price ranges, rating, variations, and availability flags. The 2026-11-05 dog-food pull returned 10 cards on page one out of 4,063 matches; requests accept 1-based pages with up to 100 products. Pass a returned SKU to petsmart-product and petsmart-product-inventory; do not fabricate a product ID.
available, in_stock_in_store, online_only, pickup_eligible, and autoship_eligible are separate flags. Inventory is a store-number breakdown from a separate endpoint, not a promise that every store can fulfill an order. Country=ca selects a distinct Canadian catalog.
Price display can be a variant range while current reflects one selected or default option. Store the returned SKU, variant context, country, and capture time; re-fetch product and inventory details before using a price or quantity in a purchasing workflow.
FAQ
Search by keyword or category and reuse the numeric SKU id returned by petsmart-search. The product and inventory endpoints require that returned identifier.
No. The response may include a current price plus a display range for variants. Keep both and retain variation fields instead of treating one value as the price for every size or flavor.
No. Product availability and in-store stock are separate. Use petsmart-product-inventory for the returned SKU and store numbers, and treat all quantities as a timestamped snapshot.
No. Official help guidance says pickup availability is indicated on eligible items and depends on a selected store; prescription medication is not available for in-store pickup. The API's pickup_eligible flag is not a completed order.
No. This API surface covers catalog, product, and store inventory data; it has no editorial article-body or author/byline routes.