Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft Edge More info about Internet Explorer and Microsoft Edge
microsoft-foundry.rest.security.o-auth2-auth

Agent Voice Conversation Engine

Connect to a hosted voice conversation engine

GET /agents/{agent_name}/endpoint/protocols/voice_conversation_engine

Establishes a WebSocket connection to a hosted voice conversation engine. The client must send an HTTP GET with Upgrade: websocket headers. The target hosted agent must declare voice_conversation_engine version 1.0.0. An invocations_ws declaration is neither required nor a fallback. Both protocols may be declared independently during migration; this operation always selects voice_conversation_engine.

The service resolves or creates a hosted session and forwards the connection to ws://container:8088/voice_conversation_engine without rewriting the protocol path. The AgentServer SDK exposes that container endpoint only when a Voice Bridge handler is registered.

The declared voice_conversation_engine version 1.0.0 identifies the Voice Live Bridge protocol. Its container protocol version is independent of Bridge message version 1.0 and Hosted Agents API version v1.

Voice Live owns audio, STT, TTS, turn detection, and interruption. The engine reuses the existing Bridge Protocol 1.0 wire semantics. Voice Live sends session.start with protocol_version: "1.0"; the engine acknowledges activation with session.ready or rejects it with session.rejected. Caller input uses user.message. The engine opens a response with response.created, emits response.output_text.delta and response.output_text.done for text or response.output_data.done for non-audio structured output, and completes generation with response.done. response.none consumes input without opening a response; failures use error.

Messages carry envelope id and ts fields. Inputs and output items use item_id; responses use response_id, and replies correlate consumed inputs through ordered-prefix in_reply_to values. Voice Live reports interruption through user.barge_in, including heard_text. An engine-initiated response.cancel is acknowledged by Voice Live with response.cancelled after playback stops. Existing bounded-message, timeout, and proactive-response admission semantics are retained.

Reconnection obtains fresh authentication and reattaches through the same agent_session_id, then sends session.start with reconnect: true and waits for session.ready. In-flight response state is abandoned, not replayed; there is no sequence acknowledgement or cursor-based recovery. Audio transport is outside this contract. The service relays frames without changing their message semantics; WebSocket close codes and ping/pong are preserved. Authorization, throttling, metrics, and tracing are applied to the selected voice-conversation-engine protocol.

Path parameters

agent_name string required

The name of the target hosted voice conversation engine in the current project.

Query parameters

agent_session_id string

Optional hosted session ID. Supply the same ID to reconnect to an existing session; omit it to create a session with an automatically generated ID.

api-version string required

The API version to use for this operation.

Responses

Informational

Headers

x-agent-session-id string required

The resolved hosted session ID, either the supplied ID or an automatically generated one.

Client error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]

Additional errors that contributed to this failure.

additionalInfo object

Additional structured information about the failure.

debugInfo object

Diagnostic information supplied by the service for troubleshooting.

Server error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]

Additional errors that contributed to this failure.

additionalInfo object

Additional structured information about the failure.

debugInfo object

Diagnostic information supplied by the service for troubleshooting.

Request

GET /agents/{agent_name}/endpoint/protocols/voice_conversation_engine HTTP/1.1

Response

Status: 101
Status: 4XX
Content-Type: application/json
Status: 5XX
Content-Type: application/json
en-us
Your Privacy Choices
  • AI Disclaimer
  • Previous Versions
  • Blog
  • Contribute
  • Privacy
  • Consumer Health Privacy
  • Terms of Use
  • Trademarks
  • © Microsoft 2026