curl --request POST \
--url https://api.scrapeunblocker.com/marketplace/petco-search \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/marketplace/petco-search"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/marketplace/petco-search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Scrape Petco product search
Searches Petco (petco.com, US) for query and returns the products as JSON: sku, productId, title, familyName, brand, url, image, price, listPrice, autoshipPrice (the Repeat Delivery price), onSale, currency (USD), rating, reviewCount, description, category, autoshipEligible, pickupEligible, sameDayDeliveryEligible, inStoreOnly, prescriptionFood, attributes (brand, flavour, life stage…) and variations (every size / colour with its SKU, url and prices). Sort with sort, narrow with brand, fulfillment (delivery, autoship, pickup, same_day) and min_price / max_price, start at page and collect up to max_results (48 per page, each page billed as one request, see pagesFetched). A term Petco sends to a brand or category page (e.g. a brand name) returns that page’s listing, named in redirectedTo. Prices are the online prices a signed-out shopper sees; store-specific stock and member (Vital Care) prices are not included.
curl --request POST \
--url https://api.scrapeunblocker.com/marketplace/petco-search \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/marketplace/petco-search"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/marketplace/petco-search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Your ScrapeUnblocker API key. Apply on every request.
Query Parameters
What to search, e.g. 'dog food', 'cat litter' or 'fish tank'.
Order: relevance, price_low, price_high, rating, popular, newest, name_asc, name_desc.
1-based results page to start from (1-200), 48 products per page as on petco.com.
Products to collect across pages (1-480); each page of 48 fetched is billed as one request.
Only this brand, as petco.com names it (e.g. 'Purina Pro Plan'; the brands list of a search shows the names).
Only products offered this way: delivery, autoship, pickup, same_day.
Lowest price to include (USD).
Highest price to include (USD).
Instead of query: a petco.com search link, e.g. https://www.petco.com/shop/en/petcostore/search?query=dog%20food.
Response
JSON with a products array plus totals and the brand names to filter by.

