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

# End Dictation Session

> End a Dictation session after you finish reading WebSocket transcript frames

Use this endpoint to end an active <Tooltip tip="The process of speaking aloud to create written text, often used by clinicians to create medical documentation using voice input." cta="View in Glossary" href="/Glossary/d">Dictation</Tooltip> session after you finish streaming audio.

The HTTP body is empty. Keep transcript text from WebSocket frames where **`is_final`** is **`true`**. Refer to [Dictation basic usage](/documentation/how-to/dictation/dictation-basic-usage) and [Read Dictation transcript frames](/documentation/how-to/audio-streaming/dictation-streaming-transcripts) guides for more information.

Returns a `200 OK` status with a success message.


## OpenAPI

````yaml POST /api/v1/transcription/session/{transcription_session_id}/end
openapi: 3.0.1
info:
  title: Suki Developer Platform
  description: >-
    REST and WebSocket APIs for the Suki Developer Platform. Authenticate with
    Login or Register to obtain a Suki access token, then integrate ambient
    clinical documentation, form filling, transcription, and reference metadata
    endpoints.
  contact: {}
  version: '1.0'
servers:
  - url: https://sdp.suki.ai
    description: >-
      Production base URL for Suki Developer Platform REST APIs. WebSocket
      endpoints use the same host with `wss://`.
security:
  - SukiTokenAuth: []
paths:
  /api/v1/transcription/session/{transcription_session_id}/end:
    post:
      tags:
        - /api/v1/transcription/session
      summary: End transcription session
      description: >-
        Ends a transcription session after you finish streaming audio on
        `/ws/transcribe`.
      parameters:
        - name: transcription_session_id
          in: path
          description: >-
            UUID for the transcription session. Use the
            `transcription_session_id` returned from Create Transcription
            Session, or the UUID you supplied in that request.
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/ProviderIdHeader'
      responses:
        '200':
          description: Request succeeded.
          content:
            application/json:
              schema:
                type: object
              example: {}
        '400':
          description: Bad request. The request body or parameters failed validation.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 400
                  message:
                    type: string
                    example: invalid request
        '401':
          description: Unauthorized. The Suki access token is missing, expired, or invalid.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 401
                  message:
                    type: string
                    example: invalid token
        '403':
          description: Forbidden. The authenticated user cannot access this resource.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 403
                  message:
                    type: string
                    example: forbidden
        '404':
          description: Not found. The session, encounter, or resource ID does not exist.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 404
                  message:
                    type: string
                    example: not found
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 500
                  message:
                    type: string
                    example: internal server error
      security:
        - SukiTokenAuth: []
      x-codeSamples:
        - lang: bash
          label: cURL
          source: |-
            curl --request POST \
              --url https://sdp.suki.ai/api/v1/transcription/session/<transcription_session_id>/end \
              --header 'sdp_suki_token: <sdp_suki_token>' \
              --header 'sdp_provider_id: <sdp_provider_id>'
components:
  parameters:
    ProviderIdHeader:
      name: sdp_provider_id
      in: header
      description: >-
        **Optional** for standard partners.


        **Required** for:


        - **Bearer authentication.** Use the same `provider_id` returned by the
        Login or Register API.

        - **Single Auth Token authentication.** Include the same `provider_id`
        on every request as `sdp_provider_id`.
      required: false
      schema:
        type: string
        example: provider-123
  securitySchemes:
    SukiTokenAuth:
      type: apiKey
      in: header
      name: sdp_suki_token
      description: >-
        Suki access token (`suki_token`) from Login or Register. Expires after
        one hour.

````