Hint Health LabInteraction API

The LabInteraction API from Hint Health — 2 operation(s) for labinteraction.

OpenAPI Specification

hint-health-labinteraction-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Hint Health AccountAccessToken LabInteraction API
  description: REST API providing programmatic access to Hint Health's direct primary care platform, covering patient and membership management, billing, charges, invoices, clinical data, practice configuration, partner integrations, and webhook event delivery.
  version: '1.0'
  contact:
    name: Hint Health Developer Support
    email: devsupport@hint.com
    url: https://developers.hint.com
  license:
    name: Private
  termsOfService: https://www.hint.com/terms
servers:
- url: https://api.hint.com/api
  description: Production
- url: https://api.sandbox.hint.com/api
  description: Sandbox
security:
- BearerAuth: []
tags:
- name: LabInteraction
paths:
  /provider/patients/{patient_id}/interactions/lab:
    post:
      tags:
      - LabInteraction
      operationId: LabInteraction.CreateLabInteraction
      summary: Create Lab Interaction
      description: ''
      parameters:
      - name: patient_id
        in: path
        required: true
        description: Unique Patient ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.Interaction.LabBlueprint_one'
              example:
                id: inter-2f93f9da35eb293f
                event_timestamp: '2017-02-05T14:23:00Z'
                status: fulfilled
                type: lab
                vendor_order_id: '123456'
                order:
                  lab_reference_id: ord-ref-123456
                  ordered_from: San Francisco Lab
                  authored_on: '2017-02-05T14:23:00Z'
                  collected_at: '2017-02-05T14:23:00Z'
                  author: John Doe
                  author_reference: aut-ref-123456
                  intent: diagnostic
                  lab_account_id: lab-acc-123456
                  actions:
                  - reference: act-ref-123
                    display: LabCorp
                  subject:
                    reference: sub-ref-456
                    display: John Doe
                report:
                  issued: '2017-02-05T14:23:00Z'
                  status: final
                  lab_reference_id: lab-ref-123456
                  order_reference: order-ref-123456
                results:
                - id: res-id-123
                  code_text: lab-code-text-123
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 100 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-123
                    display: lab-code-display-123
                  value_quantity:
                    value: 100
                    unit: mg/dL
                  ranges:
                  - text: 120-140 mg/dL
                    low:
                      value: 120
                      unit: mg/dL
                    high:
                      value: 140
                      unit: mg/dL
                - id: res-id-456
                  code_text: lab-code-text-456
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 110 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-456
                    display: lab-code-display-456
                  value_quantity:
                    value: 110
                    unit: mg/dL
                  ranges:
                  - text: 100-120 mg/dL
                    low:
                      value: 100
                      unit: mg/dL
                    high:
                      value: 120
                      unit: mg/dL
                integration_error_message: null
                integration_last_synced_at: null
                integration_record_id: null
                integration_sync_status: enabled
                integration_web_link: null
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Interaction.LabSanitizer'
  /provider/patients/{patient_id}/interactions/lab/{id}:
    get:
      tags:
      - LabInteraction
      operationId: LabInteraction.ShowLabInteraction
      summary: Show Lab Interaction
      description: ''
      parameters:
      - name: patient_id
        in: path
        required: true
        description: Unique Patient ID
        schema:
          type: string
      - name: id
        in: path
        required: true
        description: Unique Lab Interaction ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.Interaction.LabBlueprint_one'
              example:
                id: inter-2f93f9da35eb293f
                event_timestamp: '2017-02-05T14:23:00Z'
                status: fulfilled
                type: lab
                vendor_order_id: '123456'
                order:
                  lab_reference_id: ord-ref-123456
                  ordered_from: San Francisco Lab
                  authored_on: '2017-02-05T14:23:00Z'
                  collected_at: '2017-02-05T14:23:00Z'
                  author: John Doe
                  author_reference: aut-ref-123456
                  intent: diagnostic
                  lab_account_id: lab-acc-123456
                  actions:
                  - reference: act-ref-123
                    display: LabCorp
                  subject:
                    reference: sub-ref-456
                    display: John Doe
                report:
                  issued: '2017-02-05T14:23:00Z'
                  status: final
                  lab_reference_id: lab-ref-123456
                  order_reference: order-ref-123456
                results:
                - id: res-id-123
                  code_text: lab-code-text-123
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 100 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-123
                    display: lab-code-display-123
                  value_quantity:
                    value: 100
                    unit: mg/dL
                  ranges:
                  - text: 120-140 mg/dL
                    low:
                      value: 120
                      unit: mg/dL
                    high:
                      value: 140
                      unit: mg/dL
                - id: res-id-456
                  code_text: lab-code-text-456
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 110 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-456
                    display: lab-code-display-456
                  value_quantity:
                    value: 110
                    unit: mg/dL
                  ranges:
                  - text: 100-120 mg/dL
                    low:
                      value: 100
                      unit: mg/dL
                    high:
                      value: 120
                      unit: mg/dL
                integration_error_message: null
                integration_last_synced_at: null
                integration_record_id: null
                integration_sync_status: enabled
                integration_web_link: null
    patch:
      tags:
      - LabInteraction
      operationId: LabInteraction.UpdateLabInteraction
      summary: Update Lab Interaction
      description: ''
      parameters:
      - name: patient_id
        in: path
        required: true
        description: Unique Patient ID
        schema:
          type: string
      - name: id
        in: path
        required: true
        description: Unique Lab Interaction ID
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Public.Interaction.LabBlueprint_one'
              example:
                id: inter-2f93f9da35eb293f
                event_timestamp: '2017-02-05T14:23:00Z'
                status: fulfilled
                type: lab
                vendor_order_id: '123456'
                order:
                  lab_reference_id: ord-ref-123456
                  ordered_from: San Francisco Lab
                  authored_on: '2017-02-05T14:23:00Z'
                  collected_at: '2017-02-05T14:23:00Z'
                  author: John Doe
                  author_reference: aut-ref-123456
                  intent: diagnostic
                  lab_account_id: lab-acc-123456
                  actions:
                  - reference: act-ref-123
                    display: LabCorp
                  subject:
                    reference: sub-ref-456
                    display: John Doe
                report:
                  issued: '2017-02-05T14:23:00Z'
                  status: final
                  lab_reference_id: lab-ref-123456
                  order_reference: order-ref-123456
                results:
                - id: res-id-123
                  code_text: lab-code-text-123
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 100 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-123
                    display: lab-code-display-123
                  value_quantity:
                    value: 100
                    unit: mg/dL
                  ranges:
                  - text: 120-140 mg/dL
                    low:
                      value: 120
                      unit: mg/dL
                    high:
                      value: 140
                      unit: mg/dL
                - id: res-id-456
                  code_text: lab-code-text-456
                  issued: '2017-02-05T14:23:00Z'
                  value_string: 110 mg/dL
                  text: Normal
                  interpretation:
                  - normal
                  subject: John Doe
                  code:
                  - code: lab-code-456
                    display: lab-code-display-456
                  value_quantity:
                    value: 110
                    unit: mg/dL
                  ranges:
                  - text: 100-120 mg/dL
                    low:
                      value: 100
                      unit: mg/dL
                    high:
                      value: 120
                      unit: mg/dL
                integration_error_message: null
                integration_last_synced_at: null
                integration_record_id: null
                integration_sync_status: enabled
                integration_web_link: null
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Interaction.LabSanitizer'
components:
  schemas:
    Public.Interaction.Lab.Result.QuantityBlueprint_leaf:
      type: object
      properties:
        value:
          type: string
        unit:
          type: string
    Interaction.LabSanitizer.ResultRangeSanitizer:
      type: object
      properties:
        low:
          $ref: '#/components/schemas/Interaction.LabSanitizer.ResultQuantitySanitizer'
          description: Lower bound of range
        high:
          $ref: '#/components/schemas/Interaction.LabSanitizer.ResultQuantitySanitizer'
          description: Upper bound of range
        text:
          type: string
          description: Textual range description
    Interaction.LabSanitizer.ResultSanitizer:
      type: object
      properties:
        id:
          type: string
          description: Unique result identifier
        code:
          type: array
          items:
            $ref: '#/components/schemas/Interaction.LabSanitizer.ResultCodeSanitizer'
          description: At least one coding entry (min 1)
        code_text:
          type: string
          description: Human-readable name for the result
        issued:
          type: string
          format: date-time
          description: When the result was issued
        value_quantity:
          $ref: '#/components/schemas/Interaction.LabSanitizer.ResultQuantitySanitizer'
          description: Numeric result value with unit
        value_string:
          type: string
          description: String result value
        text:
          type: string
          description: Additional narrative text
        interpretation:
          type: array
          items:
            type: string
          description: Interpretation codes (e.g., ["normal"])
        ranges:
          type: array
          items:
            $ref: '#/components/schemas/Interaction.LabSanitizer.ResultRangeSanitizer'
          description: Reference ranges
        subject:
          type: string
          description: Subject reference
      required:
      - id
      - code
      - code_text
      - issued
    Public.Interaction.Lab.Result.RangeBlueprint_leaf:
      type: object
      properties:
        text:
          type: string
        low:
          $ref: '#/components/schemas/Public.Interaction.Lab.Result.QuantityBlueprint_leaf'
        high:
          $ref: '#/components/schemas/Public.Interaction.Lab.Result.QuantityBlueprint_leaf'
    Public.Interaction.Lab.Result.CodeBlueprint_leaf:
      type: object
      properties:
        code:
          type: string
        display:
          type: string
    Interaction.LabSanitizer.ResultCodeSanitizer:
      type: object
      properties:
        code:
          type: string
          description: LOINC code value (only LOINC is supported)
        display:
          type: string
          description: Human-readable name
      required:
      - code
      - display
    Interaction.LabSanitizer.OrderSanitizer:
      type: object
      properties:
        lab_reference_id:
          type: string
          description: External reference ID for the lab order
        ordered_from:
          type: string
          description: Lab provider name (e.g., "LabCorp")
        authored_on:
          type: string
          description: When the order was authored
        collected_at:
          type: string
          format: date-time
          description: When the specimen was collected
        author:
          type: string
          description: Name or ID of the ordering provider
        author_reference:
          type: string
          description: Reference identifier for the author
        actions:
          type: array
          items:
            $ref: '#/components/schemas/Interaction.LabSanitizer.ActionSanitizer'
          description: Ordered tests/panels
        intent:
          type: string
          description: Order intent
        subject:
          $ref: '#/components/schemas/Interaction.LabSanitizer.SubjectSanitizer'
          description: Subject of the lab order
        lab_account_id:
          type: string
          description: Lab account identifier
    Public.Interaction.Lab.Order.ActionBlueprint_leaf:
      type: object
      properties:
        reference:
          type: string
        display:
          type: string
    Interaction.LabSanitizer.ActionSanitizer:
      type: object
      properties:
        reference:
          type: string
          description: Reference code for the test
        display:
          type: string
          description: Human-readable test name
      required:
      - reference
      - display
    Interaction.LabSanitizer.SubjectSanitizer:
      type: object
      properties:
        reference:
          type: string
          description: Subject reference ID
        display:
          type: string
          description: Subject display name
    Public.Interaction.LabBlueprint_one:
      type: object
      properties:
        id:
          type: string
        event_timestamp:
          type: string
        status:
          type: string
        type:
          type: string
        vendor_order_id:
          type: string
        order:
          $ref: '#/components/schemas/Public.Interaction.Lab.OrderBlueprint_leaf'
        report:
          $ref: '#/components/schemas/Public.Interaction.Lab.ReportBlueprint_leaf'
        results:
          $ref: '#/components/schemas/Public.Interaction.Lab.ResultBlueprint_leaf'
    Public.Interaction.Lab.ResultBlueprint_leaf:
      type: object
      properties:
        id:
          type: string
        code_text:
          type: string
        issued:
          type: string
        value_string:
          type: string
        text:
          type: string
        interpretation:
          type: string
        subject:
          type: string
        code:
          $ref: '#/components/schemas/Public.Interaction.Lab.Result.CodeBlueprint_leaf'
        value_quantity:
          $ref: '#/components/schemas/Public.Interaction.Lab.Result.QuantityBlueprint_leaf'
        ranges:
          $ref: '#/components/schemas/Public.Interaction.Lab.Result.RangeBlueprint_leaf'
    Public.Interaction.Lab.OrderBlueprint_leaf:
      type: object
      properties:
        lab_reference_id:
          type: string
        ordered_from:
          type: string
        authored_on:
          type: string
        collected_at:
          type: string
        author:
          type: string
        author_reference:
          type: string
        intent:
          type: string
        lab_account_id:
          type: string
        actions:
          $ref: '#/components/schemas/Public.Interaction.Lab.Order.ActionBlueprint_leaf'
        subject:
          $ref: '#/components/schemas/Public.Interaction.Lab.Order.SubjectBlueprint_leaf'
    Interaction.LabSanitizer.ReportSanitizer:
      type: object
      properties:
        issued:
          type: string
          format: date-time
          description: When the report was issued
        status:
          type: string
          description: Report status (e.g., "final", "preliminary")
        lab_reference_id:
          type: string
          description: External lab reference ID
        order_reference:
          type: string
          description: Reference to the originating order
      required:
      - issued
      - status
    Interaction.LabSanitizer:
      type: object
      properties:
        status:
          type: string
          description: The status of the interaction. Defaults to "SENT"
          enum:
          - sent
          - fulfilled
        vendor_order_id:
          type: string
          description: External vendor order ID (used for idempotency)
        event_timestamp:
          type: string
          format: date-time
          description: Defaults to current time
        order:
          $ref: '#/components/schemas/Interaction.LabSanitizer.OrderSanitizer'
          description: Lab order details
        report:
          $ref: '#/components/schemas/Interaction.LabSanitizer.ReportSanitizer'
          description: Diagnostic report details
        results:
          type: array
          items:
            $ref: '#/components/schemas/Interaction.LabSanitizer.ResultSanitizer'
          description: Lab result observations
        integration_record_id:
          type: string
        integration_error_message:
          type: string
        integration_web_link:
          type: string
    Public.Interaction.Lab.ReportBlueprint_leaf:
      type: object
      properties:
        issued:
          type: string
        status:
          type: string
        lab_reference_id:
          type: string
        order_reference:
          type: string
    Interaction.LabSanitizer.ResultQuantitySanitizer:
      type: object
      properties:
        value:
          type: integer
          format: int32
          description: The measured value
        unit:
          type: string
          description: Unit of measure (e.g., "mg/dL")
      required:
      - value
      - unit
    Public.Interaction.Lab.Order.SubjectBlueprint_leaf:
      type: object
      properties:
        reference:
          type: string
        display:
          type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Practice access token or Partner API key (Bearer authentication)