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

# List scraped products

> List scraped products with filtering, pagination, and field completeness filters



## OpenAPI

````yaml api-reference/v1/openapi.yaml get /v1/scraped-products
openapi: 3.1.0
info:
  title: Goods API
  version: 1.0.0
  description: >-
    API for Goods grocery operations - scanner app, admin dashboard, and
    customer features
  contact:
    name: Goods Team
    url: https://goods.app
servers:
  - url: http://localhost:3000
    description: Local development
  - url: https://dev.api.switchyard.run
    description: Development
  - url: https://api.switchyard.run
    description: Production
security: []
tags:
  - name: v1
    description: API v1 - unified domain-based endpoints
  - name: Scanner
    description: Scanner app endpoints for drivers and pickers
  - name: Sweeps
    description: Sweep management - retail store pickup operations
  - name: RFC Picks
    description: Ready-for-checkout picking operations
  - name: Inventory
    description: Inventory management and barcode lookup
  - name: Admin
    description: Admin dashboard endpoints
  - name: Orders
    description: Order management
  - name: Products
    description: Product catalog management
  - name: Notifications
    description: Push, email, SMS, and Slack notification management
paths:
  /v1/scraped-products:
    get:
      tags:
        - Scraped Products
      summary: List scraped products
      description: >-
        List scraped products with filtering, pagination, and field completeness
        filters
      parameters:
        - schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 25
            description: Number of items to return
            example: 25
          required: false
          name: limit
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
            default: 0
            description: Number of items to skip
            example: 0
          required: false
          name: offset
          in: query
        - schema:
            type: string
            maxLength: 200
            description: Search query
            example: organic milk
          required: false
          name: search
          in: query
        - schema:
            type: string
            description: Category filter
            example: Dairy
          required: false
          name: category
          in: query
        - schema:
            type: string
            description: Subcategory filter
            example: Milk
          required: false
          name: subcategory
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Active status filter
          required: false
          name: is_active
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has sellable product filter
          required: false
          name: has_sellable
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has description filter
          required: false
          name: has_description
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has image filter
          required: false
          name: has_image
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has size filter
          required: false
          name: has_size
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has barcode filter
          required: false
          name: has_barcode
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has category filter
          required: false
          name: has_category
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has retailer mappings filter
          required: false
          name: has_retailer_mappings
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
              - all
            default: all
            description: Has pricing filter
          required: false
          name: has_pricing
          in: query
      responses:
        '200':
          description: List of scraped products
          content:
            application/json:
              schema:
                type: object
                properties:
                  products:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        name:
                          type: string
                        brand:
                          type: string
                          nullable: true
                        description:
                          type: string
                          nullable: true
                        image_url:
                          type: string
                          nullable: true
                        barcode:
                          type: string
                          nullable: true
                        size:
                          type: string
                          nullable: true
                        size_uom:
                          type: string
                          nullable: true
                        is_active:
                          type: boolean
                        full_category_hierarchy:
                          type: string
                          nullable: true
                        created_at:
                          type: string
                        updated_at:
                          type: string
                        sellable_product:
                          type: object
                          nullable: true
                          properties:
                            id:
                              type: string
                              format: uuid
                            name:
                              type: string
                            selling_price:
                              type: number
                            is_active:
                              type: boolean
                          required:
                            - id
                            - name
                            - selling_price
                            - is_active
                          description: Sellable product summary
                        has_sellable_product:
                          type: boolean
                        has_description:
                          type: boolean
                        has_image:
                          type: boolean
                        has_size:
                          type: boolean
                        has_barcode:
                          type: boolean
                        has_category:
                          type: boolean
                        has_retailer_mappings:
                          type: boolean
                        has_pricing:
                          type: boolean
                        retailer_mappings_count:
                          type: number
                        pricing_records_count:
                          type: number
                      required:
                        - id
                        - name
                        - brand
                        - description
                        - image_url
                        - barcode
                        - size
                        - size_uom
                        - is_active
                        - full_category_hierarchy
                        - created_at
                        - updated_at
                        - sellable_product
                        - has_sellable_product
                        - has_description
                        - has_image
                        - has_size
                        - has_barcode
                        - has_category
                        - has_retailer_mappings
                        - has_pricing
                        - retailer_mappings_count
                        - pricing_records_count
                      description: Scraped product list item
                  total:
                    type: number
                required:
                  - products
                  - total
                description: List scraped products response
        '500':
          description: Server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message
                required:
                  - error
                description: Error response

````