PetSmart
PetSmart Deals API
Products in PetSmart's Sale section, up to 40 per page, in the same shape as search, plus the current sale events with approximate product counts. Filter by pet, by one sale event, by keywords, or to products in stock at one store. The Sale section also lists points and Autoship promotions at full price, so read on_sale for rows whose price is actually reduced. Costs 1 credit per request.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonpetstringOnly deals for this pet: dog, cat, fish, small_pet, reptile or bird.
Example: dog
eventstringOnly one sale event, by its exact name from the events list of a previous deals answer. Events change with the season.
Example: Sale > November > Dog Sale
querystringKeywords to search within the sale.
store_idstringPetSmart store number. When set, only products in stock at that store are listed and each carries in_stock_at_store. Find store numbers with /api/v1/petsmart/stores.
Example: 1658
pageintegerResults page, 1-based, 1-100. Defaults to 1.
Example: 1
limitintegerResults per page, 1-40. Defaults to 40.
Example: 20
sortstringrelevance (default), best_sellers, price_low, price_high, top_rated or new_arrivals.
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
res = client.petsmart.deals(pet="dog", limit=20)["data"]
# The Sale section also holds full-price promotions: keep real markdowns only
for p in res["products"]:
if p["on_sale"]:
print(p["sku"], p["name"], p["price"], "was", p["original_price"])
print([e["name"] for e in res["events"]])Response