retell-sdk 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/LICENSE +201 -0
  3. package/README.md +304 -0
  4. package/_shims/MultipartBody.d.ts +9 -0
  5. package/_shims/MultipartBody.d.ts.map +1 -0
  6. package/_shims/MultipartBody.js +16 -0
  7. package/_shims/MultipartBody.js.map +1 -0
  8. package/_shims/MultipartBody.mjs +12 -0
  9. package/_shims/MultipartBody.mjs.map +1 -0
  10. package/_shims/README.md +46 -0
  11. package/_shims/auto/runtime-bun.d.ts +5 -0
  12. package/_shims/auto/runtime-bun.d.ts.map +1 -0
  13. package/_shims/auto/runtime-bun.js +21 -0
  14. package/_shims/auto/runtime-bun.js.map +1 -0
  15. package/_shims/auto/runtime-bun.mjs +2 -0
  16. package/_shims/auto/runtime-bun.mjs.map +1 -0
  17. package/_shims/auto/runtime-node.d.ts +5 -0
  18. package/_shims/auto/runtime-node.d.ts.map +1 -0
  19. package/_shims/auto/runtime-node.js +21 -0
  20. package/_shims/auto/runtime-node.js.map +1 -0
  21. package/_shims/auto/runtime-node.mjs +2 -0
  22. package/_shims/auto/runtime-node.mjs.map +1 -0
  23. package/_shims/auto/runtime.d.ts +5 -0
  24. package/_shims/auto/runtime.d.ts.map +1 -0
  25. package/_shims/auto/runtime.js +21 -0
  26. package/_shims/auto/runtime.js.map +1 -0
  27. package/_shims/auto/runtime.mjs +2 -0
  28. package/_shims/auto/runtime.mjs.map +1 -0
  29. package/_shims/auto/types-node.d.ts +5 -0
  30. package/_shims/auto/types-node.d.ts.map +1 -0
  31. package/_shims/auto/types-node.js +21 -0
  32. package/_shims/auto/types-node.js.map +1 -0
  33. package/_shims/auto/types-node.mjs +2 -0
  34. package/_shims/auto/types-node.mjs.map +1 -0
  35. package/_shims/auto/types.d.ts +101 -0
  36. package/_shims/auto/types.js +3 -0
  37. package/_shims/auto/types.mjs +3 -0
  38. package/_shims/bun-runtime.d.ts +6 -0
  39. package/_shims/bun-runtime.d.ts.map +1 -0
  40. package/_shims/bun-runtime.js +14 -0
  41. package/_shims/bun-runtime.js.map +1 -0
  42. package/_shims/bun-runtime.mjs +10 -0
  43. package/_shims/bun-runtime.mjs.map +1 -0
  44. package/_shims/index.d.ts +81 -0
  45. package/_shims/index.js +13 -0
  46. package/_shims/index.mjs +7 -0
  47. package/_shims/manual-types.d.ts +12 -0
  48. package/_shims/manual-types.js +3 -0
  49. package/_shims/manual-types.mjs +3 -0
  50. package/_shims/node-runtime.d.ts +3 -0
  51. package/_shims/node-runtime.d.ts.map +1 -0
  52. package/_shims/node-runtime.js +90 -0
  53. package/_shims/node-runtime.js.map +1 -0
  54. package/_shims/node-runtime.mjs +56 -0
  55. package/_shims/node-runtime.mjs.map +1 -0
  56. package/_shims/node-types.d.ts +42 -0
  57. package/_shims/node-types.js +3 -0
  58. package/_shims/node-types.mjs +3 -0
  59. package/_shims/registry.d.ts +37 -0
  60. package/_shims/registry.d.ts.map +1 -0
  61. package/_shims/registry.js +41 -0
  62. package/_shims/registry.js.map +1 -0
  63. package/_shims/registry.mjs +37 -0
  64. package/_shims/registry.mjs.map +1 -0
  65. package/_shims/web-runtime.d.ts +5 -0
  66. package/_shims/web-runtime.d.ts.map +1 -0
  67. package/_shims/web-runtime.js +78 -0
  68. package/_shims/web-runtime.js.map +1 -0
  69. package/_shims/web-runtime.mjs +71 -0
  70. package/_shims/web-runtime.mjs.map +1 -0
  71. package/_shims/web-types.d.ts +83 -0
  72. package/_shims/web-types.js +3 -0
  73. package/_shims/web-types.mjs +3 -0
  74. package/core.d.ts +237 -0
  75. package/core.d.ts.map +1 -0
  76. package/core.js +868 -0
  77. package/core.js.map +1 -0
  78. package/core.mjs +837 -0
  79. package/core.mjs.map +1 -0
  80. package/error.d.ts +53 -0
  81. package/error.d.ts.map +1 -0
  82. package/error.js +143 -0
  83. package/error.js.map +1 -0
  84. package/error.mjs +127 -0
  85. package/error.mjs.map +1 -0
  86. package/index.d.mts +133 -0
  87. package/index.d.ts +133 -0
  88. package/index.d.ts.map +1 -0
  89. package/index.js +117 -0
  90. package/index.js.map +1 -0
  91. package/index.mjs +89 -0
  92. package/index.mjs.map +1 -0
  93. package/package.json +107 -0
  94. package/resource.d.ts +6 -0
  95. package/resource.d.ts.map +1 -0
  96. package/resource.js +11 -0
  97. package/resource.js.map +1 -0
  98. package/resource.mjs +7 -0
  99. package/resource.mjs.map +1 -0
  100. package/resources/agent.d.ts +372 -0
  101. package/resources/agent.d.ts.map +1 -0
  102. package/resources/agent.js +44 -0
  103. package/resources/agent.js.map +1 -0
  104. package/resources/agent.mjs +40 -0
  105. package/resources/agent.mjs.map +1 -0
  106. package/resources/call.d.ts +461 -0
  107. package/resources/call.d.ts.map +1 -0
  108. package/resources/call.js +36 -0
  109. package/resources/call.js.map +1 -0
  110. package/resources/call.mjs +32 -0
  111. package/resources/call.mjs.map +1 -0
  112. package/resources/index.d.ts +5 -0
  113. package/resources/index.d.ts.map +1 -0
  114. package/resources/index.js +13 -0
  115. package/resources/index.js.map +1 -0
  116. package/resources/index.mjs +6 -0
  117. package/resources/index.mjs.map +1 -0
  118. package/resources/llm.d.ts +1355 -0
  119. package/resources/llm.d.ts.map +1 -0
  120. package/resources/llm.js +44 -0
  121. package/resources/llm.js.map +1 -0
  122. package/resources/llm.mjs +40 -0
  123. package/resources/llm.mjs.map +1 -0
  124. package/resources/phone-number.d.ts +78 -0
  125. package/resources/phone-number.d.ts.map +1 -0
  126. package/resources/phone-number.js +44 -0
  127. package/resources/phone-number.js.map +1 -0
  128. package/resources/phone-number.mjs +40 -0
  129. package/resources/phone-number.mjs.map +1 -0
  130. package/shims/node.d.ts +29 -0
  131. package/shims/node.d.ts.map +1 -0
  132. package/shims/node.js +31 -0
  133. package/shims/node.js.map +1 -0
  134. package/shims/node.mjs +5 -0
  135. package/shims/node.mjs.map +1 -0
  136. package/shims/web.d.ts +26 -0
  137. package/shims/web.d.ts.map +1 -0
  138. package/shims/web.js +31 -0
  139. package/shims/web.js.map +1 -0
  140. package/shims/web.mjs +5 -0
  141. package/shims/web.mjs.map +1 -0
  142. package/src/_shims/MultipartBody.ts +9 -0
  143. package/src/_shims/README.md +46 -0
  144. package/src/_shims/auto/runtime-bun.ts +4 -0
  145. package/src/_shims/auto/runtime-node.ts +4 -0
  146. package/src/_shims/auto/runtime.ts +4 -0
  147. package/src/_shims/auto/types-node.ts +4 -0
  148. package/src/_shims/auto/types.d.ts +101 -0
  149. package/src/_shims/auto/types.js +3 -0
  150. package/src/_shims/auto/types.mjs +3 -0
  151. package/src/_shims/bun-runtime.ts +14 -0
  152. package/src/_shims/index.d.ts +81 -0
  153. package/src/_shims/index.js +13 -0
  154. package/src/_shims/index.mjs +7 -0
  155. package/src/_shims/manual-types.d.ts +12 -0
  156. package/src/_shims/manual-types.js +3 -0
  157. package/src/_shims/manual-types.mjs +3 -0
  158. package/src/_shims/node-runtime.ts +83 -0
  159. package/src/_shims/node-types.d.ts +42 -0
  160. package/src/_shims/node-types.js +3 -0
  161. package/src/_shims/node-types.mjs +3 -0
  162. package/src/_shims/registry.ts +67 -0
  163. package/src/_shims/web-runtime.ts +103 -0
  164. package/src/_shims/web-types.d.ts +83 -0
  165. package/src/_shims/web-types.js +3 -0
  166. package/src/_shims/web-types.mjs +3 -0
  167. package/src/core.ts +1146 -0
  168. package/src/error.ts +146 -0
  169. package/src/index.ts +215 -0
  170. package/src/lib/.keep +4 -0
  171. package/src/resource.ts +11 -0
  172. package/src/resources/agent.ts +468 -0
  173. package/src/resources/call.ts +542 -0
  174. package/src/resources/index.ts +21 -0
  175. package/src/resources/llm.ts +1643 -0
  176. package/src/resources/phone-number.ts +111 -0
  177. package/src/shims/node.ts +50 -0
  178. package/src/shims/web.ts +50 -0
  179. package/src/tsconfig.json +11 -0
  180. package/src/uploads.ts +248 -0
  181. package/src/version.ts +1 -0
  182. package/uploads.d.ts +75 -0
  183. package/uploads.d.ts.map +1 -0
  184. package/uploads.js +165 -0
  185. package/uploads.js.map +1 -0
  186. package/uploads.mjs +152 -0
  187. package/uploads.mjs.map +1 -0
  188. package/version.d.ts +2 -0
  189. package/version.d.ts.map +1 -0
  190. package/version.js +5 -0
  191. package/version.js.map +1 -0
  192. package/version.mjs +2 -0
  193. package/version.mjs.map +1 -0
@@ -0,0 +1,468 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import * as Core from "../core";
4
+ import { APIResource } from "../resource";
5
+ import * as AgentAPI from "./agent";
6
+
7
+ export class Agent extends APIResource {
8
+ /**
9
+ * Create a new agent
10
+ */
11
+ create(body: AgentCreateParams, options?: Core.RequestOptions): Core.APIPromise<AgentResponse> {
12
+ return this._client.post('/create-agent', { body, ...options });
13
+ }
14
+
15
+ /**
16
+ * Retrieve details of a specific agent
17
+ */
18
+ retrieve(agentId: string, options?: Core.RequestOptions): Core.APIPromise<AgentResponse> {
19
+ return this._client.get(`/get-agent/${agentId}`, options);
20
+ }
21
+
22
+ /**
23
+ * Update an existing agent
24
+ */
25
+ update(
26
+ agentId: string,
27
+ body: AgentUpdateParams,
28
+ options?: Core.RequestOptions,
29
+ ): Core.APIPromise<AgentResponse> {
30
+ return this._client.patch(`/update-agent/${agentId}`, { body, ...options });
31
+ }
32
+
33
+ /**
34
+ * List all agents
35
+ */
36
+ list(options?: Core.RequestOptions): Core.APIPromise<AgentListResponse> {
37
+ return this._client.get('/list-agents', options);
38
+ }
39
+
40
+ /**
41
+ * Delete an existing agent
42
+ */
43
+ delete(agentId: string, options?: Core.RequestOptions): Core.APIPromise<void> {
44
+ return this._client.delete(`/delete-agent/${agentId}`, {
45
+ ...options,
46
+ headers: { Accept: '*/*', ...options?.headers },
47
+ });
48
+ }
49
+ }
50
+
51
+ export interface AgentResponse {
52
+ /**
53
+ * Unique id of agent.
54
+ */
55
+ agent_id: string;
56
+
57
+ /**
58
+ * Last modification timestamp (milliseconds since epoch). Either the time of last
59
+ * update or creation if no updates available.
60
+ */
61
+ last_modification_timestamp: number;
62
+
63
+ /**
64
+ * The URL we will establish LLM websocket for getting response, usually your
65
+ * server. Check out [LLM WebSocket](/api-references/llm-websocket) for more about
66
+ * request format (sent from us) and response format (send to us).
67
+ */
68
+ llm_websocket_url: string;
69
+
70
+ /**
71
+ * Unique voice id used for the agent. Find list of available voices and their
72
+ * preview in Dashboard.
73
+ */
74
+ voice_id: string;
75
+
76
+ /**
77
+ * The name of the agent. Only used for your own reference.
78
+ */
79
+ agent_name?: string;
80
+
81
+ /**
82
+ * If set, will add ambient environment sound to the call to make experience more
83
+ * realistic. Currently supports the following options:
84
+ *
85
+ * - `coffee-shop`: Coffee shop ambience with people chatting in background.
86
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
87
+ *
88
+ * - `convention-hall`: Convention hall ambience, with some echo and people
89
+ * chatting in background.
90
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
91
+ *
92
+ * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
93
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
94
+ *
95
+ * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
96
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
97
+ *
98
+ * Set to string `null` to remove ambient sound from this agent.
99
+ */
100
+ ambient_sound?: 'coffee-shop' | 'convention-hall' | 'summer-outdoor' | 'mountain-outdoor' | 'null';
101
+
102
+ /**
103
+ * Provide a customized list of keywords to bias the transcriber model, so that
104
+ * these words are more likely to get transcribed. Commonly used for names, brands,
105
+ * street, etc.
106
+ */
107
+ boosted_keywords?: Array<string>;
108
+
109
+ /**
110
+ * Controls whether the agent would backchannel (agent interjects the speaker with
111
+ * phrases like "yeah", "uh-huh" to signify interest and engagement). Backchannel
112
+ * when enabled tends to show up more in longer user utterances. If not set, agent
113
+ * will not backchannel.
114
+ */
115
+ enable_backchannel?: boolean;
116
+
117
+ /**
118
+ * Whether to format the transcribed text with inverse text normalization. It
119
+ * transforms the spoken form of text into written form for entities like phone
120
+ * number, email address, street address, etc. For example, "february fourth twenty
121
+ * twenty two" can be converted into "february 4th 2022". If not set, the default
122
+ * is true.
123
+ */
124
+ format_text?: boolean;
125
+
126
+ /**
127
+ * `Beta feature, use with caution.`
128
+ *
129
+ * This setting specifies the agent's operational language, including base language
130
+ * and dialect. Speech recognition considers both elements, but text-to-speech
131
+ * currently only recognizes the base language.
132
+ *
133
+ * For instance, selecting `en-GB` optimizes speech recognition for British
134
+ * English, yet text-to-speech output will be in standard English. If
135
+ * dialect-specific text-to-speech is required, please contact us for support.
136
+ *
137
+ * - `11lab voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
138
+ * Portuguese(pt)
139
+ *
140
+ * - `openAI voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
141
+ * Portuguese(pt), Japanese(ja)
142
+ *
143
+ * - `deepgram voices`: supports English(en)
144
+ */
145
+ language?:
146
+ | 'en-US'
147
+ | 'en-IN'
148
+ | 'en-GB'
149
+ | 'de-DE'
150
+ | 'es-ES'
151
+ | 'es-419'
152
+ | 'hi-IN'
153
+ | 'ja-JP'
154
+ | 'pt-PT'
155
+ | 'pt-BR';
156
+
157
+ /**
158
+ * Disable transcripts and recordings storage for enhanced privacy. Access
159
+ * transcripts securely via webhooks.
160
+ */
161
+ optOutSensitiveDataStorage?: boolean;
162
+
163
+ /**
164
+ * Controls how responsive is the agent. Value ranging from [0,1]. Lower value
165
+ * means less responsive agent (wait more, respond slower), while higher value
166
+ * means faster exchanges (respond when it can). If unset, default value 1 will
167
+ * apply.
168
+ */
169
+ responsiveness?: number;
170
+
171
+ /**
172
+ * Controls speed of voice. Value ranging from [0.5,2]. Lower value means slower
173
+ * speech, while higher value means faster speech rate. If unset, default value 1
174
+ * will apply.
175
+ */
176
+ voice_speed?: number;
177
+
178
+ /**
179
+ * Controls how stable the voice is. Value ranging from [0,2]. Lower value means
180
+ * more stable, and higher value means more variant speech generation. Currently
181
+ * this setting only applies to `11labs` voices. If unset, default value 1 will
182
+ * apply.
183
+ */
184
+ voice_temperature?: number;
185
+
186
+ /**
187
+ * The webhook for agent to listen to call events. See what events it would get at
188
+ * [webhook doc](/features/webhook). If set, will binds webhook events for this
189
+ * agent to the specified url, and will ignore the account level webhook for this
190
+ * agent. Set to string `null` to remove webhook url from this agent.
191
+ */
192
+ webhook_url?: string;
193
+ }
194
+
195
+ export type AgentListResponse = Array<AgentResponse>;
196
+
197
+ export interface AgentCreateParams {
198
+ /**
199
+ * The URL we will establish LLM websocket for getting response, usually your
200
+ * server. Check out [LLM WebSocket](/api-references/llm-websocket) for more about
201
+ * request format (sent from us) and response format (send to us).
202
+ */
203
+ llm_websocket_url: string;
204
+
205
+ /**
206
+ * Unique voice id used for the agent. Find list of available voices and their
207
+ * preview in Dashboard.
208
+ */
209
+ voice_id: string;
210
+
211
+ /**
212
+ * The name of the agent. Only used for your own reference.
213
+ */
214
+ agent_name?: string;
215
+
216
+ /**
217
+ * If set, will add ambient environment sound to the call to make experience more
218
+ * realistic. Currently supports the following options:
219
+ *
220
+ * - `coffee-shop`: Coffee shop ambience with people chatting in background.
221
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
222
+ *
223
+ * - `convention-hall`: Convention hall ambience, with some echo and people
224
+ * chatting in background.
225
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
226
+ *
227
+ * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
228
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
229
+ *
230
+ * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
231
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
232
+ *
233
+ * Set to string `null` to remove ambient sound from this agent.
234
+ */
235
+ ambient_sound?: 'coffee-shop' | 'convention-hall' | 'summer-outdoor' | 'mountain-outdoor' | 'null';
236
+
237
+ /**
238
+ * Provide a customized list of keywords to bias the transcriber model, so that
239
+ * these words are more likely to get transcribed. Commonly used for names, brands,
240
+ * street, etc.
241
+ */
242
+ boosted_keywords?: Array<string>;
243
+
244
+ /**
245
+ * Controls whether the agent would backchannel (agent interjects the speaker with
246
+ * phrases like "yeah", "uh-huh" to signify interest and engagement). Backchannel
247
+ * when enabled tends to show up more in longer user utterances. If not set, agent
248
+ * will not backchannel.
249
+ */
250
+ enable_backchannel?: boolean;
251
+
252
+ /**
253
+ * Whether to format the transcribed text with inverse text normalization. It
254
+ * transforms the spoken form of text into written form for entities like phone
255
+ * number, email address, street address, etc. For example, "february fourth twenty
256
+ * twenty two" can be converted into "february 4th 2022". If not set, the default
257
+ * is true.
258
+ */
259
+ format_text?: boolean;
260
+
261
+ /**
262
+ * `Beta feature, use with caution.`
263
+ *
264
+ * This setting specifies the agent's operational language, including base language
265
+ * and dialect. Speech recognition considers both elements, but text-to-speech
266
+ * currently only recognizes the base language.
267
+ *
268
+ * For instance, selecting `en-GB` optimizes speech recognition for British
269
+ * English, yet text-to-speech output will be in standard English. If
270
+ * dialect-specific text-to-speech is required, please contact us for support.
271
+ *
272
+ * - `11lab voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
273
+ * Portuguese(pt)
274
+ *
275
+ * - `openAI voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
276
+ * Portuguese(pt), Japanese(ja)
277
+ *
278
+ * - `deepgram voices`: supports English(en)
279
+ */
280
+ language?:
281
+ | 'en-US'
282
+ | 'en-IN'
283
+ | 'en-GB'
284
+ | 'de-DE'
285
+ | 'es-ES'
286
+ | 'es-419'
287
+ | 'hi-IN'
288
+ | 'ja-JP'
289
+ | 'pt-PT'
290
+ | 'pt-BR';
291
+
292
+ /**
293
+ * Disable transcripts and recordings storage for enhanced privacy. Access
294
+ * transcripts securely via webhooks.
295
+ */
296
+ optOutSensitiveDataStorage?: boolean;
297
+
298
+ /**
299
+ * Controls how responsive is the agent. Value ranging from [0,1]. Lower value
300
+ * means less responsive agent (wait more, respond slower), while higher value
301
+ * means faster exchanges (respond when it can). If unset, default value 1 will
302
+ * apply.
303
+ */
304
+ responsiveness?: number;
305
+
306
+ /**
307
+ * Controls speed of voice. Value ranging from [0.5,2]. Lower value means slower
308
+ * speech, while higher value means faster speech rate. If unset, default value 1
309
+ * will apply.
310
+ */
311
+ voice_speed?: number;
312
+
313
+ /**
314
+ * Controls how stable the voice is. Value ranging from [0,2]. Lower value means
315
+ * more stable, and higher value means more variant speech generation. Currently
316
+ * this setting only applies to `11labs` voices. If unset, default value 1 will
317
+ * apply.
318
+ */
319
+ voice_temperature?: number;
320
+
321
+ /**
322
+ * The webhook for agent to listen to call events. See what events it would get at
323
+ * [webhook doc](/features/webhook). If set, will binds webhook events for this
324
+ * agent to the specified url, and will ignore the account level webhook for this
325
+ * agent. Set to string `null` to remove webhook url from this agent.
326
+ */
327
+ webhook_url?: string;
328
+ }
329
+
330
+ export interface AgentUpdateParams {
331
+ /**
332
+ * The name of the agent. Only used for your own reference.
333
+ */
334
+ agent_name?: string;
335
+
336
+ /**
337
+ * If set, will add ambient environment sound to the call to make experience more
338
+ * realistic. Currently supports the following options:
339
+ *
340
+ * - `coffee-shop`: Coffee shop ambience with people chatting in background.
341
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
342
+ *
343
+ * - `convention-hall`: Convention hall ambience, with some echo and people
344
+ * chatting in background.
345
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
346
+ *
347
+ * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
348
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
349
+ *
350
+ * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
351
+ * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
352
+ *
353
+ * Set to string `null` to remove ambient sound from this agent.
354
+ */
355
+ ambient_sound?: 'coffee-shop' | 'convention-hall' | 'summer-outdoor' | 'mountain-outdoor' | 'null';
356
+
357
+ /**
358
+ * Provide a customized list of keywords to bias the transcriber model, so that
359
+ * these words are more likely to get transcribed. Commonly used for names, brands,
360
+ * street, etc.
361
+ */
362
+ boosted_keywords?: Array<string>;
363
+
364
+ /**
365
+ * Controls whether the agent would backchannel (agent interjects the speaker with
366
+ * phrases like "yeah", "uh-huh" to signify interest and engagement). Backchannel
367
+ * when enabled tends to show up more in longer user utterances. If not set, agent
368
+ * will not backchannel.
369
+ */
370
+ enable_backchannel?: boolean;
371
+
372
+ /**
373
+ * Whether to format the transcribed text with inverse text normalization. It
374
+ * transforms the spoken form of text into written form for entities like phone
375
+ * number, email address, street address, etc. For example, "february fourth twenty
376
+ * twenty two" can be converted into "february 4th 2022". If not set, the default
377
+ * is true.
378
+ */
379
+ format_text?: boolean;
380
+
381
+ /**
382
+ * `Beta feature, use with caution.`
383
+ *
384
+ * This setting specifies the agent's operational language, including base language
385
+ * and dialect. Speech recognition considers both elements, but text-to-speech
386
+ * currently only recognizes the base language.
387
+ *
388
+ * For instance, selecting `en-GB` optimizes speech recognition for British
389
+ * English, yet text-to-speech output will be in standard English. If
390
+ * dialect-specific text-to-speech is required, please contact us for support.
391
+ *
392
+ * - `11lab voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
393
+ * Portuguese(pt)
394
+ *
395
+ * - `openAI voices`: supports English(en), German(de), Spanish(es), Hindi(hi),
396
+ * Portuguese(pt), Japanese(ja)
397
+ *
398
+ * - `deepgram voices`: supports English(en)
399
+ */
400
+ language?:
401
+ | 'en-US'
402
+ | 'en-IN'
403
+ | 'en-GB'
404
+ | 'de-DE'
405
+ | 'es-ES'
406
+ | 'es-419'
407
+ | 'hi-IN'
408
+ | 'ja-JP'
409
+ | 'pt-PT'
410
+ | 'pt-BR';
411
+
412
+ /**
413
+ * The URL we will establish LLM websocket for getting response, usually your
414
+ * server. Check out [LLM WebSocket](/api-references/llm-websocket) for more about
415
+ * request format (sent from us) and response format (send to us).
416
+ */
417
+ llm_websocket_url?: string;
418
+
419
+ /**
420
+ * Disable transcripts and recordings storage for enhanced privacy. Access
421
+ * transcripts securely via webhooks.
422
+ */
423
+ optOutSensitiveDataStorage?: boolean;
424
+
425
+ /**
426
+ * Controls how responsive is the agent. Value ranging from [0,1]. Lower value
427
+ * means less responsive agent (wait more, respond slower), while higher value
428
+ * means faster exchanges (respond when it can). If unset, default value 1 will
429
+ * apply.
430
+ */
431
+ responsiveness?: number;
432
+
433
+ /**
434
+ * Unique voice id used for the agent. Find list of available voices and their
435
+ * preview in Dashboard.
436
+ */
437
+ voice_id?: string;
438
+
439
+ /**
440
+ * Controls speed of voice. Value ranging from [0.5,2]. Lower value means slower
441
+ * speech, while higher value means faster speech rate. If unset, default value 1
442
+ * will apply.
443
+ */
444
+ voice_speed?: number;
445
+
446
+ /**
447
+ * Controls how stable the voice is. Value ranging from [0,2]. Lower value means
448
+ * more stable, and higher value means more variant speech generation. Currently
449
+ * this setting only applies to `11labs` voices. If unset, default value 1 will
450
+ * apply.
451
+ */
452
+ voice_temperature?: number;
453
+
454
+ /**
455
+ * The webhook for agent to listen to call events. See what events it would get at
456
+ * [webhook doc](/features/webhook). If set, will binds webhook events for this
457
+ * agent to the specified url, and will ignore the account level webhook for this
458
+ * agent. Set to string `null` to remove webhook url from this agent.
459
+ */
460
+ webhook_url?: string;
461
+ }
462
+
463
+ export namespace Agent {
464
+ export import AgentResponse = AgentAPI.AgentResponse;
465
+ export import AgentListResponse = AgentAPI.AgentListResponse;
466
+ export import AgentCreateParams = AgentAPI.AgentCreateParams;
467
+ export import AgentUpdateParams = AgentAPI.AgentUpdateParams;
468
+ }