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

# Transcribe endpoint

> Real-time speech-to-text and command-and-control

Dictation, combining speech-to-text with command-and-control capabilities, is a powerful tool for clinicians to drive EHR adoption, streamline documentation capture, and automate repetitive tasks. It can be available on desktop, web, and mobile applications and in a variety of languages.

<Tip>**Connecting from a browser?** Never expose `client_id`/`client_secret` or a full-scope access token to the frontend. Issue a **limited-scope token** with `scope="openid transcribe"` from your backend so the token can only be used against this WebSocket endpoint. See [Limited-scope credentials for streaming APIs](/authentication/security_best_practices#4-if-you-must-use-tokens-in-special-cases-use-limited-scope-credentials).</Tip>

<Card>
  This page explains key features available in Corti dictation enabled by the `/transcribe` API endpoint. Corti provides both a dictation [API](/api-reference/transcribe) and [web component](/stt/dictation-web), ready for you to integrate with your app.

  <Tip>
    Dictation is available for all supported languages; however, those with `Enhanced` or `Premier` tier availability have the most functionality available.
  </Tip>
</Card>

***

## Feature availability per language

### Base tier

| Language | Code | Interim Results |           Commands           | Spoken Punctuation | Formatting |
| :------- | :--: | :-------------: | :--------------------------: | :----------------: | :--------: |
| All      |  All |                 | <Icon icon="circle-check" /> |                    |            |

<Info>See the [languages page](/stt/languages) for full list of available languages. </Info>

### Enhanced and Premier tier

| Language          |   Code   |        Interim Results       |           Commands           |      Spoken Punctuation      |          Formatting          |
| :---------------- | :------: | :--------------------------: | :--------------------------: | :--------------------------: | :--------------------------: |
| Arabic            |   `ar`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |                              |
| Danish            |   `da`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| Dutch             |   `nl`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |
| English (US)      |   `en`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| English (AU)      |  `en-AU` | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |
| English (UK)      |  `en-GB` | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| Finnish           |   `fi`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |                              |
| French            |   `fr`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| German            |   `de`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| Hungarian         |   `hu`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |
| Norwegian         |   `no`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |
| Spanish           |   `es`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |                              |
| Swedish           |   `sv`   | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |                              |
| Swiss French      |  `fr-CH` | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |
| Swiss German      | `gsw-CH` |                              | <Icon icon="circle-check" /> |                              | <Icon icon="circle-check" /> |
| Swiss High German |  `de-CH` | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> | <Icon icon="circle-check" /> |

***

## Features

<Tip> Click on the cards to learn more...</Tip>

### Languages

<Card href="/stt/languages/">
  Corti speech to text is specifically designed for use in the healthcare domain. A tier system has been introduced to categorize functionality and performance that is available per language and endpoint. Languages in the Enhanced and Premier  tiers have the utmost functionality and recognition accuracy - they're the ones recommended for dictation use.
</Card>

### Interim Results

<Card href="/stt/interim-results">
  Interim results are low latency previews of final transcript text used to present visual feedback to the user, during active dictation, to bring reassurance that audio is being processed. This enables real-time quality validation.
</Card>

### Punctuation

<Card href="/stt/punctuation/">
  Punctuation is essential for coherent documentation. Setting the `spokenPunctuation` parameter to true in `/transcribe` configuration enables users to control when punctuation is inserted in the document output.  Additionally, the parameter `automaticPunctuation` can be used to have the AI model add periods and commas as appropriate.
</Card>

### Commands

<Card href="/stt/commands/">
  Commands is a key functionality that brings the system beyond speech-to-text to a complete dictation solution. Put your users in the driver seat to control their workflow by defining commands to insert templates, navigate the application, automate repetitive tasks, and more!
</Card>

### Formatting

<Card href="/stt/formatting/">
  Speech to text can be used to create a verbatim transcript of the audio; however, some content is not documented in the same manner as it is verbalized. The `formatting` features provide control over how key information should for represented in the textual output.
</Card>

### Audio Events

<Card href="/stt/audio-events/">
  Real-time events during audio streaming about quality and speech activity, intended to notify integrator of audio health degradation, periods of silence, or other events that could support application behavior or user warnings.
</Card>

### Replacements

<Card href="/stt/replacements/">
  Ability to define words or phrases that should be returned in place of the standard output by the speech-to-text model.
</Card>

### Keyterms

<Card href="/stt/keyterms/">
  Bias speech-to-text output so that new words can be introduced to the system vocabulary (e.g., surnames) or to improve recognition reliability for homophones and words with ambiguous pronunciation.
</Card>

***

## Dictation workflows

<Card title="Hold-to-talk">
  Most common for dictation using a **handheld microphone**, providing the ultimate control over turning the microphone on (press and hold the record button) and off (release the button).
</Card>

<Card title="Toggle-to-talk">
  Most common for dictation using a **wearable or desktop microphone**, where the microphone is turned on and remains in active recording state until it is turned off.
</Card>

<Callout icon="arrow-right">**[Click here](/stt/best-practices-transcribe)** for detailed guide on how to properly insert transcript segments with proper handling of whitespace, interim vs. final results, and `text` vs. `rawTranscriptText` fields. </Callout>

<br />

<Note>
  Please [contact us](mailto:help@corti.ai) for more information or help.
</Note>
