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

# Speech-to-Text Transcription

> Set up a automated transcription and export of call transcripts using workflow automations.

> [!NOTE]
>
> This is article overviews a two-part workflow setup: one to automate transcription after a recording has been made, and the second to automate exporting transcriptions via an API request.
>
> Looking for transcripts from Conversation Intelligence? They're created automatically and need no workflow. See [Call Transcripts](https://help.cloudtalk.io/en/articles/9214668-call-transcripts.md).

**User Level:** Admin

***

## Prerequisites

In order to access the features needed for this setup, make sure:

* You've successfully been added to an Expert or Custom plan with CloudTalk

* [CloudTalk Support](https://support.cloudtalk.io/hc/en-us/requests/new?ticket_form_id=26305535257884) has enabled **Speech-to-Text** for your account

> [!NOTE]
>
> **Billing for speech-to-text depends** on whether you choose to use an enhanced model for transcription, which is an option for some languages. For an enhanced transcription, the rate is 0.072 per minute, while for the default model, the rate is 0.048 per minute.

### Transcribe Call Recordings

This section of the article focuses on creating the first workflow automation to handle Speech-to-Text transcription creation.

#### Steps

1. From your dashboard, navigate to **Settings > Workflow Automations**.

2. Select **`+Add Workflow`** and name your workflow.

3. As a **[trigger](https://help.cloudtalk.io/en/articles/5648924-triggers.md)**, select `recording` `uploaded`.

   ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/0008a81f9fd2-stt-trigger.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=fbb879e79b75b9c4d7b4da084d954d70)

   1. `uploaded` is the only available **Action** type for a `recording` **Object**\*.\*

   2. **Note**: *If no conditions are set, this automation will run for every recording that gets uploaded.*

4. **Optional:** *Add conditions if you want transcribe recordings only in cases where these conditions are met.*

5. Select the **Action** `Speech to Text`**.**

   ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/9c388bc139a6-stt-action.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=390e572e84b4da7aea2bcba4966fc856)

   1. For **Key:** `language`, enter the appropriate language reference from the **BCP-47** column in [Google Cloud's language list](https://cloud.google.com/speech-to-text/docs/languages).

      1. **Note:** *While we support all languages listed, not all have an **Enhanced Phone call** model available.*

   2. For **Key:** `model`, you can [choose a specific machine learning model](https://cloud.google.com/speech-to-text/docs/transcription-model). In most cases, `phone_call` is best. If having issues, try `default`.

   3. Set **Key:** `enhancedModel` to `true` to use [the advanced phone call model](https://cloud.google.com/speech-to-text/docs/enhanced-models), which optimizes for accuracy.

      1. Supported languages for this option are: English (AU, GB, US), French (CA, FR), German, Italian, Japanese, Portuguese, Russian, and Spanish (US, ES).

      2. Using this model increases the costs of transcription.

6. **`Confirm and continue`**.

7. **`Save`** your workflow and activate it by toggling the switch at the top of the workflow setup page.

   ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/d4cb7cb2ce2f-stt-activate.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=5ebb361b43a59f141ecae56aab86dab8)

### Forward Transcriptions to external API

This section of the article focuses on setting up the second workflow automation to handle the export process.

1. From your dashboard, navigate to **Settings > Workflow Automations**.

2. Select **`+Add Workflow`** and name your workflow.

3. Define a [trigger](https://help.cloudtalk.io/en/articles/5648924-triggers.md) of **Object** type **transcription** and **Action** type **created**. This trigger will initiate any time a transcription gets created.

   ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/de76b7a01446-stt-trigger-2.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=b067818dcb54bfe46ff93ed39350d82e)

4. We could choose to set up an optional **[condition](https://help.cloudtalk.io/en/articles/5649346-conditions.md)**. Choose a dynamic **Property** and reference its example **Value** by looking at the *Useful data for your Workflow* section, if **Conditions** are necessary. For the purposes of our example

5. Select the **Action** `API request`.

   1. Enter the **Endpoint** URL. This can usually be located in the API docs or within developer mode of the respective service (unless using a custom application).

      1. **Example:** [`https://api.hubapi.com/engagements/v1/engagements`](https://api.hubapi.com/engagements/v1/engagements) (HubSpot engagements)

   2. **Method:** `POST`.

      ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/baa804feaa31-image.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=b040edd90d3e4d9f25963d80ae5692f5)

6. In the **Values** section (the request body), include the following *key*-*value* pair:

   1. For **Key:** `transcription`, paste the **Value:**

      `#{{ event.properties.transcription.csv }}`

      1. *This is a dynamic value which references the transcription to be exported, converted to a CSV format.*

         ![](https://mintcdn.com/cloudtalk/0B2VFDHod1TeIVNA/images/help-center/articles/5671571/2fd3bf1bdd1d-stt-dynamics.png?fit=max\&auto=format\&n=0B2VFDHod1TeIVNA\&q=85\&s=0ae90bbaf57c670604bbb292d66e7c98)

7. Include any required API request components in both the **Values** and **Headers** sections of the API Request configuration, following the documentation for the external API you are using to export your Speech-to-Text data.

8. **`Confirm and continue`**. Save your workflow and activate it by toggling the switch at the top of the workflow setup page.

## Troubleshooting Tips

* For information regarding transcription, refer to [Google's list of languages](https://cloud.google.com/speech-to-text/docs/languages), [transcription models](https://cloud.google.com/speech-to-text/docs/transcription-model), and advanced [transcription models](https://cloud.google.com/speech-to-text/docs/enhanced-models).

* In most cases, sending information to another API (such as one associated with a CRM or other internet-connected tool) requires one or more keys or authorization tokens. Ask an admin familiar with the receiving API if you have trouble finding this information.

* Faulty conditions are often the result of unrecognized inputs in the **Property** box, or inputs in the **Value** box which will always result in no matches.

* After clicking into the **Property** box, you *must click one of the pre-selected keywords* within the **Useful data for your Workflow** section to the right.

* You can also refer to the **Useful data for your Workflow** section to validate whether a **Value** you entered seems to be a good match for a property you've chosen.

***

*Need help or have a question?* Just reach out through our [Support portal](https://support.cloudtalk.io/hc/en-us/requests/new?ticket_form_id=26305535257884) — we’re here for you.


## Related topics

- [Actions](https://help.cloudtalk.io/en/articles/5649782-actions.md)
- [Export Voicemail Speech-to-Text](https://help.cloudtalk.io/en/articles/6926594-export-voicemail-speech-to-text.md)
- [Export Speech-to-Text to HubSpot](https://help.cloudtalk.io/en/articles/8386173-export-speech-to-text-to-hubspot.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.