Skip to main content

Noise suppression tutorial

In this tutorial, you'll learn how to enable noise suppression for the Voice API and TeXML calls.

Noise suppression works for both AI-powered calls (like AI Assistants and Gather Using AI) and regular voice calls. While it improves audio quality across all call types by reducing background noise, the biggest value comes from enhanced AI performance—cleaner audio leads to more accurate speech recognition and better AI responses. This makes noise suppression especially valuable for AI use cases where audio quality directly impacts user experience.

Voice API

The noise suppression can be enabled for the Voice API calls in the following way:

Note

Don't forget to update YOUR_API_KEY here.

The only parameter required for the request is direction which can have one of the following options: inbound | outbound | both.

Please be aware that the charge is applied for each direction separately.

    curl --request POST \
--url https://api.telnyx.com/v2/calls/${call_control_id}/actions/suppression_start \
--header 'Accept: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY \
--header 'Content-Type: application/json' \
--data '{
"direction": "inbound"
}'

The noise suppression can be stopped at any time in the following way:

    curl --request POST \
--url https://api.telnyx.com/v2/calls/${call_control_id}/actions/suppression_stop \
--header 'Accept: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY \
--header 'Content-Type: application/json' \
--data '{}'

TeXML

In TeXML there is a dedicated verb for enabling the noise suppression on the call.

<Response>
<Start>
<Suppression direction="inbound"/>
</Start>
...
<Stop>
<Suppression/>
</Stop>
</Response>