> ## 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 orders with filtering and pagination

> Returns a paginated list of orders with customer and item details.



## OpenAPI

````yaml api-reference/v1/openapi.yaml get /v1/orders
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/orders:
    get:
      tags:
        - Orders
      summary: List orders with filtering and pagination
      description: Returns a paginated list of orders with customer and item details.
      parameters:
        - schema:
            type: integer
            minimum: 1
            maximum: 500
            default: 20
          required: false
          name: limit
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
            default: 0
          required: false
          name: offset
          in: query
        - schema:
            type: string
          required: false
          name: status
          in: query
        - schema:
            type: string
            enum:
              - received
              - reserved
              - picking
              - sweep_hold
              - staged
              - fulfilling
              - arrived
              - completed
            description: Filter by RFC fulfillment status
          required: false
          name: rfc_status
          in: query
        - schema:
            type: string
            format: uuid
          required: false
          name: customer_id
          in: query
        - schema:
            type: string
            description: >-
              Filter by single date (YYYY-MM-DD), use start_date/end_date for
              ranges
          required: false
          name: date
          in: query
        - schema:
            type: string
            description: Start date for date range filter (YYYY-MM-DD)
          required: false
          name: start_date
          in: query
        - schema:
            type: string
            description: End date for date range filter (YYYY-MM-DD)
          required: false
          name: end_date
          in: query
        - schema:
            type: string
            description: Search by order number or email
          required: false
          name: q
          in: query
      responses:
        '200':
          description: List of orders
          content:
            application/json:
              schema:
                type: object
                properties:
                  orders:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        customer_id:
                          type: string
                          format: uuid
                        order_number:
                          type: string
                        display_id:
                          type: number
                        status:
                          type: string
                        total_amount:
                          type: number
                        payment_status:
                          type: string
                          nullable: true
                        payment_method:
                          type: string
                          nullable: true
                        order_cutoff_time:
                          type: string
                          nullable: true
                        estimated_pickup_time:
                          type: string
                          nullable: true
                        actual_pickup_time:
                          type: string
                          nullable: true
                        location_id:
                          type: string
                          nullable: true
                          format: uuid
                        notes:
                          type: string
                          nullable: true
                        source:
                          type: string
                          nullable: true
                        currency_code:
                          type: string
                          nullable: true
                        email:
                          type: string
                          nullable: true
                        fulfillment_status:
                          type: string
                          nullable: true
                        created_at:
                          type: string
                        updated_at:
                          type: string
                        deleted_at:
                          type: string
                          nullable: true
                        customer:
                          type: object
                          nullable: true
                          properties:
                            id:
                              type: string
                              format: uuid
                            full_name:
                              type: string
                              nullable: true
                            email:
                              type: string
                              nullable: true
                            phone:
                              type: string
                              nullable: true
                          required:
                            - id
                            - full_name
                            - email
                            - phone
                        items:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: string
                                format: uuid
                              order_id:
                                type: string
                                format: uuid
                              sellable_product_id:
                                type: string
                                format: uuid
                              quantity:
                                type: number
                              unit_price:
                                type: number
                              fulfilled_quantity:
                                type: number
                              shipped_quantity:
                                type: number
                              is_tax_inclusive:
                                type: boolean
                              return_requested_quantity:
                                type: number
                              return_received_quantity:
                                type: number
                              return_dismissed_quantity:
                                type: number
                              written_off_quantity:
                                type: number
                              product:
                                type: object
                                nullable: true
                                properties:
                                  id:
                                    type: string
                                    format: uuid
                                  name:
                                    type: string
                                  brand:
                                    type: string
                                    nullable: true
                                  image_url:
                                    type: string
                                    nullable: true
                                required:
                                  - id
                                  - name
                                  - brand
                                  - image_url
                            required:
                              - id
                              - order_id
                              - sellable_product_id
                              - quantity
                              - unit_price
                              - fulfilled_quantity
                              - shipped_quantity
                              - is_tax_inclusive
                              - return_requested_quantity
                              - return_received_quantity
                              - return_dismissed_quantity
                              - written_off_quantity
                              - product
                        item_count:
                          type: number
                      required:
                        - id
                        - customer_id
                        - order_number
                        - status
                        - total_amount
                        - payment_status
                        - payment_method
                        - order_cutoff_time
                        - estimated_pickup_time
                        - actual_pickup_time
                        - location_id
                        - notes
                        - source
                        - currency_code
                        - email
                        - fulfillment_status
                        - created_at
                        - updated_at
                        - customer
                        - items
                        - item_count
                  total:
                    type: number
                required:
                  - orders
                  - total

````