Server event reference for the Qwen-Audio Realtime API. All server events include the event_id (auto-generated by the server) and type (event type) fields.
User guide: Realtime Audio Chat (Qwen-Audio-Realtime). For event interaction sequences, see WebSocket API.
Description: Returned when a request fails or a service error occurs. Client errors (
Description: The first event sent by the server after the connection is established. Contains the default session configuration.
Description: Returned after a
Description: Sent when Voice Activity Detection (VAD) detects the start of speech in server_vad / smart_turn mode.
Description: Sent when VAD detects the end of speech in server_vad / smart_turn mode.
Description: The audio buffer has been committed as a user message, either through a push-to-talk commit or automatic VAD commit.
Description: The audio buffer has been cleared (push-to-talk mode only).
Description: A new conversation item was created. Triggered when user audio is committed, the client manually creates an item, or an assistant response begins.
Description: A conversation item was deleted. Returned as a confirmation after the client sends a
Description: A conversation item was retrieved successfully. Returned after the client sends a
Description: Incremental Automatic Speech Recognition (ASR) transcription result, streamed during speech recognition. Includes emotion and language detection information.
Description: Final ASR transcription result. The transcribed text is written to the
Description: ASR transcription failed.
Description: smart_turn mode only. Incremental transcription result for ambient audio. When VAD detects voice activity but semantic analysis classifies the turn as invalid (for example, background noise or filler words like "hmm" or "uh"), the ASR result is forwarded to the client as an ambient event. This event isn't linked to any conversation item. The
Description: smart_turn mode only. Final transcription result for ambient audio. Paired with the corresponding delta event to mark the end of an ambient audio transcription segment. This result isn't written to the conversation context.
Description: Sent when a model inference round starts.
Description: A new output item was added to the response. The output item type is
Description: A new content part was added to an output item.
Description: Text delta event in text-only mode. Streams text fragments incrementally.
Description: Text output complete event in text-only mode.
Description: Transcript delta event in audio mode. Streams transcript fragments incrementally.
Description: Transcript output complete event in audio mode.
Description: Audio data delta event in audio mode. The
Description: Audio output complete event in audio mode. Contains no audio data.
Description: A content part within an output item has completed.
Description: An output item within the response has completed.
Description: Function Calling argument delta. When the model decides to invoke a tool, the server first sends
Description: Sent when Function Calling argument output is complete. After receiving this event, the client should: execute the corresponding tool, write the result to the conversation via
Description: An inference round is complete.
Description: The voiceprint registration process is in progress asynchronously.
Description: The voiceprint registration process has completed successfully.
Description: The voiceprint registration failed. Normal conversation calls are not blocked.
error
Description: Returned when a request fails or a service error occurs. Client errors (invalid_request_error) keep the connection open. Server errors (server_error) terminate the connection.
event_idstringUnique identifier for this event.typestringEvent type. Always error.errorobjectError details.
Properties type stringError type, such as invalid_request_error (client error) or server_error (server error).codestringError code.messagestringError message.paramstringThe parameter associated with the error. |
session.created
Description: The first event sent by the server after the connection is established. Contains the default session configuration.
event_idstringUnique identifier for this event.typestringEvent type. Always session.created.sessionobjectSession configuration.
Properties object stringAlways realtime.session.modelstringModel name.modalitiesarrayOutput modalities of the model.voicestringVoice used for audio generation. Either a system voice name or the voice_id of a cloned voice.input_audio_transcriptionobjectAudio transcription configuration.
Properties model stringTranscription model, such as fun-asr.objectTurn detection (VAD) configuration.idstringUnique session identifier. |
session.updated
Description: Returned after a session.update request is processed successfully. Contains the full updated session configuration. If the request fails, an error event is returned instead.
event_idstringUnique identifier for this event.typestringEvent type. Always session.updated.sessionobjectFull session configuration after the update. Shares the same structure as the session object in session.created. |
input_audio_buffer.speech_started
Description: Sent when Voice Activity Detection (VAD) detects the start of speech in server_vad / smart_turn mode.
event_idstringUnique identifier for this event.typestringEvent type. Always input_audio_buffer.speech_started.audio_start_msintegerTimestamp in milliseconds when speech started.item_idstringID of the item that will be created when this speech segment is committed. |
input_audio_buffer.speech_stopped
Description: Sent when VAD detects the end of speech in server_vad / smart_turn mode.
event_idstringUnique identifier for this event.typestringEvent type. Always input_audio_buffer.speech_stopped.audio_end_msintegerTimestamp in milliseconds when speech ended.item_idstringID of the user message item to be created.reasonstringReturned only in smart_turn mode. When set to turn_invalid, indicates the current turn was classified as invalid (no semantic content) and inference will not be triggered. This field is absent for valid turns. |
input_audio_buffer.committed
Description: The audio buffer has been committed as a user message, either through a push-to-talk commit or automatic VAD commit.
event_idstringUnique identifier for this event.typestringEvent type. Always input_audio_buffer.committed.previous_item_idstringID of the previous conversation item.item_idstringID of the created user message item. |
input_audio_buffer.cleared
Description: The audio buffer has been cleared (push-to-talk mode only).
event_idstringUnique identifier for this event.typestringEvent type. Always input_audio_buffer.cleared. |
conversation.item.created
Description: A new conversation item was created. Triggered when user audio is committed, the client manually creates an item, or an assistant response begins.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.created.previous_item_idstringID of the previous conversation item.itemobjectThe created conversation item.
Properties id stringUnique identifier for the conversation item.objectstringAlways realtime.item.typestringItem type: message (standard message) or function_call (function call).statusstringItem status, such as in_progress or completed.rolestringMessage role, such as user or assistant. Only present for message type items.contentarrayMessage content list. Only present for message type items. |
conversation.item.deleted
Description: A conversation item was deleted. Returned as a confirmation after the client sends a conversation.item.delete event.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.deleted.item_idstringID of the deleted conversation item. |
conversation.item.retrieved
Description: A conversation item was retrieved successfully. Returned after the client sends a conversation.item.retrieve event. For audio-type content, only the transcript text is included; raw audio data isn't returned.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.retrieved.itemobjectThe retrieved conversation item.
Properties id stringUnique identifier for the conversation item.objectstringAlways realtime.item.typestringItem type: message (standard message) or function_call (function call).rolestringMessage role, such as user or assistant. Only present for message type items.contentarrayMessage content list. For audio-type content, only the transcript text is included; raw audio data isn't returned. |
conversation.item.input_audio_transcription.delta
Description: Incremental Automatic Speech Recognition (ASR) transcription result, streamed during speech recognition. Includes emotion and language detection information.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.input_audio_transcription.delta.item_idstringID of the associated conversation item.content_indexintegerIndex of the content part.textstringFinalized transcription text.stashstringTentative text that hasn't been finalized yet. |
conversation.item.input_audio_transcription.completed
Description: Final ASR transcription result. The transcribed text is written to the transcript field of the corresponding item.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.input_audio_transcription.completed.item_idstringID of the associated conversation item.content_indexintegerIndex of the content part.transcriptstringThe complete transcription text. |
conversation.item.input_audio_transcription.failed
Description: ASR transcription failed.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.input_audio_transcription.failed.item_idstringID of the associated conversation item.content_indexintegerIndex of the content part.errorobjectError details.
Properties type stringError type, such as transcription_error.codestringError code, such as transcription_failed.messagestringError message. |
conversation.item.ambient_audio_transcription.delta
Description: smart_turn mode only. Incremental transcription result for ambient audio. When VAD detects voice activity but semantic analysis classifies the turn as invalid (for example, background noise or filler words like "hmm" or "uh"), the ASR result is forwarded to the client as an ambient event. This event isn't linked to any conversation item. The item_id is a standalone temporary ID.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.ambient_audio_transcription.delta.item_idstringA standalone temporary ID, not associated with any conversation item.content_indexintegerIndex of the content part.textstringFinalized transcription text.stashstringTentative text that hasn't been finalized yet. |
conversation.item.ambient_audio_transcription.completed
Description: smart_turn mode only. Final transcription result for ambient audio. Paired with the corresponding delta event to mark the end of an ambient audio transcription segment. This result isn't written to the conversation context.
event_idstringUnique identifier for this event.typestringEvent type. Always conversation.item.ambient_audio_transcription.completed.item_idstringA standalone temporary ID, not associated with the conversation context.content_indexintegerIndex of the content part.transcriptstringThe complete transcription text. |
response.created
Description: Sent when a model inference round starts.
event_idstringUnique identifier for this event.typestringEvent type. Always response.created.responseobjectThe response object.
Properties id stringUnique identifier for the response.objectstringAlways realtime.response.statusstringResponse status, such as in_progress.modalitiesarrayOutput modalities of the model.voicestringVoice used for audio generation. Either a system voice name or the voice_id of a cloned voice.outputarrayOutput items of the response. Initially an empty array. |
response.output_item.added
Description: A new output item was added to the response. The output item type is message for standard replies, or function_call for Function Calling.
event_idstringUnique identifier for this event.typestringEvent type. Always response.output_item.added.response_idstringAssociated response ID.output_indexintegerIndex of the output item within the response.itemobjectThe added output item.
Properties id stringUnique identifier for the output item.objectstringAlways realtime.item.typestringOutput item type: message (standard message) or function_call (function call).statusstringOutput item status, such as in_progress.rolestringMessage role. Always assistant. Only present for message type items.contentarrayMessage content list. Only present for message type items. | response.output_item.added / conversation.item.created / response.output_item.done events contain the following item structure:A single response can include multiple function_call items and may also contain standard message output alongside function_call output. The Function Calling portion isn't sent to TTS for audio playback. |
response.content_part.added
Description: A new content part was added to an output item.
event_idstringUnique identifier for this event.typestringEvent type. Always response.content_part.added.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.partobjectThe added content part.
Properties type stringContent type, such as audio or text.textstringText content. Initially an empty string. |
response.text.delta
Description: Text delta event in text-only mode. Streams text fragments incrementally.
event_idstringUnique identifier for this event.typestringEvent type. Always response.text.delta.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.deltastringIncremental text fragment. |
response.text.done
Description: Text output complete event in text-only mode.
event_idstringUnique identifier for this event.typestringEvent type. Always response.text.done.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.textstringThe complete text output. |
response.audio_transcript.delta
Description: Transcript delta event in audio mode. Streams transcript fragments incrementally.
event_idstringUnique identifier for this event.typestringEvent type. Always response.audio_transcript.delta.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.deltastringIncremental transcript fragment. |
response.audio_transcript.done
Description: Transcript output complete event in audio mode.
event_idstringUnique identifier for this event.typestringEvent type. Always response.audio_transcript.done.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.transcriptstringThe complete transcript text. |
response.audio.delta
Description: Audio data delta event in audio mode. The delta field contains Base64-encoded PCM audio data.
event_idstringUnique identifier for this event.typestringEvent type. Always response.audio.delta.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.deltastringBase64-encoded PCM audio data fragment. |
response.audio.done
Description: Audio output complete event in audio mode. Contains no audio data.
event_idstringUnique identifier for this event.typestringEvent type. Always response.audio.done.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item. |
response.content_part.done
Description: A content part within an output item has completed.
event_idstringUnique identifier for this event.typestringEvent type. Always response.content_part.done.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.content_indexintegerIndex of the content part within the output item.partobjectThe completed content part.
Properties type stringContent type, such as audio or text.textstringText content or audio transcript text. |
response.output_item.done
Description: An output item within the response has completed.
event_idstringUnique identifier for this event.typestringEvent type. Always response.output_item.done.response_idstringAssociated response ID.output_indexintegerIndex of the output item within the response.itemobjectThe completed output item with full details.
Properties id stringUnique identifier for the output item.objectstringAlways realtime.item.typestringOutput item type: message (standard message) or function_call (function call).statusstringOutput item status, such as completed.rolestringMessage role. Always assistant. Only present for message type items.contentarrayMessage content list. Only present for message type items. |
response.function_call_arguments.delta
Description: Function Calling argument delta. When the model decides to invoke a tool, the server first sends response.output_item.added (with item.type=function_call) and conversation.item.created, then streams argument fragments through this event.
event_idstringUnique identifier for this event.typestringEvent type. Always response.function_call_arguments.delta.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.call_idstringUnique identifier for the function call.deltastringIncremental fragment of the function call arguments (JSON string fragment). |
response.function_call_arguments.done
Description: Sent when Function Calling argument output is complete. After receiving this event, the client should: execute the corresponding tool, write the result to the conversation via conversation.item.create with a function_call_output item, and then send response.create to trigger a follow-up inference round.
event_idstringUnique identifier for this event.typestringEvent type. Always response.function_call_arguments.done.response_idstringAssociated response ID.item_idstringAssociated output item ID.output_indexintegerIndex of the output item within the response.call_idstringUnique identifier for the function call.namestringName of the invoked function.argumentsstringComplete function call arguments (JSON string). |
response.done
Description: An inference round is complete. status indicates the reason for completion.
event_idstringUnique identifier for this event.typestringEvent type. Always response.done.responseobjectThe complete response object.
Properties id stringUnique identifier of the response.objectstringAlways realtime.response.statusstringCompletion status of the response. Valid values:
objectStatus details. Present only when the status is cancelled or failed.
Properties type stringStatus type, such as cancelled.reasonstringCancellation reason: turn_detected (VAD interruption) or client_cancelled (client-initiated cancellation).arrayOutput modalities of the model.voicestringVoice used for audio generation. Either a system voice name or the voice_id of a cloned voice.outputarrayList of output items in the response, containing complete item objects. |
voiceprint_audio_list.in_progress
Description: The voiceprint registration process is in progress asynchronously.
event_idstringUnique identifier for this event.typestringEvent type. Always voiceprint_audio_list.in_progress.item_idstringUnique identifier for the voiceprint registration task. |
voiceprint_audio_list.completed
Description: The voiceprint registration process has completed successfully.
event_idstringUnique identifier for this event.typestringEvent type. Always voiceprint_audio_list.completed.item_idstringUnique identifier for the voiceprint registration task. |
voiceprint_audio_list.failed
Description: The voiceprint registration failed. Normal conversation calls are not blocked.
event_idstringUnique identifier for this event.typestringEvent type. Always voiceprint_audio_list.failed.item_idstringUnique identifier for the voiceprint registration task.reasonstringDescription of the failure reason. |