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

# Interruption Settings

> Control how your AI assistant handles caller interruptions — enable or disable barge-in, protect greetings, and tune endpointing thresholds for non turn-taking transcription models.

Interruption settings control whether and how callers can interrupt your AI assistant while it is speaking. By default, interruptions are enabled — callers can barge in at any point. You can disable interruptions entirely, protect only the greeting from being cut off, or tune the endpointing thresholds that determine when the assistant treats caller speech as a complete turn.

In this guide, you will learn:

* How interruption handling differs between turn-taking and non turn-taking transcription models.
* How to configure interruption settings via the API.
* How to protect greetings and tune endpointing thresholds.

***

## How it works

Interruption behavior depends on which transcription model your assistant uses.

### Turn-taking models

Turn-taking models like `deepgram/flux` have built-in end-of-turn detection. When you use one of these models, the assistant determines when the caller has finished speaking using the transcription-level settings `eot_threshold`, `eot_timeout_ms`, and `eager_eot_threshold` — configured under `transcription.settings`. See the [Transcription Settings](/docs/inference/ai-assistants/transcription-settings) guide for details.

You can still use `interruption_settings.enable` and `interruption_settings.disable_greeting_interruption` with turn-taking models, but the `start_speaking_plan` and `transcription_endpointing_plan` thresholds are not relevant because the model handles turn detection natively.

### Non turn-taking models

For models without built-in turn detection (such as `deepgram/nova-3`, `deepgram/nova-2`, `azure/fast`, or `nvidia/parakeet-v3`), the assistant relies on the `interruption_settings.start_speaking_plan` to decide when to start speaking after the caller stops. This plan uses silence-based endpointing thresholds to detect end of turn.

***

## Configuration

### API schema

Set the `interruption_settings` object when creating or updating an assistant:

```bash theme={null}
curl -X POST https://api.telnyx.com/v2/ai/assistants \
  -H "Authorization: Bearer $TELNYX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My Assistant",
    "model": "anthropic/claude-haiku-4-5",
    "instructions": "You are a helpful voice assistant.",
    "transcription": {
      "model": "deepgram/nova-3"
    },
    "interruption_settings": {
      "enable": true,
      "disable_greeting_interruption": true,
      "start_speaking_plan": {
        "wait_seconds": 0.4,
        "transcription_endpointing_plan": {
          "on_punctuation_seconds": 0.1,
          "on_no_punctuation_seconds": 1.5,
          "on_number_seconds": 0.5
        }
      }
    }
  }'
```

### Key fields

| Field                                                                          | Type    | Default | Description                                                                                         |
| ------------------------------------------------------------------------------ | ------- | ------- | --------------------------------------------------------------------------------------------------- |
| `enable`                                                                       | boolean | `true`  | Whether callers can interrupt the assistant while it is speaking.                                   |
| `disable_greeting_interruption`                                                | boolean | —       | When `true`, prevents callers from interrupting the assistant's greeting.                           |
| `start_speaking_plan.wait_seconds`                                             | float   | `0.4`   | Minimum seconds to wait after the caller stops speaking before the assistant responds.              |
| `start_speaking_plan.transcription_endpointing_plan.on_punctuation_seconds`    | float   | `0.1`   | Seconds to wait after the transcript ends with punctuation before treating the turn as complete.    |
| `start_speaking_plan.transcription_endpointing_plan.on_no_punctuation_seconds` | float   | `1.5`   | Seconds to wait after the transcript ends without punctuation before treating the turn as complete. |
| `start_speaking_plan.transcription_endpointing_plan.on_number_seconds`         | float   | `0.5`   | Seconds to wait after the transcript ends with a number before treating the turn as complete.       |

### Mission Control Portal

You can also configure interruption settings through the Portal:

1. Navigate to **AI > Assistants**.
2. Select your assistant and click **Edit**.
3. Open the **Voice** tab.
4. Scroll to the **Interruption Settings** section.
5. Toggle interruptions on or off, enable greeting protection, and adjust the start speaking plan thresholds.

***

## Example configurations

### Default — allow interruptions

Allow callers to interrupt at any time, including during the greeting. This is the default behavior when `interruption_settings` is omitted.

```json theme={null}
{
  "interruption_settings": {
    "enable": true
  }
}
```

### Protected greeting

Allow interruptions during normal conversation but prevent callers from cutting off the assistant's initial greeting. Useful for flows where the greeting contains required disclosures or context.

```json theme={null}
{
  "interruption_settings": {
    "enable": true,
    "disable_greeting_interruption": true
  }
}
```

### Conservative endpointing for non turn-taking models

Use longer silence thresholds to reduce false interruptions in noisy environments or when callers tend to pause mid-sentence. This configuration waits longer before treating silence as end of turn.

```json theme={null}
{
  "interruption_settings": {
    "enable": true,
    "start_speaking_plan": {
      "wait_seconds": 0.8,
      "transcription_endpointing_plan": {
        "on_punctuation_seconds": 0.3,
        "on_no_punctuation_seconds": 2.0,
        "on_number_seconds": 1.0
      }
    }
  }
}
```

***

## Use cases

* **Call centers with background noise**: Increase `wait_seconds` and endpointing thresholds to prevent ambient noise from triggering false interruptions.
* **IVR-style interactions**: Keep interruptions enabled so callers can barge in to skip prompts they have already heard.
* **Greeting-heavy flows**: Enable `disable_greeting_interruption` to ensure callers hear required disclosures, legal notices, or welcome messages before interacting.
* **Dictation or number entry**: Increase `on_number_seconds` to give callers time to finish reading out long numbers like account IDs or phone numbers without the assistant cutting in.

***

## Related resources

* **[Transcription Settings](/docs/inference/ai-assistants/transcription-settings)** — Configure STT models and end-of-turn detection for turn-taking models like `deepgram/flux`.
* **[Create an Assistant API Reference](/api-reference/assistants/create-an-assistant)** — Full assistant configuration options including `interruption_settings`.
* **[End-of-Turn Detection](/docs/voice/stt/websocket-streaming/parameters/end-of-turn)** — Lower-level end-of-turn parameters for WebSocket STT streaming.
