> For a complete documentation index, fetch https://docs.voximplant.ai/llms.txt

# VoiceAgentAPIClient

## Methods

### addEventListener

Adds a handler for the specified [QwenCloud.VoiceAgentAPIEvents](/api-reference/voxengine/qwen-cloud/voice-agent-api-events) or [QwenCloud.Events](/api-reference/voxengine/qwen-cloud/events) event. Use only functions as handlers; anything except a function leads to the error and scenario termination when a handler is called.

```ts
addEventListener(event: QwenCloud.Events | QwenCloud.VoiceAgentAPIEvents | T, callback: (event: QwenCloud._VoiceAgentAPIClientEvents[T]) => any): void
```

**Parameters**

**`event`** `QwenCloud.Events | QwenCloud.VoiceAgentAPIEvents | T` — required

---

**`callback`** `(event: QwenCloud._VoiceAgentAPIClientEvents[T]) => any` — required

---

### clearMediaBuffer

Clears the Qwen Cloud WebSocket media buffer.

```ts
clearMediaBuffer(parameters?: ClearMediaBufferParameters): void
```

**Parameters**

**`parameters`** `ClearMediaBufferParameters`

---

### close

Closes the Qwen Cloud connection (over WebSocket) or connection attempt.

```ts
close(): void
```

### conversationItemCreate

Inserts a conversation item (message, function_call, or function_call_output). [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-create](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-create)

```ts
conversationItemCreate(parameters: Object): void
```

**Parameters**

**`parameters`** `Object` — required

---

### conversationItemDelete

Deletes a conversation item. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-delete](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-delete)

```ts
conversationItemDelete(parameters: Object): void
```

**Parameters**

**`parameters`** `Object` — required

---

### conversationItemRetrieve

Retrieves a conversation item. Audio content is returned as a transcript. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-retrieve](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#conversation-item-retrieve)

```ts
conversationItemRetrieve(parameters: Object): void
```

**Parameters**

**`parameters`** `Object` — required

---

### id

Returns the VoiceAgentAPIClient id.

```ts
id(): string
```

### inputAudioBufferClear

Clears uncommitted input audio. Push-to-talk mode only. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#input-audio-buffer-clear](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#input-audio-buffer-clear)

```ts
inputAudioBufferClear(parameters?: Object): void
```

**Parameters**

**`parameters`** `Object`

---

### inputAudioBufferCommit

Commits the input audio buffer. Push-to-talk mode only. Does not start a response; call `QwenCloud.VoiceAgentAPIClient.responseCreate` after this. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#input-audio-buffer-commit](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#input-audio-buffer-commit)

```ts
inputAudioBufferCommit(parameters?: Object): void
```

**Parameters**

**`parameters`** `Object`

---

### removeEventListener

Removes a handler for the specified [QwenCloud.VoiceAgentAPIEvents](/api-reference/voxengine/qwen-cloud/voice-agent-api-events) or [QwenCloud.Events](/api-reference/voxengine/qwen-cloud/events) event.

```ts
removeEventListener(event: QwenCloud.Events | QwenCloud.VoiceAgentAPIEvents | T, callback?: (event: QwenCloud._VoiceAgentAPIClientEvents[T]) => any): void
```

**Parameters**

**`event`** `QwenCloud.Events | QwenCloud.VoiceAgentAPIEvents | T` — required

---

**`callback`** `(event: QwenCloud._VoiceAgentAPIClientEvents[T]) => any`

---

### responseCancel

Cancels the response currently being generated. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#response-cancel](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#response-cancel)

```ts
responseCancel(parameters?: Object): void
```

**Parameters**

**`parameters`** `Object`

---

### responseCreate

Starts a response. Required in push-to-talk mode and after a function_call_output. Optional overrides: response.modalities, response.voice. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#response-create](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#response-create)

```ts
responseCreate(parameters?: Object): void
```

**Parameters**

**`parameters`** `Object`

---

### sendMediaTo

Starts sending media from Qwen Cloud (via WebSocket) to the media unit. Qwen Cloud works in real time.

```ts
sendMediaTo(mediaUnit: VoxMediaUnit, parameters?: SendMediaParameters): void
```

**Parameters**

**`mediaUnit`** `VoxMediaUnit` — required

---

**`parameters`** `SendMediaParameters`

---

### sessionUpdate

Updates the session configuration. Send this before the first audio frame. `turn_detection: null` selects push-to-talk. [https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#session-update](https://docs.qwencloud.com/api-reference/qwen-audio-realtime/client-events#session-update)

```ts
sessionUpdate(parameters: Object): void
```

**Parameters**

**`parameters`** `Object` — required

---

### stopMediaTo

Stops sending media from Qwen Cloud (via WebSocket) to the media unit.

```ts
stopMediaTo(mediaUnit: VoxMediaUnit): void
```

**Parameters**

**`mediaUnit`** `VoxMediaUnit` — required

---

### webSocketId

Returns the Qwen Cloud WebSocket id.

```ts
webSocketId(): string
```