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

# Send support message

> Send a support message. Messages and published replies are logged without changing retrieval status. Requires retrievals:write. Linked CMS connections must have support messaging enabled. See [Support messages](/guides/v2/retrieval-guide#support-messages).



## OpenAPI

````yaml POST /v2/retrieval-requests/{retrieval_request_id}/messages
openapi: 3.0.1
info:
  title: Tavrn Platform API
  version: 1.0.0
  description: >-
    Enterprise API for medical record retrieval: cases, retrieval requests,
    retrieved records and provider invoices, case documents, and webhook
    notifications.
  contact:
    name: Tavrn Support
    email: contact@tavrn.ai
servers:
  - url: https://enterprise.tavrn.ai
    description: Production server
security:
  - bearerAuth: []
tags:
  - name: Cases
    description: Case management operations
  - name: Documents
    description: Document upload and management
  - name: Retrieval Requests
    description: Medical record retrieval requests submitted to healthcare facilities
  - name: Requestors
    description: Multiple retrieval profiles within one organization
  - name: Webhooks
    description: Webhook registration and event notifications
paths:
  /v2/retrieval-requests/{retrieval_request_id}/messages:
    post:
      tags:
        - Retrieval Requests
      summary: Send retrieval support message
      description: >-
        Send a support message. Messages and published replies are logged
        without changing retrieval status. Requires retrievals:write. Linked CMS
        connections must have support messaging enabled. See [Support
        messages](/guides/v2/retrieval-guide#support-messages).
      operationId: submitRetrievalMessage
      parameters:
        - name: retrieval_request_id
          in: path
          required: true
          description: Retrieval request ID
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetrievalSupportMessageCreate'
      responses:
        '200':
          description: Message recorded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrievalSupportMessage'
        '400':
          description: Invalid message, email, preference, or attachment.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: >-
            Missing retrievals:write scope or support messaging disabled on the
            CMS connection.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Retrieval request not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: >-
            Submission already in progress (support_message_in_progress). Retry
            shortly.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Submission failed; delivery may have succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    RetrievalSupportMessageCreate:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          minLength: 1
          maxLength: 10000
          description: Support message. Must contain non-whitespace text.
        requester_name:
          type: string
          maxLength: 200
          description: Sender's display name.
        requester_email:
          type: string
          format: email
          description: >-
            Delivery address. Required when API submissions explicitly select
            email.
        contact_preference:
          type: string
          enum:
            - email
            - in_app_only
            - do_not_contact
          description: >-
            email sends receipts and replies by email. in_app_only logs replies
            without email; automated replies are currently disabled.
            do_not_contact processes requested work without customer receipts or
            replies, except for Litify's initial receipt when requester_email is
            supplied. If omitted, request_response: false selects
            do_not_contact; otherwise email.
        request_response:
          type: boolean
          deprecated: true
          description: >-
            Used when contact_preference is omitted: true (default) means email;
            false means do_not_contact.
        attachment:
          type: object
          required:
            - upload_id
          properties:
            upload_id:
              type: string
              description: >-
                ID returned by the case sign-upload endpoint for this request's
                case.
              minLength: 1
    RetrievalSupportMessage:
      type: object
      required:
        - id
        - retrieval_request_id
        - status
      properties:
        id:
          type: string
          description: Opaque support conversation ID.
        retrieval_request_id:
          type: string
        status:
          type: string
          enum:
            - sent
          description: Submitted; does not confirm task completion or provider delivery.
        created_at:
          type: string
          format: date-time
          description: Submission timestamp; omitted for a deduplicated resend.
        deduplicated:
          type: boolean
          description: True for an identical submission within 10 minutes.
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
              description: Machine-readable error code
              example: validation_error
            message:
              type: string
              description: Human-readable error message
              example: The patient.date_of_birth field is required
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        API key authentication. Use format: `Authorization: Bearer
        tavrn_sk_live_...`

````