Skip to content

Audio transcription

With transcription on, every audio message that reaches your number comes with its text in audio.transcription, in the message.received webhook, in polling and in GET /v1/numbers/{ref}/messages/{id}. You use your own API key: usage and cost stay on your account with the provider.

Providers

ProviderModel used if you do not choose one
Groqwhisper-large-v3-turbo
OpenAIwhisper-1

Prices and limits change from one provider to another and over time. Check each provider’s site before deciding.

How to set it up

1. Create the API key at the provider

The provider’s screens change over time: if a name does not match, look for the equivalent.

Groq

  1. Sign in at console.groq.com. If you do not have an account yet, create one.
  2. Open API Keys and click Create API Key. Give it a name, for example “Turbo Notify”.
  3. Copy the key (it starts with gsk_). It is shown only once: save it before closing the window.

OpenAI

  1. Sign in at platform.openai.com and open API keys.
  2. Click Create new secret key, give it a name and copy the key (it starts with sk-). It is shown only once.
  3. OpenAI transcription is billed per use: add credit under Settings > Billing on the account before testing. With no balance the key is accepted, but audio is not transcribed.

2. Paste the key in the dashboard

Go to Transcription (opens in a new tab) and fill in:

FieldValue
ProviderGroq or OpenAI
API keyThe key you copied
ModelOptional. Leave it empty to use the model in the table above

3. Test and save

Click Test connection: Turbo Notify confirms the provider accepted the key. Then click Save. From then on, received audio is transcribed. Audio that arrived earlier is not transcribed afterwards.

How transcription works

  • Only received audio is transcribed. Audio you send is not.
  • The language comes from the country of the sender’s number (a +55 number is transcribed in Portuguese). For a country Turbo Notify does not recognize, the provider detects the language.
  • Audio over 24 MB is not transcribed.
  • If transcription fails, the message still arrives, without the text.

If it does not work

The audio.transcription field carries kind: "unavailable" and a reason. The reasons are listed in Get a message. The most common:

  • provider_error: the provider refused the key. Create another one at the provider and save it again in Transcription (opens in a new tab) .
  • not_configured: there is no active transcription. Check that the Transcription active switch is on.
  • timeout: the provider took longer than allowed. The next message tries again.

If the provider refuses because of a usage limit, wait or raise the limit on its account. The connection state (Healthy or Having problems) shows on the Transcription screen itself.

Security

  • The key is stored encrypted (AES-256-GCM) and never appears in logs or responses. The screen only shows its start and end.
  • Use a key just for Turbo Notify, so you can revoke it at the provider without affecting other uses.
  • Get a message: the format of audio.transcription.
  • Webhooks: the message.received event with the transcription.
  • Storage: keep received media in your own bucket.