Brushfire Orders API

The Orders API from Brushfire — 11 operation(s) for orders.

Operations 13

GET /orders Gets list of orders by eventId and/or a date range.
POST /orders Create an order from an existing cart
GET /orders/{orderId} Retrieve a single order
GET /orders/{orderId}/fields Retrieve fields for an order
POST /orders/{orderId}/fields Update fields for an order
GET /orders/{orderId}/print Retrieve the printable resources for a single order
POST /orders/{orderId}/resend Resend a confirmation for a single order
POST /orders/direct Create cart-less order for free, general admission events with no fields.
GET /orders/helpdesk/{email} Retrieve orders that match provided email
POST /orders/pos Create a point of sale order from an existing cart
POST /orders/print Retrieve the printable resources for multiple orders
POST /orders/reader/start Prepares an order to be paid for with a Square or Stripe Reader.
POST /orders/sms Sends SMS messages to the provided phone number (only US and Canada)

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/brushfire-orders-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

brushfire-orders-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 'Brushfire API: Version 2025-07-22 AccessCodes Orders API'
  version: '2025-07-22'
  description: 'The Brushfire REST API provides programmatic access to the Brushfire event ticketing and registration platform. It covers events, ticket types, sections and seats, attendees, orders, the shopping cart and checkout flow, groups, sessions and check-in, promotions and access codes, payment profiles, and webhooks (Hooks). Authenticate by sending your App Key (requested at https://developer.brushfire.com/key) in the Authorization header. The API is date-versioned: send the desired version in the api-version request header (for example, 2025-07-22). This document is the live specification published at api.brushfire.com/swagger.'
  contact:
    name: Brushfire Developers
    url: https://developer.brushfire.com
servers:
- url: https://api.brushfire.com
  description: Brushfire API (date-versioned via the api-version header)
tags:
- name: Orders
paths:
  /orders:
    get:
      tags:
      - Orders
      summary: Gets list of orders by eventId and/or a date range.
      parameters:
      - name: eventId
        in: query
        description: An integer or a GUID that corresponds to a specific event. Only required if there is no startsAt or endsAt.
        schema:
          type: string
      - name: startsAt
        in: query
        description: Optional start date to filter list
        schema:
          type: string
          format: date-time
      - name: endsAt
        in: query
        description: Optional end date to filter list
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderListOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderListOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
    post:
      tags:
      - Orders
      summary: Create an order from an existing cart
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderCreateInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderCreateInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/OrderCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/{orderId}:
    get:
      tags:
      - Orders
      summary: Retrieve a single order
      parameters:
      - name: orderId
        in: path
        description: A string (orderKey) or a GUID representing a specific order
        required: true
        schema:
          type: string
      - name: accessKey
        in: query
        description: The Access Key for the user context
        schema:
          type: string
      - name: qrSize
        in: query
        description: The width and height of the QR Code. If blank, no QR will be sent.
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderSingleOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/OrderSingleOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/{orderId}/fields:
    get:
      tags:
      - Orders
      summary: Retrieve fields for an order
      parameters:
      - name: orderId
        in: path
        description: A string (orderKey) or a GUID representing a specific order
        required: true
        schema:
          type: string
      - name: accessKey
        in: query
        description: The Access Key for the user context
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
    post:
      tags:
      - Orders
      summary: Update fields for an order
      parameters:
      - name: orderId
        in: path
        description: A string (orderKey) or a GUID representing a specific order
        required: true
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FieldUpdateInput'
          text/json:
            schema:
              $ref: '#/components/schemas/FieldUpdateInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FieldUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/{orderId}/print:
    get:
      tags:
      - Orders
      summary: Retrieve the printable resources for a single order
      parameters:
      - name: orderId
        in: path
        description: A string (orderKey) or a GUID representing a specific order
        required: true
        schema:
          type: string
      - name: type
        in: query
        description: A string that is one of "Ticket", "ETicket", or "Namebadge"
        schema:
          $ref: '#/components/schemas/PrintType'
      - name: format
        in: query
        description: A string that is one of "PDF", "PNG", "JPG", "GIF", "BMP" or "TIFF"
        schema:
          $ref: '#/components/schemas/PrintFormat'
      - name: imageDpi
        in: query
        description: An int representing the dots per inch of the images produced that is 72, 96, 150, 300 or 600. 0 for PDF
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
            text/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/{orderId}/resend:
    post:
      tags:
      - Orders
      summary: Resend a confirmation for a single order
      parameters:
      - name: orderId
        in: path
        description: A string (orderKey) or a GUID representing a specific order
        required: true
        schema:
          type: string
      requestBody:
        description: Contains optional access key
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderConfirmationResendInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderConfirmationResendInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderConfirmationResendInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: boolean
            text/json:
              schema:
                type: boolean
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/direct:
    post:
      tags:
      - Orders
      summary: Create cart-less order for free, general admission events with no fields.
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderCreateDirectInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderCreateDirectInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderCreateDirectInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderResultOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/OrderResultOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/helpdesk/{email}:
    get:
      tags:
      - Orders
      summary: Retrieve orders that match provided email
      parameters:
      - name: email
        in: path
        description: An email to search across order email fields
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderHelpdeskOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderHelpdeskOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/pos:
    post:
      tags:
      - Orders
      summary: Create a point of sale order from an existing cart
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderCreatePOSInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderCreatePOSInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderCreatePOSInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/OrderCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/print:
    post:
      tags:
      - Orders
      summary: Retrieve the printable resources for multiple orders
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderPrintInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderPrintInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderPrintInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
            text/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/reader/start:
    post:
      tags:
      - Orders
      summary: Prepares an order to be paid for with a Square or Stripe Reader.
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderReaderStartInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderReaderStartInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderReaderStartInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderReaderStartOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/OrderReaderStartOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /orders/sms:
    post:
      tags:
      - Orders
      summary: Sends SMS messages to the provided phone number (only US and Canada)
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderSmsInput'
          text/json:
            schema:
              $ref: '#/components/schemas/OrderSmsInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrderSmsInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: boolean
            text/json:
              schema:
                type: boolean
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
components:
  schemas:
    OrderAttendeeSummaryOutput:
      type: object
      properties:
        AttendeeId:
          type: string
          format: uuid
        AttendeeNumber:
          type: integer
          format: int64
        AttendeeCode:
          type:
          - string
          - 'null'
        AcctCode:
          type:
          - string
          - 'null'
        HasName:
          type: boolean
        FirstName:
          type:
          - string
          - 'null'
        LastName:
          type:
          - string
          - 'null'
        SectionName:
          type:
          - string
          - 'null'
        RowName:
          type:
          - string
          - 'null'
        SeatLabel:
          type:
          - string
          - 'null'
        CreatedAt:
          type: string
          format: date-time
        TypeId:
          type: string
          format: uuid
        TypeName:
          type:
          - string
          - 'null'
        GroupId:
          type:
          - string
          - 'null'
          format: uuid
        GroupName:
          type:
          - string
          - 'null'
        OrderQuantity:
          type: integer
          format: int32
        Status:
          type:
          - string
          - 'null'
        IsCompleted:
          type: boolean
        IsPreRegistered:
          type: boolean
        IsGift:
          type: boolean
        ShareEmail:
          type:
          - string
          - 'null'
        GiftingEnabled:
          type: boolean
        GiftLastSentAt:
          type:
          - string
          - 'null'
          format: date-time
        UnitPrice:
          type: number
          format: double
        UnitDiscount:
          type: number
          format: double
        UnitAddons:
          type: number
          format: double
        UnitFee:
          type: number
          format: double
        UnitTax:
          type: number
          format: double
        UnitDelivery:
          type: number
          description: Deprecated. Delivery has been folded into API.Models.OrderAttendeeSummaryOutput.UnitFee; this property is kept for backwards compatibility but should be ignored.
          format: double
        UnitChange:
          type: number
          format: double
        UnitTotal:
          type: number
          format: double
        UnitFees:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/UnitFeeLineItemOutput'
        DisplayPrice:
          type: number
          format: double
          readOnly: true
        DisplayTotal:
          type: number
          format: double
          readOnly: true
        PriceDescription:
          type:
          - string
          - 'null'
        IsInclusiveFees:
          type: boolean
        IsInclusiveTaxes:
          type: boolean
        Refundable:
          type: boolean
        Promotions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderPromotionOutput'
        IsAddon:
          type: boolean
        ExternalId:
          type:
          - string
          - 'null'
        ExternalDescription:
          type:
          - string
          - 'null'
      additionalProperties: false
    OrderReaderStartOutput:
      type: object
      properties:
        ReferenceId:
          type: string
          format: uuid
        CartId:
          type:
          - string
          - 'null'
        ExternalId:
          type:
          - string
          - 'null'
        AppFee:
          type: number
          format: double
        Description:
          type:
          - string
          - 'null'
        Metadata:
          type:
          - object
          - 'null'
          additionalProperties:
            type:
            - string
            - 'null'
      additionalProperties: false
    OrderSmsInput:
      type: object
      properties:
        OrderId:
          type: string
          format: uuid
        PhoneNumber:
          type:
          - string
          - 'null'
      additionalProperties: false
    UnitFeeLineItemOutput:
      type: object
      properties:
        Label:
          type:
          - string
          - 'null'
          description: Display label (e.g. "Service Fee", "Sales Tax").
        FeeType:
          $ref: '#/components/schemas/FeeItemType'
        Amount:
          type: number
          description: The evaluated amount for this line item.
          format: double
      additionalProperties: false
      description: 'A single fee or tax line item evaluated for an attendee from the attendee

        type''s customFees configuration. On cart outputs this is a live evaluation;

        on order outputs it is the snapshot of what was collected at purchase time.'
    DomainValidationOutput:
      type: object
      properties:
        AllowDomains:
          type:
          - array
          - 'null'
          items:
            type: string
        DisallowDomains:
          type:
          - array
          - 'null'
          items:
            type: string
      additionalProperties: false
    PrintType:
      enum:
      - Ticket
      - ETicket
      - Receipt
      - MailingLabel
      - WillCall
      - NameBadge
      - Season
      type: string
    InvoiceRelativeDays:
      enum:
      - UponReceipt
      - SevenDaysAfterOrder
      - FourteenDaysAfterOrder
      - ThirtyDaysAfterOrder
      - ThirtyDaysBeforeEvent
      - FourteenDaysBeforeEvent
      - SevenDaysBeforeEvent
      - DueByEvent
      type: string
    OrderCreateOutput:
      type: object
      properties:
        RequiresAction:
          type: boolean
        ActionInfo:
          type:
          - object
          - 'null'
          additionalProperties:
            type:
            - string
            - 'null'
        Results:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderResultOutput'
      additionalProperties: false
    FieldInput:
      required:
      - Id
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Value: {}
      additionalProperties: false
    FeeItemType:
      enum:
      - Fee
      - Tax
      type: string
    OrderCreateDirectInput:
      required:
      - EventNumber
      - FirstName
      - LastName
      - NumberOfTickets
      type: object
      properties:
        AccessKey:
          type:
          - string
          - 'null'
        FirstName:
          maxLength: 50
          minLength: 0
          type: string
        LastName:
          maxLength: 50
          minLength: 0
          type: string
        Organization:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
        Street1:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
        Street2:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
        City:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
        Region:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
        Country:
          maxLength: 2
          minLength: 2
          type:
          - string
          - 'null'
        PostalCode:
          maxLength: 20
          minLength: 0
          type:
          - string
          - 'null'
        Phone:
          maxLength: 100
          minLength: 0
          pattern: ^((?:[\.\*\(\)\-\/\s\+]*\d){10,})(.*)$
          type:
          - string
          - 'null'
        Email:
          maxLength: 100
          minLength: 0
          pattern: ^([0-9A-Za-zÀ-ÖØ-öø-ÿ']+[-._+&])*[0-9A-Za-zÀ-ÖØ-öø-ÿ_']+@([-0-9A-Za-zÀ-ÖØ-öø-ÿ]+[.])+[a-zA-Z]{2,63}$
          type:
          - string
          - 'null'
        IsPOS:
          type: boolean
        EventNumber:
          type: integer
          format: int64
        NumberOfTickets:
          maximum: 200
          minimum: 1
          type: integer
          format: int32
        Notes:
          type:
          - string
          - 'null'
        SendEmail:
          type: boolean
        ShipMethod:
          maxLength: 100
          minLength: 0
          type:
          - string
          - 'null'
          description: Deprecated. Delivery methods are no longer supported; this field is accepted for backwards compatibility but ignored.
      additionalProperties: false
    OrderSingleOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        OrderKey:
          type:
          - string
          - 'null'
        ObjectNumber:
          type: integer
          format: int64
        AttendeeCount:
          type: integer
          format: int32
        OrderedAt:
          type: string
          format: date-time
        OrderedAtLocal:
          type: string
          format: date-time
        IsAdjustment:
          type: boolean
        IsPOS:
          type: boolean
        IsKiosk:
          type: boolean
        IsApp:
          type: boolean
        AcctCode:
          type:
          - string
          - 'null'
        BillingName:
          type:
          - string
          - 'null'
        BillingAddress:
          type:
          - string
          - 'null'
        BillingFirstName:
          type:
          - string
          - 'null'
        BillingLastName:
          type:
          - string
          - 'null'
        BillingOrganization:
          type:
          - string
          - 'null'
        BillingStreet1:
          type:
          - string
          - 'null'
        BillingStreet2:
          type:
          - string
          - 'null'
        BillingCity:
          type:
          - string
          - 'null'
        BillingRegion:
          type:
          - string
          - 'null'
        BillingPostal:
          type:
          - string
          - 'null'
        BillingCountry:
          type:
          - string
          - 'null'
        ContactPhone:
          type:
          - string
          - 'null'
        ContactEmail:
          type:
          - string
          - 'null'
        DeliveryMethod:
          type:
          - string
          - 'null'
        HostAddress:
          type:
          - string
          - 'null'
        ThirdPartyCustomerId:
          type:
          - string
          - 'null'
        SubTotal:
          type: number
          format: double
        Total:
          type: number
          format: double
        Summary:
          type:
          - string
          - 'null'
        IsAttendeeTypeAdjustment:
          type: boolean
        AttendeeTotal:
          type: number
          format: double
        DiscountTotal:
          type: number
          format: double
        OrderFee:
          type: number
          description: Deprecated. Order fees have been folded into API.Models.OrderSingleOutput.FeeTotal; this property is kept for backwards compatibility but should be ignored.
          format: double
        FeeTotal:
          type: number
          format: double
        TaxTotal:
          type: number
          format: double
        DeliveryTotal:
          type: number
          description: Deprecated. Delivery has been folded into API.Models.OrderSingleOutput.FeeTotal; this property is kept for backwards compatibility but should be ignored.
          format: double
        TaxLabel:
          type:
          - string
          - 'null'
        UndistributedFees:
          type: number
          format: double
        FeesTotal:
          type: number
          format: double
        Fields:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldOutput'
        Attendees:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderAttendeeSummaryOutput'
        RelatedOrders:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderRelationshipOutput'
        Payments:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderListPaymentOutput'
        PaymentMethod:
          type:
          - string
          - 'null'
          readOnly: true
        TransactionId:
          type:
          - string
          - 'null'
          readOnly: true
        TransactionTotal:
          type: number
          format: double
          readOnly: true
        ExternalInvoiceId:
          type:
          - string
          - 'null'
          readOnly: true
        QRCode:
          type:
          - string
          - 'null'
        Notes:
          type:
          - string
          - 'null'
        ExternalId:
          type:
          - string
          - 'null'
        PaidInFull:
          type: boolean
        ExternalCustomerId:
          type:
          - string
          - 'null'
        FlagState:
          type:
          - string
          - 'null'
      additionalProperties: false
    StringStringKeyValuePair:
      type: object
      properties:
        Key:
          type:
          - string
          - 'null'
        Value:
          type:
          - string
          - 'null'
      additionalProperties: false
    OrderPrintInput:
      required:
      - Orders
      - Type
      type: object
      properties:
        Type:
          $ref: '#/components/schemas/PrintType'
        Orders:
          type: array
          items:
            type: string
            format: uuid
        Format:
          $ref: '#/components/schemas/PrintFormat'
        ImageDpi:
          type: integer
          format: int32
      additionalProperties: false
    FieldUpdateInput:
      type: object
      properties:
        AccessKey:
          type:
          - string
          - 'null'
        FieldValues:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldInput'
        UpdateNewOnly:
          type: boolean
      additionalProperties: false
    OrderListOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        OrderKey:
          type:
          - string
          - 'null'
        OrderedAt:
          type: string
          format: date-time
        OrderedAtLocal:
          type: string
          format: date-time
        IsPOS:
          type: boolean
        IsKiosk:
          type: boolean
        IsApp:
          type: boolean
        AcctCode:
          type:
          - string
          - 'null'
        ObjectNumber:
          type: integer
          format: int64
        IsAdjustment:
          type: boolean
        BillingFirstName:
          type:
          - string
          - 'null'
        BillingLastName:
          type:
          - string
          - 'null'
        HostAddress:
          type:
          - string
          - 'null'
        ThirdPartyCustomerId:
          type:
          - string
          - 'null'
        SubTotal:
          type: number
          format: double
        UndistributedFees:
          type: number
          format: double
        OrderTotal:
          type: number
          format: double
        AttendeeTotal:
          type: number
          format: double
        DiscountTotal:
          type: number
          format: d

# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/brushfire/refs/heads/main/openapi/brushfire-orders-api-openapi.yml