> For the complete documentation index, see [llms.txt](https://docs.plumvoice.com/fuse/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.plumvoice.com/fuse/how-to/use-plums-transcription-api.md).

# Use Plum's Transcription API

The following image shows how to construct a simple transcription application in Plum Fuse.

![](/files/1zoriDfliA2ZIV54Ew7z)

After the welcome prompt is a ‘record’ module. As you can see in the module text, the module prompts the user to leave a voice message. The module records the caller audio and saves it as a variable with the same name as the module, in this case *record\_message*.

Next, the call-flow hits a REST module called *transcription\_api*. The address for Plum’s transcription API goes in the first text field.

Enter your access credentials in the **Header** section. These are the same credentials you use to access Plum DEV (contact your account manager if you don’t already have a DEV login).

The format in the Header field must be: **`Authorization: Basic XXXXX`**

Replace the Xs with your login credentials converted to base 64. For example, format your credentials as ‘username:password’, e.g., **FuseUser:12345** becomes **RnVzZVVzZXI6MTIzNDU=**.

The text in the Header section would then be: **`Authorization: Basic RnVzZVVzZXI6MTIzNDU=`**

Next, ensure that the Request type is a POST and that the return type is the same type as that specified in the URL. In this case, the resource type is JSON (the API also works with XML).

Finally, specify the variables. The API requires two variables: 1.) language and 2.) audio.

Language simply tells the transcription engine what language to use on the audio. So, if the audio is in English, choose the appropriate English setting. A [list of compatible languages and dialects](https://docs.plumvoice.com/dev/plum-dev-apis/transcription-api#supported-language-codes) is available in the Transcription API documentation.

The audio variable consists of the recording made in the *record\_message*­ module. Click the plus button to add a variable and begin typing “record\_message” and the variable should auto-populate.

The final prompt reads back the transcribed audio as text-to-speech. Again, the transcription gets saved as the name of the module that performed the action. In this case, that is *transcription\_api.result.message*. Use that as the name of the variable in your playback prompt.

You can also choose to send the transcribed text (i.e., the variable *transcription\_api.result.message*) to a database or any other necessary repository for further use/analysis.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.plumvoice.com/fuse/how-to/use-plums-transcription-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
