> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.deepgram.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.deepgram.com/_mcp/server.

## Flux: Configure Control Message for Dynamic Mid-Stream Configuration

Flux now supports dynamic configuration updates mid-stream with the new **Configure control message**, enabling voice agents to adapt speech recognition behavior as conversations evolve—without disconnecting and reconnecting.

### 🎯 Dynamic Configuration Updates

Real conversations aren't static. They shift from casual confirmation to strict authentication, from general discussion to domain-specific troubleshooting. The Configure control message lets you inject the right ASR context at the right moment in the conversation.

**Update these parameters mid-stream:**

- **Keyterms** - Inject task-critical vocabulary as conversation context changes (names, medications, product terminology)
- **Turn detection thresholds** (`eot_threshold`, `eager_eot_threshold`) - Tighten or relax turn detection confidence requirements
- **Timeout behavior** (`eot_timeout_ms`) - Adjust silence tolerance for different conversation phases

### Why This Matters

**Context injection for speech recognition.** Add a customer's name to keyterms right before asking for it. Swap to medication terminology when moving to pharmacy discussion. Load product names when handling specific inquiries. You're no longer stuck with a generic keyterm list that's "good enough" for the entire call.

**Adaptive turn detection.** When collecting passwords, OTPs, or account numbers, increase `eot_timeout_ms` and `eot_threshold` to prevent premature cutoffs. Relax them when you're back to natural conversation.

**Simplified engineering.** No more reconnecting mid-call (dropping audio, managing state transitions) or managing multiple concurrent streams. One connection, dynamic behavior.

### Implementation

Send a Configure control message over your Flux WebSocket connection:

```json
{
  "type": "Configure",
  "thresholds": {
    "eot_threshold": 0.8,
    "eot_timeout_ms": 5000
  },
  "keyterms": ["product_name", "feature_name"]
}
```

You'll receive a `ConfigureSuccess` response confirming the update, and changes apply immediately in the audio stream order.

**Availability:** Configure is currently available via direct WebSocket connections only. SDK and self-hosted support are coming soon.

**Important:** Keyterms are **replaced** (not merged) when you send a Configure message. Include both existing and new terms if you want to add to the list.

For comprehensive documentation, examples in multiple languages, and detailed behavior specifications, see the [Configure Control Message documentation](/docs/flux/configure).

For the full API specification, see the [Flux API Reference](https://developers.deepgram.com/reference/speech-to-text/listen-flux).