> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapeunblocker.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 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.



## OpenAPI

````yaml /api-reference/openapi.json post /marketplace/petco-search
openapi: 3.1.0
info:
  title: ScrapeUnblocker API
  description: >-
    Public API for the ScrapeUnblocker proxy/anti-bot service. Authenticate
    every request with the `x-scrapeunblocker-key` header. Documented here:
    page-source extraction, Google SERP scraping, image fetch, and the dedicated
    plugin endpoints (search engines, marketplaces, reviews, travel, social and
    more). All other paths exist for internal operations and are intentionally
    hidden from this spec.
  version: 3.0.0
servers:
  - url: https://api.scrapeunblocker.com
    description: Production
security: []
paths:
  /marketplace/petco-search:
    post:
      tags:
        - Plugins
      summary: Scrape Petco product search
      description: >-
        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.
      operationId: petco_search_marketplace_petco_search_post
      parameters:
        - name: query
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: What to search, e.g. 'dog food', 'cat litter' or 'fish tank'.
            title: Query
          description: What to search, e.g. 'dog food', 'cat litter' or 'fish tank'.
        - name: sort
          in: query
          required: false
          schema:
            type: string
            description: >-
              Order: relevance, price_low, price_high, rating, popular, newest,
              name_asc, name_desc.
            default: relevance
            title: Sort
          description: >-
            Order: relevance, price_low, price_high, rating, popular, newest,
            name_asc, name_desc.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            description: >-
              1-based results page to start from (1-200), 48 products per page
              as on petco.com.
            default: 1
            title: Page
          description: >-
            1-based results page to start from (1-200), 48 products per page as
            on petco.com.
        - name: max_results
          in: query
          required: false
          schema:
            type: integer
            description: >-
              Products to collect across pages (1-480); each page of 48 fetched
              is billed as one request.
            default: 48
            title: Max Results
          description: >-
            Products to collect across pages (1-480); each page of 48 fetched is
            billed as one request.
        - name: brand
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Only this brand, as petco.com names it (e.g. 'Purina Pro Plan';
              the `brands` list of a search shows the names).
            title: Brand
          description: >-
            Only this brand, as petco.com names it (e.g. 'Purina Pro Plan'; the
            `brands` list of a search shows the names).
        - name: fulfillment
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Only products offered this way: delivery, autoship, pickup,
              same_day.
            title: Fulfillment
          description: >-
            Only products offered this way: delivery, autoship, pickup,
            same_day.
        - name: min_price
          in: query
          required: false
          schema:
            anyOf:
              - type: number
              - type: 'null'
            description: Lowest price to include (USD).
            title: Min Price
          description: Lowest price to include (USD).
        - name: max_price
          in: query
          required: false
          schema:
            anyOf:
              - type: number
              - type: 'null'
            description: Highest price to include (USD).
            title: Max Price
          description: Highest price to include (USD).
        - name: url
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Instead of `query`: a petco.com search link, e.g.
              https://www.petco.com/shop/en/petcostore/search?query=dog%20food.
            title: Url
          description: >-
            Instead of `query`: a petco.com search link, e.g.
            https://www.petco.com/shop/en/petcostore/search?query=dog%20food.
      responses:
        '200':
          description: >-
            JSON with a `products` array plus totals and the brand names to
            filter by.
          content:
            application/json:
              schema: {}
        '400':
          description: Invalid parameters.
        '404':
          description: Petco found no products for this search.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '502':
          description: >-
            The search service did not answer, or the call did not finish in
            time.
      security:
        - ScrapeUnblockerKey: []
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ScrapeUnblockerKey:
      type: apiKey
      in: header
      name: x-scrapeunblocker-key
      description: Your ScrapeUnblocker API key. Apply on every request.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.