> ## Documentation Index
> Fetch the complete documentation index at: https://vital-mintlify-7fa68d0b.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Register Testkit Order

> Create or submit order testkit register via the Junction API. Requires authentication with your team API key.

<Note>
  Patient name fields (`first_name`, `last_name`) must follow specific validation rules due to lab restrictions. See [Patient Name Validation](/lab/workflow/order-requirements#patient-name-validation) for complete details.
</Note>

<RequestExample>
  ```python Python theme={null}
  from junction import Gender, Junction, PatientAddressWithValidation, PatientDetailsWithValidation
  from junction.environment import JunctionEnvironment

  client = Junction(
      api_key="YOUR_API_KEY",
      environment=JunctionEnvironment.SANDBOX,
  )

  data = client.testkit.register(
      sample_id="<sample_id>",
      user_id="<user_id>",
      patient_details=PatientDetailsWithValidation(
          first_name="John",
          last_name="Doe",
          dob="1990-01-01",
          gender=Gender.MALE,
          phone_number="+1123456789",
          email="email@email.com",
      ),
      patient_address=PatientAddressWithValidation(
          receiver_name="John Doe",
          first_line="123 Main St",
          second_line="Apt. 1",
          city="San Francisco",
          state="CA",
          zip="94111",
          country="US",
      ),
  )
  ```

  ```typescript TypeScript theme={null}
  import { JunctionClient, JunctionEnvironment } from "@junction-api/sdk";

  const client = new JunctionClient({
      apiKey: "YOUR_API_KEY",
      environment: JunctionEnvironment.Sandbox,
  });

  const data = await client.testkit.register({
      sampleId: "<sample_id>",
      userId: "<user_id>",
      patientDetails: {
          firstName: "John",
          lastName: "Doe",
          dob: "1990-01-01",
          gender: "male",
          phoneNumber: "+1123456789",
          email: "email@email.com",
      },
      patientAddress: {
          receiverName: "John Doe",
          firstLine: "123 Main St",
          secondLine: "Apt. 1",
          city: "San Francisco",
          state: "CA",
          zip: "94111",
          country: "US",
      },
  });
  ```

  ```java Java theme={null}
  import com.junction.api.Junction;
  import com.junction.api.core.Environment;
  import com.junction.api.resources.testkit.requests.RegisterTestkitRequest;
  import com.junction.api.types.Gender;
  import com.junction.api.types.PatientAddressWithValidation;
  import com.junction.api.types.PatientDetailsWithValidation;

  Junction client = Junction.builder()
      .apiKey("YOUR_API_KEY")
      .environment(Environment.SANDBOX)
      .build();

  var data = client.testkit().register(
      RegisterTestkitRequest.builder()
          .sampleId("<sample_id>")
          .patientDetails(
              PatientDetailsWithValidation.builder()
                  .firstName("John")
                  .lastName("Doe")
                  .dob("1990-01-01")
                  .gender(Gender.MALE)
                  .phoneNumber("+1123456789")
                  .email("email@email.com")
                  .build()
          )
          .patientAddress(
              PatientAddressWithValidation.builder()
                  .firstLine("123 Main St")
                  .city("San Francisco")
                  .state("CA")
                  .zip("94111")
                  .country("US")
                  .build()
          )
          .userId("<user_id>")
          .build()
  );
  ```

  ```go Go theme={null}
  import (
      "context"

      junction "github.com/junction-api/junction-go"
      "github.com/junction-api/junction-go/client"
      "github.com/junction-api/junction-go/option"
  )

  c := client.NewClient(
      option.WithApiKey("YOUR_API_KEY"),
      option.WithBaseURL(junction.Environments.Sandbox),
  )

  response, err := c.Testkit.Register(context.TODO(), &junction.RegisterTestkitRequest{
      SampleId: "<sample_id>",
      UserId:   junction.String("<user_id>"),
      PatientDetails: &junction.PatientDetailsWithValidation{
          FirstName:   "John",
          LastName:    "Doe",
          Dob:         "1990-01-01",
          Gender:      junction.GenderMale,
          PhoneNumber: "+1123456789",
          Email:       "email@email.com",
      },
      PatientAddress: &junction.PatientAddressWithValidation{
          ReceiverName: junction.String("John Doe"),
          FirstLine:    "123 Main St",
          SecondLine:   junction.String("Apt. 1"),
          City:         "San Francisco",
          State:        "CA",
          Zip:          "94111",
          Country:      "US",
      },
  })
  if err != nil {
      return err
  }
  fmt.Printf("Received data %s\n", response)
  ```

  ```bash cURL theme={null}
  curl --request POST \
       --url '{{BASE_URL}}/v3/order/testkit/register' \
       --header 'Accept: application/json' \
       --header 'x-vital-api-key: YOUR_API_KEY' \
       --data '
  {
      "user_id":"63661a2b-2bb3-4125-bb1a-b590f64f057f",
      "sample_id":"123123123",
      "patient_details":{
          "first_name": "John",
          "last_name": "Doe",
          "dob": "2020-01-01",
          "gender": "male",
          "phone_number": "+1123456789",
          "email": "email@email.com"
      },
      "patient_address":{
        "receiver_name": "John Doe",
        "street": "123 Main St.",
        "street_number": "Apt. 208",
        "city": "San Francisco",
        "state": "CA",
        "zip": "91189",
        "country": "US"
      },
      "consents":[
        {"consentType": "terms-of-use"},
        {"consentType": "telehealth-informed-consent"},
        {"consentType": "notice-of-privacy-practices"}
      ],
      "physician":{
        "first_name": "Doctor",
        "last_name": "Doc",
        "npi": "123123123"
      }
  }
  '
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "order": {
      "id": "96edc6ef-3b2c-412b-b9e5-96f361f93aec",
      "team_id": "b080b20c-e162-4cf1-9c7d-8faee72ee08e",
      "user_id": "9f1e094e-1641-466b-b668-d4d3300e569f",
      "patient_details": {
        "first_name": "John",
        "last_name": "Doe",
        "phone_number": "+11234567890",
        "email": "doe@email.com",
        "dob": "2020-01-01",
        "gender": "male"
      },
      "patient_address": {
        "receiver_name": "John Doe",
        "first_line": "123 Main St.",
        "second_line": "Apt. 208",
        "city": "San Francisco",
        "state": "CA",
        "zip": "91189",
        "country": "United States",
        "phone_number": "+11234567890"
      },
      "shipping_details": {
        "receiver_name": "John Doe",
        "first_line": "123 Main St.",
        "second_line": "Apt. 208",
        "city": "San Francisco",
        "state": "CA",
        "zip": "91189",
        "country": "United States",
        "phone_number": "+11234567890"
      },
      "details": {
        "type": "testkit",
        "data": {
          "id": "a655f0e4-6405-4a1d-80b7-66f06c2108a7",
          "shipment": {
            "id": "d55210cc-3d9f-4115-8262-5013f700c7be",
            "outbound_tracking_number": "<outbound_tracking_number>",
            "outbound_tracking_url": "<outbound_tracking_url>",
            "inbound_tracking_number": "<inbound_tracking_number>",
            "inbound_tracking_url": "<inbound_tracking_url>",
            "outbound_courier": "usps",
            "inbound_courier": "usps",
            "notes": "<notes>",
            "created_at": "2020-01-01T00:00:00.000Z",
            "updated_at": "2020-01-01T00:00:00.000Z"
          },
          "created_at": "2020-01-01T00:00:00Z",
          "updated_at": "2020-01-01T00:00:00Z"
        }
      },
      "lab_test": {
        "name": "Lipids Panel",
        "description": "Cholesterol test",
        "method": "testkit"
      },
      "sample_id": "123456789",
      "health_insurance_id": "7695cc28-f9e5-400d-95d2-ec7d9ec580df",
      "notes": "This is a note",
      "created_at": "2020-01-01T00:00:00Z",
      "updated_at": "2020-01-01T00:00:00Z",
      "status": "received",
      "events": [
        {
          "id": 1,
          "created_at": "2022-01-01T00:00:00Z",
          "status": "received.testkit.ordered"
        },
        {
          "id": 2,
          "created_at": "2022-01-02T00:00:00Z",
          "status": "received.testkit.awaiting_registration"
        },
        {
          "id": 3,
          "created_at": "2022-01-02T00:00:00Z",
          "status": "received.testkit.requisition_created"
        },
        {
          "id": 4,
          "created_at": "2022-01-03T00:00:00Z",
          "status": "received.testkit.testkit_registered"
        }
      ]
    },
    "status": "string",
    "message": "string"
  }
  ```
</ResponseExample>


## OpenAPI

````yaml POST /v3/order/testkit/register
openapi: 3.1.0
info:
  title: Junction API
  description: https://docs.junction.com/
  version: 0.4.610
servers:
  - url: https://api.us.junction.com
    x-fern-server-name: Production
  - url: https://api.eu.junction.com
    x-fern-server-name: ProductionEU
  - url: https://api.sandbox.us.junction.com
    x-fern-server-name: Sandbox
  - url: https://api.sandbox.eu.junction.com
    x-fern-server-name: SandboxEU
security:
  - apiKeyAuth: []
paths:
  /v3/order/testkit/register:
    post:
      tags:
        - order
      summary: Register Testkit
      operationId: register_testkit_v3_order_testkit_register_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegisterTestkitRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostOrderResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    RegisterTestkitRequest:
      properties:
        user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: User Id
          description: >-
            The user ID of the patient. If it differs from the user currently
            associated with the unregistered testkit order, the order is rebound
            to this user at registration time. The user must exist on the same
            team as the order. If omitted, the order's existing user is kept.
        sample_id:
          type: string
          title: Sample Id
        patient_details:
          $ref: '#/components/schemas/PatientDetailsWithValidation'
        patient_address:
          $ref: '#/components/schemas/PatientAddressWithValidation'
        physician:
          anyOf:
            - $ref: '#/components/schemas/PhysicianCreateRequestBase'
            - type: 'null'
        health_insurance:
          anyOf:
            - $ref: '#/components/schemas/HealthInsuranceCreateRequest'
            - type: 'null'
        consents:
          items:
            $ref: '#/components/schemas/Consent'
          type: array
          title: Consents
      type: object
      required:
        - sample_id
        - patient_details
        - patient_address
      title: RegisterTestkitRequest
    PostOrderResponse:
      properties:
        order:
          $ref: '#/components/schemas/ClientFacingOrder'
        status:
          type: string
          title: Status
        message:
          type: string
          title: Message
      type: object
      required:
        - order
        - status
        - message
      title: PostOrderResponse
    HTTPValidationError:
      properties:
        detail:
          title: Detail
      type: object
      title: HTTPValidationError
    PatientDetailsWithValidation:
      properties:
        first_name:
          type: string
          maxLength: 50
          minLength: 1
          title: First Name
        last_name:
          type: string
          maxLength: 50
          minLength: 1
          title: Last Name
        dob:
          type: string
          format: date
          title: Dob
        gender:
          $ref: '#/components/schemas/Gender'
          description: ℹ️ This enum is non-exhaustive.
        phone_number:
          type: string
          title: Phone Number
        email:
          type: string
          format: email
          title: Email
        medical_proxy:
          anyOf:
            - $ref: '#/components/schemas/GuarantorDetails'
            - type: 'null'
          description: Parent/medical_proxy details. Required if patient is a minor.
        race:
          anyOf:
            - $ref: '#/components/schemas/Race'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        ethnicity:
          anyOf:
            - $ref: '#/components/schemas/Ethnicity'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        sexual_orientation:
          anyOf:
            - $ref: '#/components/schemas/SexualOrientation'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        gender_identity:
          anyOf:
            - $ref: '#/components/schemas/GenderIdentity'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        household_income:
          anyOf:
            - type: integer
            - type: 'null'
          title: Household Income
          description: Household income in USD. If not provided, will be set to None
        household_size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Household Size
          description: Household size. If not provided, will be set to None
      type: object
      required:
        - first_name
        - last_name
        - dob
        - gender
        - phone_number
        - email
      title: PatientDetailsWithValidation
      description: >-
        Patient details with validation for first_name, last_name, email, and
        dob.
    PatientAddressWithValidation:
      properties:
        receiver_name:
          type: string
          title: Receiver Name
          default: ''
        first_line:
          type: string
          title: First Line
        second_line:
          anyOf:
            - type: string
            - type: 'null'
          title: Second Line
        city:
          type: string
          title: City
        state:
          type: string
          title: State
        zip:
          type: string
          pattern: ^\d{5}(-\d{4})?$
          title: Zip
        country:
          type: string
          title: Country
        access_notes:
          anyOf:
            - type: string
              maxLength: 1000
            - type: 'null'
          title: Access Notes
        phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Phone Number
      type: object
      required:
        - first_line
        - city
        - state
        - zip
        - country
      title: PatientAddressWithValidation
    PhysicianCreateRequestBase:
      properties:
        first_name:
          type: string
          title: First Name
        last_name:
          type: string
          title: Last Name
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        npi:
          type: string
          title: Npi
        licensed_states:
          items:
            type: string
          type: array
          title: Licensed States
      type: object
      required:
        - first_name
        - last_name
        - npi
      title: PhysicianCreateRequestBase
    HealthInsuranceCreateRequest:
      properties:
        front_image:
          anyOf:
            - $ref: '#/components/schemas/Jpeg'
            - $ref: '#/components/schemas/Png'
            - type: 'null'
          title: Front Image
          description: An image of the front of the patient insurance card.
        back_image:
          anyOf:
            - $ref: '#/components/schemas/Jpeg'
            - $ref: '#/components/schemas/Png'
            - type: 'null'
          title: Back Image
          description: An image of the back of the patient insurance card.
        patient_signature_image:
          anyOf:
            - $ref: '#/components/schemas/Jpeg'
            - $ref: '#/components/schemas/Png'
            - type: 'null'
          title: Patient Signature Image
          description: An image of the patient signature for health insurance billing.
        subjective:
          anyOf:
            - type: string
            - type: 'null'
          title: Subjective
          description: >-
            Textual description of what are the patient symptoms and attempted
            treatments.
        assessment_plan:
          anyOf:
            - type: string
            - type: 'null'
          title: Assessment Plan
          description: >-
            Textual description of what are the physician assessments and
            testing plans.
        payor_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Payor Code
          description: Unique identifier representing a specific Health Insurance.
        insurance_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Insurance Id
          description: >-
            Insurance unique number assigned to a patient, usually present on
            the insurance card.
        responsible_relationship:
          anyOf:
            - $ref: '#/components/schemas/ResponsibleRelationship'
            - type: 'null'
          description: >-
            Relationship between the patient and the insurance contractor.
            Values can be (Self, Spouse, Other Relationship). ℹ️ This enum is
            non-exhaustive.
        responsible_details:
          anyOf:
            - $ref: >-
                #/components/schemas/vital_core__schemas__db_schemas__lab_test__health_insurance__PersonDetails
            - type: 'null'
          description: >-
            Responsible details when the value of responsible_relationship is
            not 'Self'.
        diagnosis_codes:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Diagnosis Codes
          description: Diagnosis codes for insurance billing.
      type: object
      title: HealthInsuranceCreateRequest
    Consent:
      properties:
        consentType:
          $ref: '#/components/schemas/ConsentType'
          description: ℹ️ This enum is non-exhaustive.
        version:
          type: string
          title: Version
          default: '1.0'
        timeOfConsent:
          type: string
          format: date-time
          title: Timeofconsent
      type: object
      required:
        - consentType
      title: Consent
    ClientFacingOrder:
      properties:
        user_id:
          type: string
          format: uuid
          title: User Id
          description: >-
            User id returned by vital create user request. This id should be
            stored in your database against the user and used for all
            interactions with the vital api.
        id:
          type: string
          format: uuid
          title: Id
          description: The Vital Order ID
        team_id:
          type: string
          format: uuid
          title: Team Id
          description: Your team id.
        patient_details:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingPatientDetailsCompatible'
            - type: 'null'
          description: Patient Details
        patient_address:
          anyOf:
            - $ref: '#/components/schemas/PatientAddressCompatible'
            - type: 'null'
          description: Patient Address
        lab_test:
          $ref: '#/components/schemas/ClientFacingLabTest'
          description: The Vital Test associated with the order
        details:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingWalkInOrderDetails'
            - $ref: '#/components/schemas/ClientFacingTestKitOrderDetails'
            - $ref: '#/components/schemas/ClientFacingAtHomePhlebotomyOrderDetails'
            - $ref: '#/components/schemas/ClientFacingOnSiteCollectionOrderDetails'
          title: Details
        sample_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Sample Id
          description: Sample ID
        notes:
          anyOf:
            - type: string
            - type: 'null'
          title: Notes
          description: Notes associated with the order
        clinical_notes:
          anyOf:
            - type: string
            - type: 'null'
          title: Clinical Notes
        created_at:
          type: string
          format: date-time
          title: Created At
          description: When your order was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: When your order was last updated.
        events:
          items:
            $ref: '#/components/schemas/ClientFacingOrderEvent'
          type: array
          title: Events
        status:
          anyOf:
            - $ref: '#/components/schemas/OrderTopLevelStatus'
            - type: 'null'
          description: >-
            The top-level status of the latest event for this order. This field
            is deprecated. Please use `last_event` instead. ℹ️ This enum is
            non-exhaustive.
          deprecated: true
        last_event:
          $ref: '#/components/schemas/ClientFacingOrderEvent'
          description: The latest event in the order's lifecycle.
        physician:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingPhysician'
            - type: 'null'
        health_insurance_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Health Insurance Id
          description: Vital ID of the health insurance.
        requisition_form_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Requisition Form Url
          description: DEPRECATED. Requistion form url.
        priority:
          type: boolean
          title: Priority
          description: >-
            Defines whether order is priority or not. For some labs, this refers
            to a STAT order.
          default: false
        shipping_details:
          anyOf:
            - $ref: '#/components/schemas/ShippingAddress'
            - type: 'null'
          description: Shipping Details. For unregistered testkit orders.
        activate_by:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Activate By
          description: Schedule an Order to be processed in a future date.
        passthrough:
          anyOf:
            - type: string
            - type: 'null'
          title: Passthrough
        billing_type:
          $ref: '#/components/schemas/Billing'
          default: client_bill
          description: ℹ️ This enum is non-exhaustive.
        icd_codes:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Icd Codes
        has_abn:
          type: boolean
          title: Has Abn
          description: >-
            Defines whether the order has an Advanced Beneficiary Notice (ABN)
            form or not.
        interpretation:
          anyOf:
            - $ref: '#/components/schemas/Interpretation'
            - type: 'null'
          description: >-
            Interpretation of the order result. Can be one of (normal, abnormal,
            critical). ℹ️ This enum is non-exhaustive.
        has_missing_results:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Has Missing Results
          description: Defines whether the order result has missing biomarkers.
        expected_result_by_date:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Expected Result By Date
          description: >-
            The common-case date by which the order result is expected to be
            available.
        worst_case_result_by_date:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Worst Case Result By Date
          description: >-
            The latest date by which the order result is expected to be
            available.
        origin:
          anyOf:
            - $ref: '#/components/schemas/OrderOrigin'
            - type: 'null'
          description: ℹ️ This enum is non-exhaustive.
        order_transaction:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingOrderTransaction'
            - type: 'null'
      type: object
      required:
        - user_id
        - id
        - team_id
        - patient_details
        - patient_address
        - lab_test
        - details
        - sample_id
        - notes
        - created_at
        - updated_at
        - events
        - last_event
        - health_insurance_id
        - requisition_form_url
        - shipping_details
        - has_abn
      title: ClientFacingOrder
      example:
        activate_by: '2020-01-01'
        created_at: '2020-01-01T00:00:00Z'
        details:
          data:
            created_at: '2020-01-01T00:00:00Z'
            id: a655f0e4-6405-4a1d-80b7-66f06c2108a7
            shipment:
              created_at: '2020-01-01T00:00:00.000Z'
              id: d55210cc-3d9f-4115-8262-5013f700c7be
              inbound_courier: usps
              inbound_tracking_number: <inbound_tracking_number>
              inbound_tracking_url: <inbound_tracking_url>
              notes: <notes>
              outbound_courier: usps
              outbound_tracking_number: <outbound_tracking_number>
              outbound_tracking_url: <outbound_tracking_url>
              updated_at: '2020-01-01T00:00:00.000Z'
            updated_at: '2020-01-01T00:00:00Z'
          type: testkit
        events:
          - created_at: '2022-01-01T00:00:00Z'
            id: 1
            status: received.testkit.ordered
          - created_at: '2022-01-02T00:00:00Z'
            id: 2
            status: received.testkit.requisition_created
          - created_at: '2022-01-03T00:00:00Z'
            id: 3
            status: collecting_sample.testkit.transit_customer
        has_abn: false
        health_insurace_id: 8edc0d99-8be7-4735-b071-d7782ad87c39
        id: 9186c374-9a53-495e-bfec-977f691b47d5
        lab_test:
          description: Cholesterol test
          method: testkit
          name: Lipids Panel
        last_event:
          created_at: '2022-01-03T00:00:00Z'
          id: 3
          status: collecting_sample.testkit.transit_customer
        notes: This is a note
        order_transaction:
          id: a655f0e4-6405-4a1d-80b7-66f06c2108a7
          orders:
            - created_at: '2020-01-01T00:00:00Z'
              id: d55210cc-3d9f-4115-8262-5013f700c7be
              low_level_status: transit_customer
              low_level_status_created_at: '2020-01-05T00:00:00Z'
              origin: initial
              updated_at: '2020-01-05T00:00:00Z'
            - created_at: '2020-01-05T01:00:00Z'
              id: e66321dd-4e0g-5226-9373-6124g811d8cf
              low_level_status: requisition_created
              low_level_status_created_at: '2020-01-05T01:00:00Z'
              origin: redraw
              updated_at: '2020-01-05T01:00:00Z'
          status: active
        origin: initial
        patient_address:
          city: San Francisco
          country: United States
          first_line: 123 Main St.
          phone_number: '+11234567890'
          receiver_name: John Doe
          second_line: Apt. 208
          state: CA
          zip: '91189'
        patient_details:
          dob: '2020-01-01'
          gender: male
        requisition_form_url: https://www.example.com
        sample_id: '123456789'
        status: collecting_sample
        team_id: 159924ec-0754-4f87-ba32-23e5503dbaa2
        updated_at: '2020-01-01T00:00:00Z'
        user_id: b3ef0199-ad85-427a-9414-98b22e858cbe
    Gender:
      type: string
      enum:
        - female
        - male
        - other
        - unknown
      title: Gender
      description: ℹ️ This enum is non-exhaustive.
    GuarantorDetails:
      properties:
        first_name:
          type: string
          title: First Name
        last_name:
          type: string
          title: Last Name
        address:
          $ref: '#/components/schemas/Address'
        phone_number:
          type: string
          title: Phone Number
        household_income:
          anyOf:
            - type: integer
            - type: 'null'
          title: Household Income
        household_size:
          anyOf:
            - type: integer
            - type: 'null'
          title: Household Size
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
      type: object
      required:
        - first_name
        - last_name
        - address
        - phone_number
      title: GuarantorDetails
    Race:
      type: string
      enum:
        - african_american_or_black
        - asian
        - indigenous_native_american_alaska_native
        - other
        - pacific_islander_or_hawaiian
        - white_caucasian
      title: Race
      description: ℹ️ This enum is non-exhaustive.
    Ethnicity:
      type: string
      enum:
        - hispanic
        - non_hispanic
        - ashkenazi_jewish
        - other
      title: Ethnicity
      description: ℹ️ This enum is non-exhaustive.
    SexualOrientation:
      type: string
      enum:
        - lesbian_gay_or_homosexual
        - heterosexual_or_straight
        - bisexual
        - dont_know
        - other
      title: SexualOrientation
      description: ℹ️ This enum is non-exhaustive.
    GenderIdentity:
      type: string
      enum:
        - male
        - female
        - female_to_male_ftm_transgender_male_trans_man
        - male_to_female_mtf_transgender_female_trans_woman
        - genderqueer
        - other
      title: GenderIdentity
      description: ℹ️ This enum is non-exhaustive.
    Jpeg:
      properties:
        content:
          type: string
          title: Content
          format: binary
        content_type:
          type: string
          const: image/jpeg
          title: Content Type
      type: object
      required:
        - content
        - content_type
      title: Jpeg
    Png:
      properties:
        content:
          type: string
          title: Content
          format: binary
        content_type:
          type: string
          const: image/png
          title: Content Type
      type: object
      required:
        - content
        - content_type
      title: Png
    ResponsibleRelationship:
      type: string
      enum:
        - Self
        - Spouse
        - Other
      title: ResponsibleRelationship
      description: ℹ️ This enum is non-exhaustive.
    vital_core__schemas__db_schemas__lab_test__health_insurance__PersonDetails:
      properties:
        first_name:
          type: string
          title: First Name
        last_name:
          type: string
          title: Last Name
        address:
          $ref: '#/components/schemas/Address'
        phone_number:
          type: string
          title: Phone Number
        phone_type:
          type: string
          title: Phone Type
          default: Mobile
      type: object
      required:
        - first_name
        - last_name
        - address
        - phone_number
      title: PersonDetails
    ConsentType:
      type: string
      enum:
        - terms-of-use
        - telehealth-informed-consent
        - mobile-terms-and-conditions
        - notice-of-privacy-practices
        - privacy-policy
        - hipaa-authorization
      title: ConsentType
      description: ℹ️ This enum is non-exhaustive.
    ClientFacingPatientDetailsCompatible:
      properties:
        first_name:
          anyOf:
            - type: string
            - type: 'null'
          title: First Name
        last_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Last Name
        dob:
          type: string
          format: date-time
          title: Dob
        gender:
          type: string
          title: Gender
        phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Phone Number
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        medical_proxy:
          anyOf:
            - $ref: '#/components/schemas/GuarantorDetails'
            - type: 'null'
          description: Parent/medical_proxy details. Required if patient is a minor.
        race:
          anyOf:
            - $ref: '#/components/schemas/Race'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        ethnicity:
          anyOf:
            - $ref: '#/components/schemas/Ethnicity'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        sexual_orientation:
          anyOf:
            - $ref: '#/components/schemas/SexualOrientation'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
        gender_identity:
          anyOf:
            - $ref: '#/components/schemas/GenderIdentity'
            - type: 'null'
          description: >-
            If not provided, will be set to 'Not Specified' ℹ️ This enum is
            non-exhaustive.
      type: object
      required:
        - dob
        - gender
      title: ClientFacingPatientDetailsCompatible
    PatientAddressCompatible:
      properties:
        receiver_name:
          type: string
          title: Receiver Name
          default: ''
        first_line:
          type: string
          title: First Line
        second_line:
          anyOf:
            - type: string
            - type: 'null'
          title: Second Line
        city:
          type: string
          title: City
        state:
          type: string
          title: State
        zip:
          type: string
          title: Zip
        country:
          type: string
          title: Country
        access_notes:
          anyOf:
            - type: string
              maxLength: 1000
            - type: 'null'
          title: Access Notes
        phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Phone Number
      type: object
      required:
        - first_line
        - city
        - state
        - zip
        - country
      title: PatientAddressCompatible
    ClientFacingLabTest:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: ''
        slug:
          type: string
          title: Slug
          description: ''
        name:
          type: string
          title: Name
          description: ''
        sample_type:
          $ref: '#/components/schemas/LabTestSampleType'
          description: ℹ️ This enum is non-exhaustive.
        method:
          $ref: '#/components/schemas/LabTestCollectionMethod'
          description: ℹ️ This enum is non-exhaustive.
        price:
          type: number
          title: Price
          description: ''
        is_active:
          type: boolean
          title: Is Active
          description: Deprecated. Use status instead.
        status:
          $ref: '#/components/schemas/LabTestStatus'
          description: ℹ️ This enum is non-exhaustive.
        fasting:
          type: boolean
          title: Fasting
          description: Defines whether a lab test requires fasting.
          default: false
        lab:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingLab'
            - type: 'null'
          description: ''
        markers:
          anyOf:
            - items:
                $ref: '#/components/schemas/ClientFacingMarker'
              type: array
            - type: 'null'
          title: Markers
          description: ''
        is_delegated:
          type: boolean
          title: Is Delegated
          description: >-
            Deprecated and always false. Delegation is now at the lab account
            level. Used to denote whether a lab test requires using non-Vital
            physician networks.
          default: false
          deprecated: true
        auto_generated:
          type: boolean
          title: Auto Generated
          description: Whether the lab test was auto-generated by Vital
          default: false
        has_collection_instructions:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Has Collection Instructions
          description: Whether or not the lab test has collection instructions.
        common_tat_days:
          anyOf:
            - type: integer
            - type: 'null'
          title: Common Tat Days
          description: >-
            The common turnaround time in days for the lab test. This is the
            expected time for the lab to process the test and return results.
        worst_case_tat_days:
          anyOf:
            - type: integer
            - type: 'null'
          title: Worst Case Tat Days
          description: >-
            The worst-case turnaround time in days for the lab test. This is the
            maximum time the lab may take to process the test and return
            results.
      type: object
      required:
        - id
        - slug
        - name
        - sample_type
        - method
        - price
        - is_active
        - status
        - lab
        - markers
      title: ClientFacingLabTest
      example:
        lab_test:
          description: Cholesterol test
          fasting: false
          has_collection_instructions: false
          is_delegated: false
          lab:
            city: New York
            first_line_address: 123 Main St
            name: US Specialty Lab
            slug: USSL
            zipcode: '10001'
          markers:
            - description: >-
                Hemoglobin A1c is a form of hemoglobin that is measured identify
                your average blood sugar levels over the past 3 months.
              id: 1
              lab_id: 1
              name: Hemoglobin A1c
              price: '10.00'
              provider_id: '1234'
              slug: hemoglobin-a1c
              type: biomarker
              unit: '%'
          method: testkit
          name: Lipids Panel
          price: 10
          sample_type: dried blood spot
          status: active
    ClientFacingWalkInOrderDetails:
      properties:
        type:
          type: string
          const: walk_in_test
          title: Type
        data:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingWalkInTestOrder'
            - type: 'null'
      type: object
      required:
        - type
      title: ClientFacingWalkInOrderDetails
    ClientFacingTestKitOrderDetails:
      properties:
        type:
          type: string
          const: testkit
          title: Type
        data:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingTestkitOrder'
            - type: 'null'
      type: object
      required:
        - type
      title: ClientFacingTestKitOrderDetails
    ClientFacingAtHomePhlebotomyOrderDetails:
      properties:
        type:
          type: string
          const: at_home_phlebotomy
          title: Type
        data:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingAtHomePhlebotomyOrder'
            - type: 'null'
      type: object
      required:
        - type
      title: ClientFacingAtHomePhlebotomyOrderDetails
    ClientFacingOnSiteCollectionOrderDetails:
      properties:
        type:
          type: string
          const: on_site_collection
          title: Type
        data:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingOnSiteCollectionOrder'
            - type: 'null'
      type: object
      required:
        - type
      title: ClientFacingOnSiteCollectionOrderDetails
    ClientFacingOrderEvent:
      properties:
        id:
          type: integer
          title: Id
        created_at:
          type: string
          format: date-time
          title: Created At
        status:
          $ref: '#/components/schemas/OrderStatus'
          description: ℹ️ This enum is non-exhaustive.
        status_detail:
          anyOf:
            - $ref: '#/components/schemas/OrderStatusDetail'
            - type: 'null'
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - id
        - created_at
        - status
      title: ClientFacingOrderEvent
    OrderTopLevelStatus:
      type: string
      enum:
        - received
        - collecting_sample
        - sample_with_lab
        - completed
        - cancelled
        - failed
      title: OrderTopLevelStatus
      description: ℹ️ This enum is non-exhaustive.
    ClientFacingPhysician:
      properties:
        first_name:
          type: string
          title: First Name
        last_name:
          type: string
          title: Last Name
        npi:
          type: string
          title: Npi
      type: object
      required:
        - first_name
        - last_name
        - npi
      title: ClientFacingPhysician
    ShippingAddress:
      properties:
        receiver_name:
          type: string
          title: Receiver Name
        first_line:
          type: string
          title: First Line
        second_line:
          anyOf:
            - type: string
            - type: 'null'
          title: Second Line
        city:
          type: string
          title: City
        state:
          type: string
          title: State
        zip:
          type: string
          title: Zip
        country:
          type: string
          title: Country
        phone_number:
          type: string
          title: Phone Number
      type: object
      required:
        - receiver_name
        - first_line
        - city
        - state
        - zip
        - country
        - phone_number
      title: ShippingAddress
    Billing:
      type: string
      enum:
        - client_bill
        - commercial_insurance
        - patient_bill_passthrough
        - patient_bill
      title: Billing
      description: ℹ️ This enum is non-exhaustive.
    Interpretation:
      type: string
      enum:
        - normal
        - abnormal
        - critical
        - unknown
      title: Interpretation
      description: ℹ️ This enum is non-exhaustive.
    OrderOrigin:
      type: string
      enum:
        - initial
        - redraw
        - recreation
      title: OrderOrigin
      description: ℹ️ This enum is non-exhaustive.
    ClientFacingOrderTransaction:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        status:
          $ref: '#/components/schemas/OrderTransactionStatus'
          description: ℹ️ This enum is non-exhaustive.
        orders:
          items:
            $ref: '#/components/schemas/ClientFacingOrderInTransaction'
          type: array
          title: Orders
      type: object
      required:
        - id
        - status
        - orders
      title: ClientFacingOrderTransaction
      description: Order transaction info.
    Address:
      properties:
        first_line:
          type: string
          title: First Line
        second_line:
          anyOf:
            - type: string
            - type: 'null'
          title: Second Line
          default: ''
        country:
          type: string
          title: Country
        zip:
          type: string
          title: Zip
        city:
          type: string
          title: City
        state:
          type: string
          title: State
        access_notes:
          anyOf:
            - type: string
              maxLength: 1000
            - type: 'null'
          title: Access Notes
      type: object
      required:
        - first_line
        - country
        - zip
        - city
        - state
      title: Address
    LabTestSampleType:
      type: string
      enum:
        - dried_blood_spot
        - arm_collector
        - serum
        - saliva
        - urine
        - stool
      title: LabTestSampleType
      description: >-
        The type of sample used to perform a lab test. ℹ️ This enum is
        non-exhaustive.
    LabTestCollectionMethod:
      type: string
      enum:
        - testkit
        - walk_in_test
        - at_home_phlebotomy
        - on_site_collection
      title: LabTestCollectionMethod
      description: The method used to perform a lab test. ℹ️ This enum is non-exhaustive.
    LabTestStatus:
      type: string
      enum:
        - active
        - pending_approval
        - inactive
      title: LabTestStatus
      description: ℹ️ This enum is non-exhaustive.
    ClientFacingLab:
      properties:
        id:
          type: integer
          title: Id
        slug:
          type: string
          title: Slug
        name:
          type: string
          title: Name
        first_line_address:
          type: string
          title: First Line Address
        city:
          type: string
          title: City
        zipcode:
          type: string
          title: Zipcode
        collection_methods:
          items:
            $ref: '#/components/schemas/LabTestCollectionMethod'
          type: array
          title: Collection Methods
        sample_types:
          items:
            $ref: '#/components/schemas/LabTestSampleType'
          type: array
          title: Sample Types
      type: object
      required:
        - id
        - slug
        - name
        - first_line_address
        - city
        - zipcode
        - collection_methods
        - sample_types
      title: ClientFacingLab
      example:
        city: San Francisco
        collection_methods:
          - testkit
        first_line_address: 123 Main St
        id: 1
        name: LabCorp
        sample_types:
          - saliva
        slug: labcorp
        zipcode: '91789'
    ClientFacingMarker:
      properties:
        id:
          type: integer
          title: Id
        name:
          type: string
          title: Name
        slug:
          type: string
          title: Slug
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        lab_id:
          anyOf:
            - type: integer
            - type: 'null'
          title: Lab Id
        provider_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Provider Id
        type:
          anyOf:
            - $ref: '#/components/schemas/MarkerType'
            - type: 'null'
          description: ℹ️ This enum is non-exhaustive.
        unit:
          anyOf:
            - type: string
            - type: 'null'
          title: Unit
        price:
          anyOf:
            - type: string
            - type: 'null'
          title: Price
        aoe:
          anyOf:
            - $ref: '#/components/schemas/AoE'
            - type: 'null'
        a_la_carte_enabled:
          type: boolean
          title: A La Carte Enabled
          default: false
        common_tat_days:
          anyOf:
            - type: integer
            - type: 'null'
          title: Common Tat Days
        worst_case_tat_days:
          anyOf:
            - type: integer
            - type: 'null'
          title: Worst Case Tat Days
        is_orderable:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Orderable
          default: true
      type: object
      required:
        - id
        - name
        - slug
      title: ClientFacingMarker
      example:
        aoe:
          questions:
            - answers:
                - code: answer_code
                  id: 1
                  value: answer_value
              code: question_code
              id: 1
              value: question_value
        common_tat_days: 3
        description: >-
          Hemoglobin A1c is a form of hemoglobin that is measured identify your
          average blood sugar levels over the past 3 months.
        id: 1
        is_orderable: true
        lab_id: 1
        name: Hemoglobin A1c
        price: '10.00'
        provider_id: '1234'
        slug: hemoglobin-a1c
        type: biomarker
        unit: '%'
        worst_case_tat_days: 5
    ClientFacingWalkInTestOrder:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The Vital walk-in test Order ID
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
        appointment_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Appointment Id
      type: object
      required:
        - id
        - created_at
        - updated_at
      title: ClientFacingWalkInTestOrder
      description: |-
        Schema for a walk-in test order in the client facing API.

        To be used as part of a ClientFacingOrder.
      example:
        appointment_id: 34f39367-678e-4269-b408-0862cb2c18fa
        created_at: '2020-01-01T00:00:00Z'
        id: 9436c0b0-d4ff-4ce8-89f7-837e261f6308
        updated_at: '2020-01-01T00:00:00Z'
    ClientFacingTestkitOrder:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The Vital TestKit Order ID
        shipment:
          anyOf:
            - $ref: '#/components/schemas/ClientFacingShipment'
            - type: 'null'
          description: Shipment object
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - shipment
        - created_at
        - updated_at
      title: ClientFacingTestkitOrder
      description: |-
        Schema for a testkit order in the client facing API.

        To be used as part of a ClientFacingOrder.
      example:
        created_at: '2020-01-01T00:00:00Z'
        id: cd18ead5-6db2-4258-929a-0bf8efcb67c3
        shipment:
          created_at: '2020-01-01T00:00:00.000Z'
          id: 1d6b16e5-f7c6-416c-b8c5-41ef3859cadd
          inbound_courier: usps
          inbound_tracking_number: <inbound_tracking_number>
          inbound_tracking_url: <inbound_tracking_url>
          notes: <notes>
          outbound_courier: usps
          outbound_tracking_number: <outbound_tracking_number>
          outbound_tracking_url: <outbound_tracking_url>
          updated_at: '2020-01-01T00:00:00.000Z'
        updated_at: '2020-01-01T00:00:00Z'
    ClientFacingAtHomePhlebotomyOrder:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The Vital at-home phlebotomy Order ID
        appointment_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Appointment Id
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - created_at
        - updated_at
      title: ClientFacingAtHomePhlebotomyOrder
      description: |-
        Schema for a at-home-phlebotomy test order in the client facing API.

        To be used as part of a ClientFacingOrder.
      example:
        appointment_id: db4979eb-bce6-466d-99a8-f6157b1c7d6b
        created_at: '2020-01-01T00:00:00Z'
        id: f86bbbeb-a9fb-4edd-a372-a0e45202b5d9
        updated_at: '2020-01-01T00:00:00Z'
    ClientFacingOnSiteCollectionOrder:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The Junction on-site collection Order ID
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - created_at
        - updated_at
      title: ClientFacingOnSiteCollectionOrder
      description: |-
        Schema for an on-site collection order in the client facing API.
        To be used as part of a ClientFacingOrder.
      example:
        created_at: '2020-01-01T00:00:00Z'
        id: 93eeac52-f88e-4643-8aad-9fe9c2bbc33e
        updated_at: '2020-01-01T00:00:00Z'
    OrderStatus:
      type: string
      enum:
        - received.walk_in_test.ordered
        - received.walk_in_test.requisition_created
        - received.walk_in_test.requisition_bypassed
        - completed.walk_in_test.completed
        - sample_with_lab.walk_in_test.partial_results
        - failed.walk_in_test.sample_error
        - cancelled.walk_in_test.cancelled
        - collecting_sample.walk_in_test.appointment_pending
        - collecting_sample.walk_in_test.appointment_scheduled
        - collecting_sample.walk_in_test.appointment_cancelled
        - collecting_sample.walk_in_test.redraw_available
        - received.at_home_phlebotomy.ordered
        - received.at_home_phlebotomy.requisition_created
        - received.at_home_phlebotomy.requisition_bypassed
        - collecting_sample.at_home_phlebotomy.appointment_pending
        - collecting_sample.at_home_phlebotomy.appointment_scheduled
        - collecting_sample.at_home_phlebotomy.draw_completed
        - collecting_sample.at_home_phlebotomy.appointment_cancelled
        - completed.at_home_phlebotomy.completed
        - sample_with_lab.at_home_phlebotomy.partial_results
        - cancelled.at_home_phlebotomy.cancelled
        - failed.at_home_phlebotomy.sample_error
        - received.testkit.ordered
        - received.testkit.awaiting_registration
        - received.testkit.requisition_created
        - received.testkit.requisition_bypassed
        - received.testkit.registered
        - collecting_sample.testkit.transit_customer
        - collecting_sample.testkit.out_for_delivery
        - collecting_sample.testkit.with_customer
        - collecting_sample.testkit.transit_lab
        - sample_with_lab.testkit.delivered_to_lab
        - sample_with_lab.testkit.lab_processing_blocked
        - completed.testkit.completed
        - failed.testkit.failure_to_deliver_to_customer
        - failed.testkit.failure_to_deliver_to_lab
        - failed.testkit.sample_error
        - failed.testkit.lost
        - cancelled.testkit.cancelled
        - cancelled.testkit.do_not_process
        - collecting_sample.testkit.problem_in_transit_customer
        - collecting_sample.testkit.problem_in_transit_lab
        - received.on_site_collection.ordered
        - received.on_site_collection.requisition_created
        - received.on_site_collection.requisition_bypassed
        - sample_with_lab.on_site_collection.draw_completed
        - completed.on_site_collection.completed
        - cancelled.on_site_collection.cancelled
        - sample_with_lab.on_site_collection.partial_results
        - failed.on_site_collection.sample_error
        - completed.walk_in_test.corrected
        - completed.at_home_phlebotomy.corrected
        - completed.on_site_collection.corrected
        - completed.testkit.corrected
      title: OrderStatus
      description: ℹ️ This enum is non-exhaustive.
    OrderStatusDetail:
      type: string
      enum:
        - fulfillment_error
        - date_of_collection_unspecified
        - demographic_information_unspecified
        - demographic_information_mismatch
        - sample_quantity_not_sufficient
        - sample_contaminated
        - sample_stability_exceeded
        - sample_hemolyzed
        - sample_improper_collection
      title: OrderStatusDetail
      description: >-
        A descriptive-only additional field to be used in combination with
        OrderStatus. Exposed in the API. ℹ️ This enum is non-exhaustive.
    OrderTransactionStatus:
      type: string
      enum:
        - active
        - completed
        - cancelled
      title: OrderTransactionStatus
      description: ℹ️ This enum is non-exhaustive.
    ClientFacingOrderInTransaction:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        low_level_status:
          anyOf:
            - $ref: '#/components/schemas/OrderLowLevelStatus'
            - type: 'null'
          description: ℹ️ This enum is non-exhaustive.
        low_level_status_created_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Low Level Status Created At
        origin:
          anyOf:
            - $ref: '#/components/schemas/OrderOrigin'
            - type: 'null'
          description: ℹ️ This enum is non-exhaustive.
        parent_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Parent Id
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - created_at
        - updated_at
      title: ClientFacingOrderInTransaction
      description: Minimal order info for embedding in order_transaction payload.
    MarkerType:
      type: string
      enum:
        - biomarker
        - panel
      title: MarkerType
      description: ℹ️ This enum is non-exhaustive.
    AoE:
      properties:
        questions:
          items:
            $ref: '#/components/schemas/Question'
          type: array
          title: Questions
      type: object
      required:
        - questions
      title: AoE
    ClientFacingShipment:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: The Vital Shipment ID
        outbound_tracking_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Outbound Tracking Number
          description: Tracking number for delivery to customer
        outbound_tracking_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Outbound Tracking Url
          description: Tracking url for delivery to customer
        inbound_tracking_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Inbound Tracking Number
          description: Tracking number for delivery to lab
        inbound_tracking_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Inbound Tracking Url
          description: Tracking url for delivery to lab
        outbound_courier:
          anyOf:
            - type: string
            - type: 'null'
          title: Outbound Courier
          description: Courier used for delivery to customer
        inbound_courier:
          anyOf:
            - type: string
            - type: 'null'
          title: Inbound Courier
          description: Courier used for delivery to lab
        notes:
          anyOf:
            - type: string
            - type: 'null'
          title: Notes
          description: Notes associated to the Vital shipment
      type: object
      required:
        - id
        - outbound_tracking_number
        - outbound_tracking_url
        - inbound_tracking_number
        - inbound_tracking_url
        - outbound_courier
        - inbound_courier
        - notes
      title: ClientFacingShipment
      description: |-
        Schema for a Shipment in the client facing API.

        To be used as part of a ClientFacingTestkitOrder.
      example:
        id: 965e8122-4e96-4a08-b166-2da75082d2f2
        inbound_courier: usps
        inbound_tracking_number: <inbound_tracking_number>
        inbound_tracking_url: <inbound_tracking_url>
        notes: <notes>
        outbound_courier: usps
        outbound_tracking_number: <outbound_tracking_number>
        outbound_tracking_url: <outbound_tracking_url>
    OrderLowLevelStatus:
      type: string
      enum:
        - ordered
        - requisition_created
        - requisition_bypassed
        - transit_customer
        - out_for_delivery
        - with_customer
        - transit_lab
        - delivered_to_lab
        - completed
        - failure_to_deliver_to_lab
        - failure_to_deliver_to_customer
        - problem_in_transit_lab
        - problem_in_transit_customer
        - sample_error
        - appointment_scheduled
        - appointment_cancelled
        - appointment_pending
        - draw_completed
        - cancelled
        - lost
        - do_not_process
        - partial_results
        - awaiting_registration
        - registered
        - redraw_available
        - corrected
        - lab_processing_blocked
      title: OrderLowLevelStatus
      description: ℹ️ This enum is non-exhaustive.
    Question:
      properties:
        id:
          type: integer
          format: int64
          title: Id
        required:
          type: boolean
          title: Required
        code:
          type: string
          title: Code
        value:
          type: string
          title: Value
        type:
          $ref: '#/components/schemas/QuestionType'
          description: ℹ️ This enum is non-exhaustive.
        sequence:
          type: integer
          title: Sequence
        answers:
          items:
            $ref: '#/components/schemas/Answer'
          type: array
          title: Answers
        constraint:
          anyOf:
            - type: string
            - type: 'null'
          title: Constraint
        default:
          anyOf:
            - type: string
            - type: 'null'
          title: Default
      type: object
      required:
        - id
        - required
        - code
        - value
        - type
        - sequence
        - answers
      title: Question
    QuestionType:
      type: string
      enum:
        - choice
        - text
        - numeric
        - multi_choice
      title: QuestionType
      description: ℹ️ This enum is non-exhaustive.
    Answer:
      properties:
        id:
          type: integer
          title: Id
        code:
          type: string
          title: Code
        value:
          type: string
          title: Value
      type: object
      required:
        - id
        - code
        - value
      title: Answer
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-vital-api-key
      description: Vital Team API Key

````