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

# List orders

> Returns the orders placed at locations under the companies linked to the API token, newest first. Filterable by company, location, status, order code, specimen, and creation time. There is no implicit date window: every visible order is listed unless `createdFrom`/`createdTo` narrow it. An order with no location, or at a location that belongs to no company, is never listed. The creation-time filters find new orders, not changed ones: to follow status changes, subscribe with the `callback` when creating the order. The participant’s `identifiers` are included only for tokens that also carry `order.participant.read`. Requires the `order.list` scope.



## OpenAPI

````yaml api-reference/openapi.json GET /api/v2/orders
openapi: 3.1.0
info:
  title: Origin One API
  description: REST API for integrating with the Origin One platform.
  version: '2'
  contact:
    name: Origin One
    url: https://origin.one
    email: support@originone.ai
servers:
  - url: https://api.stage.origin.one
    description: Staging
  - url: https://api.origin.one
    description: Production
security: []
tags:
  - name: agencies
    description: >-
      Regulatory agencies and the job categories they publish; the same for
      every API token.
  - name: jobCategories
    description: >-
      Job categories an agency publishes; an order under FAA, FRA or FTA names
      one.
  - name: clinics
    description: Collection sites where participants are tested.
  - name: companies
    description: Companies linked to your API token.
  - name: locations
    description: Company locations.
  - name: orders
    description: >-
      Drug and alcohol test orders: create them and follow their services to a
      result.
  - name: packages
    description: Packages of services that can be ordered.
  - name: services
    description: Services available to your API token.
  - name: webhooks
    description: Events delivered to the callback URL given when an order was created.
paths:
  /api/v2/orders:
    get:
      tags:
        - orders
      summary: List orders
      description: >-
        Returns the orders placed at locations under the companies linked to the
        API token, newest first. Filterable by company, location, status, order
        code, specimen, and creation time. There is no implicit date window:
        every visible order is listed unless `createdFrom`/`createdTo` narrow
        it. An order with no location, or at a location that belongs to no
        company, is never listed. The creation-time filters find new orders, not
        changed ones: to follow status changes, subscribe with the `callback`
        when creating the order. The participant’s `identifiers` are included
        only for tokens that also carry `order.participant.read`. Requires the
        `order.list` scope.
      operationId: listOrders
      parameters:
        - name: limit
          required: false
          in: query
          description: Number of items per page (max 20).
          schema:
            default: 10
            type: integer
            minimum: 1
            maximum: 20
            description: Number of items per page (max 20).
            example: 10
        - name: page
          required: false
          in: query
          description: Page of results to return (1-based).
          schema:
            default: 1
            type: integer
            minimum: 1
            maximum: 10000
            description: Page of results to return (1-based).
            example: 1
        - name: companyId
          required: false
          in: query
          description: >-
            Filter by company. A company that is inactive, deleted, or not
            linked to the API token returns an empty page.
          schema:
            example: '123'
            description: >-
              Filter by company. A company that is inactive, deleted, or not
              linked to the API token returns an empty page.
            type: string
        - name: createdFrom
          required: false
          in: query
          description: >-
            Only orders created at or after this time (ISO 8601 date-time with
            offset).
          schema:
            type: string
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
            description: >-
              Only orders created at or after this time (ISO 8601 date-time with
              offset).
            example: '2026-09-01T00:00:00Z'
        - name: createdTo
          required: false
          in: query
          description: >-
            Only orders created before this time (ISO 8601 date-time with
            offset). Exclusive, so consecutive ranges never overlap.
          schema:
            type: string
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
            description: >-
              Only orders created before this time (ISO 8601 date-time with
              offset). Exclusive, so consecutive ranges never overlap.
            example: '2026-09-01T00:00:00Z'
        - name: locationId
          required: false
          in: query
          description: >-
            Filter by location. A location outside the API token’s companies
            returns an empty page.
          schema:
            example: '123'
            description: >-
              Filter by location. A location outside the API token’s companies
              returns an empty page.
            type: string
        - name: code
          required: false
          in: query
          description: Filter by order code (exact match).
          schema:
            type: string
            minLength: 1
            maxLength: 255
            description: Filter by order code (exact match).
            example: CPmJ6QbYMo
        - name: specimenId
          required: false
          in: query
          description: >-
            Only orders with a service whose specimen has this identifier (exact
            match).
          schema:
            type: string
            minLength: 1
            maxLength: 255
            description: >-
              Only orders with a service whose specimen has this identifier
              (exact match).
            example: SP-1
        - name: status
          required: false
          in: query
          description: Filter by order status (exact match).
          schema:
            type: string
            enum:
              - adulterated
              - cancelled
              - complete
              - expired
              - fail
              - fitForDuty
              - incomplete
              - integrationError
              - negative
              - lostInTransit
              - nonNegative
              - noShow
              - notFitForDuty
              - ordered
              - pass
              - pending
              - positive
              - released
              - scheduled
              - substituted
              - testCancelled
              - testNotPerformed
              - unobtainable
            description: Filter by order status (exact match).
            example: pending
      responses:
        '200':
          description: Success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderList'
        '400':
          description: The request failed validation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The bearer token is missing, invalid, or expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: The API token lacks the required scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearer: []
components:
  schemas:
    OrderList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Order'
          description: Items on this page.
        limit:
          type: integer
          description: Number of items per page.
          example: 10
        page:
          type: integer
          description: Current page number (1-based).
          example: 1
        total:
          type: integer
          description: Number of matching items across all pages.
          example: 1
      required:
        - data
        - limit
        - page
        - total
    Error:
      type: object
      properties:
        error:
          type: string
          description: HTTP status reason phrase.
          example: Bad Request
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                anyOf:
                  - type: string
                    enum:
                      - backgroundCheckIntegrationNotConfigured
                      - badRequest
                      - conflict
                      - insufficientScope
                      - internalError
                      - invalidElement
                      - invalidFormat
                      - invalidKey
                      - invalidScheduleStrategy
                      - invalidState
                      - invalidType
                      - invalidUnion
                      - invalidValue
                      - linkRequiredBackground
                      - notFound
                      - notMultipleOf
                      - required
                      - scheduleClinicExcludedByFeeCap
                      - scheduleConfiguredClinicUnavailable
                      - tooBig
                      - tooManyRequests
                      - tooSmall
                      - unauthenticated
                      - unrecognizedKeys
                  - type: string
                description: >-
                  Machine-readable error code. New codes may be added; treat
                  unknown codes by `statusCode`.
                example: tooSmall
              detail:
                type: string
                description: Human-readable explanation.
                example: 'Too small: expected number to be >=1'
              meta:
                description: Additional machine-readable context.
                type: object
                propertyNames:
                  type: string
                additionalProperties: {}
              source:
                description: Present only when a request field is at fault.
                type: object
                properties:
                  pointer:
                    type: string
                    description: JSON pointer to the request field at fault.
                    example: /page
                required:
                  - pointer
            required:
              - code
              - detail
          description: One entry per problem found.
        statusCode:
          type: integer
          description: HTTP status code.
          example: 400
      required:
        - error
        - errors
        - statusCode
    Order:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the order.
          example: a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11
        object:
          type: string
          description: Object type; always `order`.
          example: order
          enum:
            - order
        code:
          type: string
          description: Human-readable order code.
          example: CPmJ6QbYMo
        agency:
          anyOf:
            - $ref: '#/components/schemas/AgencyReference'
            - type: 'null'
          description: >-
            Regulatory agency the order was placed under; null for a
            non-regulated order.
        clinic:
          anyOf:
            - $ref: '#/components/schemas/ClinicReference'
            - type: 'null'
          description: Collection site; null until one is assigned.
        company:
          anyOf:
            - $ref: '#/components/schemas/CompanyReference'
            - type: 'null'
          description: Company the order was placed for.
        createdAt:
          format: date-time
          type: string
          description: When the order was created.
          example: '2026-09-24T09:00:00.000Z'
        expiresAt:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: When the order expires; null when it does not.
          example: '2026-09-24T15:15:00.000Z'
        isFinal:
          type: boolean
          description: >-
            Whether the order has reached an outcome. Cancelled, expired and
            no-show orders report `false`; check `status` for those.
          example: false
        jobCategory:
          anyOf:
            - $ref: '#/components/schemas/JobCategoryReference'
            - type: 'null'
          description: DOT job category of the participant; null when the order has none.
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationReference'
            - type: 'null'
          description: Location the order was placed at.
        matched:
          $ref: '#/components/schemas/OrderMatched'
          description: >-
            Present on a create response when an equivalent existing order was
            returned instead.
        otherTestReason:
          description: Detail for a `testReason` of `other`; null when none was given.
          example: courtOrdered
          type:
            - string
            - 'null'
        packages:
          type: array
          items:
            $ref: '#/components/schemas/PackageReference'
          description: Packages the order was created from.
        participant:
          $ref: '#/components/schemas/OrderParticipant'
          description: The person being tested.
        services:
          type: array
          items:
            $ref: '#/components/schemas/OrderService'
          description: Services on the order, in creation order.
        status:
          anyOf:
            - type: string
              enum:
                - adulterated
                - cancelled
                - complete
                - expired
                - fail
                - fitForDuty
                - incomplete
                - integrationError
                - negative
                - lostInTransit
                - nonNegative
                - noShow
                - notFitForDuty
                - ordered
                - pass
                - pending
                - positive
                - released
                - scheduled
                - substituted
                - testCancelled
                - testNotPerformed
                - unobtainable
            - type: string
          description: Current order status; new values may appear.
          example: pending
        statusUpdatedAt:
          format: date-time
          type: string
          description: >-
            When the order status last changed; the creation time until the
            first change.
          example: '2026-09-24T15:15:00.000Z'
        testReason:
          anyOf:
            - anyOf:
                - type: string
                  enum:
                    - blindSample
                    - fitnessForDuty
                    - followUp
                    - jobTransfer
                    - notIndicated
                    - other
                    - periodic
                    - periodicMedical
                    - postAccident
                    - preEmployment
                    - preSiteAccess
                    - probation
                    - promotion
                    - random
                    - reasonableSuspicion
                    - returnToDuty
                    - splitSpecimen
                    - sweep
                    - unauthorizedTest
                    - unknown
                    - injury
                - type: string
            - type: 'null'
          description: Reason for the test.
          example: preEmployment
        updatedAt:
          format: date-time
          type: string
          description: When the order was last updated.
          example: '2026-09-24T15:20:00.000Z'
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/orders/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11
          format: uri-reference
      required:
        - id
        - object
        - code
        - agency
        - clinic
        - company
        - createdAt
        - expiresAt
        - isFinal
        - jobCategory
        - location
        - otherTestReason
        - packages
        - participant
        - services
        - status
        - statusUpdatedAt
        - testReason
        - updatedAt
        - url
    AgencyReference:
      type: object
      properties:
        code:
          type: string
          description: Agency code, as regulations name it.
          example: FAA
        id:
          type: string
          description: Unique identifier of the agency.
          example: '3'
        object:
          type: string
          description: Object type; always `agency`.
          example: agency
          enum:
            - agency
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/agencies/3
          format: uri-reference
      required:
        - code
        - id
        - object
        - url
    ClinicReference:
      type: object
      properties:
        address:
          anyOf:
            - $ref: '#/components/schemas/Address'
            - type: 'null'
          description: Postal address; null when the clinic has none.
        id:
          type: string
          description: Unique identifier of the clinic.
          example: '42'
        name:
          type: string
          description: Clinic name.
          example: Austin Downtown Clinic
        object:
          type: string
          description: Object type; always `clinic`.
          example: clinic
          enum:
            - clinic
        phone:
          description: Primary phone number.
          example: +1-512-555-0100
          type:
            - string
            - 'null'
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/clinics/42
          format: uri-reference
      required:
        - address
        - id
        - name
        - object
        - phone
        - url
    CompanyReference:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the company.
          example: '123'
        name:
          type: string
          description: Company name.
          example: Acme Inc
        object:
          type: string
          description: Object type; always `company`.
          example: company
          enum:
            - company
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/companies/123
          format: uri-reference
      required:
        - id
        - name
        - object
        - url
    JobCategoryReference:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the job category.
          example: 3987402f-e963-45a9-8799-b9ea6621adae
        name:
          type: string
          description: Job category name.
          example: Flight Crewmember
        object:
          type: string
          description: Object type; always `jobCategory`.
          example: jobCategory
          enum:
            - jobCategory
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: >-
            /api/v2/agencies/3/jobCategories/3987402f-e963-45a9-8799-b9ea6621adae
          format: uri-reference
      required:
        - id
        - name
        - object
        - url
    LocationReference:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the location.
          example: '456'
        name:
          type: string
          description: Location name.
          example: Acme Downtown
        object:
          type: string
          description: Object type; always `location`.
          example: location
          enum:
            - location
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/locations/456
          format: uri-reference
      required:
        - id
        - name
        - object
        - url
    OrderMatched:
      type: object
      properties:
        originalSource:
          type: string
          description: Where the matched order was created.
          example: app
        score:
          type: number
          description: Match confidence, 0 to 100.
          example: 100
      required:
        - originalSource
        - score
    PackageReference:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the package.
          example: '789'
        name:
          type: string
          description: Package name.
          example: DOT Pre-Employment Drug Test
        object:
          type: string
          description: Object type; always `package`.
          example: package
          enum:
            - package
        url:
          type: string
          description: Canonical path of this resource, relative to the API origin.
          example: /api/v2/packages/789
          format: uri-reference
      required:
        - id
        - name
        - object
        - url
    OrderParticipant:
      type: object
      properties:
        address:
          anyOf:
            - $ref: '#/components/schemas/Address'
            - type: 'null'
          description: Postal address; null when none was provided.
        birthDate:
          anyOf:
            - type: string
              format: date
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
            - type: 'null'
          description: Date of birth (ISO 8601 date).
          example: '1980-11-11'
        email:
          description: Email address.
          example: john.doe@example.com
          type:
            - string
            - 'null'
        firstName:
          description: First name.
          example: John
          type:
            - string
            - 'null'
        identifiers:
          type: array
          items:
            $ref: '#/components/schemas/ParticipantIdentifier'
          description: >-
            Government and employer identifiers. Present only for API tokens
            with the `order.participant.read` scope, and never on a
            cancellation.
        lastName:
          description: Last name.
          example: Doe
          type:
            - string
            - 'null'
        middleName:
          description: Middle name.
          example: Q
          type:
            - string
            - 'null'
        phone:
          description: Phone number (E.164).
          example: '+13033232323'
          type:
            - string
            - 'null'
      required:
        - address
        - birthDate
        - email
        - firstName
        - lastName
        - middleName
        - phone
    OrderService:
      type: object
      properties:
        attributes:
          anyOf:
            - $ref: '#/components/schemas/ServiceAttributes'
            - type: 'null'
          description: >-
            Testing category and specimen type; null when the service has
            neither.
        courierServiceName:
          description: Courier carrying the specimen.
          example: FedEx
          type:
            - string
            - 'null'
        id:
          type: string
          description: Unique identifier of the service on this order.
        isDot:
          type: boolean
          description: Whether the service is a DOT-regulated test.
          example: false
        isFinal:
          type: boolean
          description: Whether the service status is terminal.
          example: false
        lab:
          anyOf:
            - $ref: '#/components/schemas/VendorReference'
            - type: 'null'
          description: Lab testing the specimen; null when none is named.
        name:
          type: string
          description: Service name.
          example: 5 Panel Urine
        object:
          type: string
          description: Object type; always `orderService`.
          example: orderService
          enum:
            - orderService
        screenHistory:
          type: array
          items:
            $ref: '#/components/schemas/OrderServiceScreenHistory'
          description: >-
            Milestones reached so far, in screening order; one not reached yet
            is absent.
        specimenId:
          description: Specimen identifier.
          example: SP-1
          type:
            - string
            - 'null'
        status:
          anyOf:
            - type: string
              enum:
                - adulterated
                - adulterated_failACTC
                - adulterated_failTC
                - cancelled
                - lostInTransit
                - complete
                - complete_abnormal
                - complete_critical
                - complete_allergy
                - complete_allergy_fever
                - complete_clear
                - complete_deferred
                - complete_discrepancy
                - complete_disqualified
                - complete_dryMouth
                - complete_fever
                - complete_hits
                - complete_meetsStandards
                - complete_meetsStandardsWithRestrictions
                - complete_MROReportReleased
                - complete_noHits
                - complete_noMatch
                - complete_noRecord
                - complete_noReviewNoReport
                - complete_notClear
                - complete_notMeetsStandards
                - complete_outOfScope
                - complete_periodicMonitoringRequired
                - complete_record
                - complete_reject
                - complete_seeComments
                - complete_forBilling
                - complete_requiresProviderAssessment
                - complete_unableToVerify
                - complete_unknown
                - complete_verified
                - declined
                - expired
                - fail
                - fitForDuty
                - incomplete
                - incomplete_collectionCompletedNoInsufficientSpecimenProvided
                - incomplete_collectionCompleteNotEnoughSpecimenProvided
                - incomplete_qnsQuantityNotSufficient
                - incomplete_donorUnable
                - incomplete_excused
                - incomplete_incompleteExamination
                - incomplete_invalid
                - incomplete_labReject
                - incomplete_refusalToTest
                - incomplete_shyBladder
                - incomplete_shyLung
                - integrationError
                - negative
                - negative_negativeDilute
                - negative_negativeSeeReport
                - nonNegative
                - noShow
                - notFitForDuty
                - notRun
                - ordered
                - pass
                - pending
                - pending_additionalResearchNeeded
                - pending_arrivedAtTheClinic
                - pending_atTheLab
                - pending_awaitingMROContact
                - pending_awaitingReview
                - pending_awaitingSignOff
                - pending_collectionCompleted
                - pending_collectionInitiated
                - pending_collectionSuspended
                - pending_derNotificationRequired
                - pending_determinationPending
                - pending_inMROReview
                - pending_inProcess
                - pending_inRecovery
                - pending_pendingAffidavit
                - pending_pendingFax
                - pending_pendingMRO
                - pending_pendingMROCCF
                - pending_possibleHitsFound
                - pending_presumptivePositive
                - pending_resultPending
                - pending_review
                - pending_sentToLab
                - pending_shyBladder
                - pending_unableToContact
                - pending_underReview
                - pending_collectionCancelled
                - pending_processingCancelled
                - pending_processingCompleted
                - positive
                - positive_positiveDilute
                - positive_positiveUntilPrescriptionVerified
                - positive_positiveDiluteUntilPrescriptionVerified
                - positive_positiveUnableContactDonor
                - processing_incompleteExamination
                - released
                - scheduled
                - substituted
                - testCancelled
                - testNotPerformed
                - unobtainable
                - notReported
            - type: string
          description: >-
            Current service status. Values follow the `family_detail`
            convention; new details may appear.
          example: pending_collectionCompleted
        statusHistory:
          type: array
          items:
            $ref: '#/components/schemas/OrderServiceStatusHistory'
          description: Status changes, oldest first.
        statusUpdatedAt:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: When the status last changed.
          example: '2026-09-24T15:15:00.000Z'
        trackingNumber:
          description: Courier tracking number.
          example: 1Z999AA10123456784
          type:
            - string
            - 'null'
      required:
        - attributes
        - courierServiceName
        - id
        - isDot
        - isFinal
        - lab
        - name
        - object
        - screenHistory
        - specimenId
        - status
        - statusHistory
        - statusUpdatedAt
        - trackingNumber
    Address:
      type: object
      properties:
        city:
          description: City or town.
          example: Seattle
          type:
            - string
            - 'null'
        country:
          description: Country code.
          example: US
          type:
            - string
            - 'null'
        line1:
          description: First line of the street address.
          example: 123 Main St
          type:
            - string
            - 'null'
        line2:
          description: Second line of the street address.
          example: Suite 400
          type:
            - string
            - 'null'
        object:
          type: string
          description: Object type; always `address`.
          example: address
          enum:
            - address
        postalCode:
          description: Postal or ZIP code.
          example: '98101'
          type:
            - string
            - 'null'
        state:
          description: State or region code.
          example: WA
          type:
            - string
            - 'null'
      required:
        - city
        - country
        - line1
        - line2
        - object
        - postalCode
        - state
    ParticipantIdentifier:
      type: object
      properties:
        issuingCountry:
          description: Issuing country code; set for a driver’s license.
          example: US
          type:
            - string
            - 'null'
        issuingState:
          description: Issuing state or province code; set for a driver’s license.
          example: WA
          type:
            - string
            - 'null'
        object:
          type: string
          description: Object type; always `participantIdentifier`.
          example: participantIdentifier
          enum:
            - participantIdentifier
        type:
          anyOf:
            - type: string
              enum:
                - ssn
                - driverLicense
                - employerId
            - type: string
          description: >-
            Kind of identifier. New values may be added; skip one you do not
            know.
          example: driverLicense
        value:
          type: string
          description: >-
            The identifier. A Social Security number is masked to its last four
            digits.
          example: D1234567
      required:
        - issuingCountry
        - issuingState
        - object
        - type
        - value
    ServiceAttributes:
      type: object
      properties:
        category:
          anyOf:
            - anyOf:
                - type: string
                  enum:
                    - dot
                    - dotLookalike
                    - instantTestAllInOneCup
                    - instantTestOral
                    - nonStandardPanels
                    - oral
                    - standardPanels
                    - standardPanelsPlusExpOpi
                    - standardPanelsPlusExpOpiPlusFentanyl
                    - standardPanelsPlusExpOpiPlusMdma
                    - standardPanelsPlusExpOpiPlusMdmaPlusFentanyl
                    - standardPanelsPlusMdmaPlusExpOpiPlusOxy
                    - urine
                - type: string
            - type: 'null'
          description: Testing category. New values may be added.
          example: standardPanels
        type:
          anyOf:
            - anyOf:
                - type: string
                  enum:
                    - blood
                    - hair
                    - oral
                    - urine
                - type: string
            - type: 'null'
          description: Specimen type. New values may be added.
          example: urine
      required:
        - category
        - type
    VendorReference:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the vendor.
          example: 64cba816-3c52-4a63-9d0e-0f2b5d1a7e11
        name:
          type: string
          description: Vendor name.
          example: CRL
        object:
          type: string
          description: Object type; always `vendor`.
          example: vendor
          enum:
            - vendor
        type:
          anyOf:
            - type: string
              enum:
                - mro
                - lab
                - payment
                - bgc
                - other
                - tpa
                - system
            - type: string
          description: What the vendor does. New values may be added.
          example: lab
      required:
        - id
        - name
        - object
        - type
    OrderServiceScreenHistory:
      type: object
      properties:
        object:
          type: string
          description: Object type; always `orderServiceScreenHistory`.
          example: orderServiceScreenHistory
          enum:
            - orderServiceScreenHistory
        occurredAt:
          format: date-time
          type: string
          description: When the milestone was reached.
          example: '2026-09-24T15:15:00.000Z'
        type:
          anyOf:
            - type: string
              enum:
                - inMROReview
                - labReceived
                - notApplicable
                - ordered
                - resultReceived
                - resultReleased
                - specimenCollected
            - type: string
          description: >-
            Milestone reached. New values may be added; skip one you do not
            know.
          example: specimenCollected
      required:
        - object
        - occurredAt
        - type
    OrderServiceStatusHistory:
      type: object
      properties:
        groupType:
          anyOf:
            - type: string
              enum:
                - inMROReview
                - labReceived
                - notApplicable
                - ordered
                - resultReceived
                - resultReleased
                - specimenCollected
            - type: string
          description: Milestone the status belongs to.
          example: specimenCollected
        object:
          type: string
          description: Object type; always `orderServiceStatusHistory`.
          example: orderServiceStatusHistory
          enum:
            - orderServiceStatusHistory
        occurredAt:
          format: date-time
          type: string
          description: When the status happened, such as the collection time.
          example: '2026-09-24T15:15:00.000Z'
        status:
          anyOf:
            - type: string
              enum:
                - adulterated
                - adulterated_failACTC
                - adulterated_failTC
                - cancelled
                - lostInTransit
                - complete
                - complete_abnormal
                - complete_critical
                - complete_allergy
                - complete_allergy_fever
                - complete_clear
                - complete_deferred
                - complete_discrepancy
                - complete_disqualified
                - complete_dryMouth
                - complete_fever
                - complete_hits
                - complete_meetsStandards
                - complete_meetsStandardsWithRestrictions
                - complete_MROReportReleased
                - complete_noHits
                - complete_noMatch
                - complete_noRecord
                - complete_noReviewNoReport
                - complete_notClear
                - complete_notMeetsStandards
                - complete_outOfScope
                - complete_periodicMonitoringRequired
                - complete_record
                - complete_reject
                - complete_seeComments
                - complete_forBilling
                - complete_requiresProviderAssessment
                - complete_unableToVerify
                - complete_unknown
                - complete_verified
                - declined
                - expired
                - fail
                - fitForDuty
                - incomplete
                - incomplete_collectionCompletedNoInsufficientSpecimenProvided
                - incomplete_collectionCompleteNotEnoughSpecimenProvided
                - incomplete_qnsQuantityNotSufficient
                - incomplete_donorUnable
                - incomplete_excused
                - incomplete_incompleteExamination
                - incomplete_invalid
                - incomplete_labReject
                - incomplete_refusalToTest
                - incomplete_shyBladder
                - incomplete_shyLung
                - integrationError
                - negative
                - negative_negativeDilute
                - negative_negativeSeeReport
                - nonNegative
                - noShow
                - notFitForDuty
                - notRun
                - ordered
                - pass
                - pending
                - pending_additionalResearchNeeded
                - pending_arrivedAtTheClinic
                - pending_atTheLab
                - pending_awaitingMROContact
                - pending_awaitingReview
                - pending_awaitingSignOff
                - pending_collectionCompleted
                - pending_collectionInitiated
                - pending_collectionSuspended
                - pending_derNotificationRequired
                - pending_determinationPending
                - pending_inMROReview
                - pending_inProcess
                - pending_inRecovery
                - pending_pendingAffidavit
                - pending_pendingFax
                - pending_pendingMRO
                - pending_pendingMROCCF
                - pending_possibleHitsFound
                - pending_presumptivePositive
                - pending_resultPending
                - pending_review
                - pending_sentToLab
                - pending_shyBladder
                - pending_unableToContact
                - pending_underReview
                - pending_collectionCancelled
                - pending_processingCancelled
                - pending_processingCompleted
                - positive
                - positive_positiveDilute
                - positive_positiveUntilPrescriptionVerified
                - positive_positiveDiluteUntilPrescriptionVerified
                - positive_positiveUnableContactDonor
                - processing_incompleteExamination
                - released
                - scheduled
                - substituted
                - testCancelled
                - testNotPerformed
                - unobtainable
                - notReported
            - type: string
          description: Service status at that moment.
          example: pending_collectionCompleted
      required:
        - groupType
        - object
        - occurredAt
        - status
  securitySchemes:
    bearer:
      description: >-
        Origin One API token. Pass it in the Authorization header:
        `Authorization: Bearer <token>`.
      scheme: bearer
      type: http

````

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