retell-sdk 4.66.0 → 5.0.0

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 (550) hide show
  1. package/CHANGELOG.md +4 -1346
  2. package/LICENSE +1 -1
  3. package/README.md +120 -44
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +217 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +217 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +513 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +509 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/resource.d.mts +6 -0
  37. package/core/resource.d.mts.map +1 -0
  38. package/core/resource.d.ts +6 -0
  39. package/core/resource.d.ts.map +1 -0
  40. package/core/resource.js +11 -0
  41. package/core/resource.js.map +1 -0
  42. package/core/resource.mjs +7 -0
  43. package/core/resource.mjs.map +1 -0
  44. package/core/uploads.d.mts +3 -0
  45. package/core/uploads.d.mts.map +1 -0
  46. package/core/uploads.d.ts +3 -0
  47. package/core/uploads.d.ts.map +1 -0
  48. package/core/uploads.js +6 -0
  49. package/core/uploads.js.map +1 -0
  50. package/core/uploads.mjs +2 -0
  51. package/core/uploads.mjs.map +1 -0
  52. package/error.d.mts +2 -0
  53. package/error.d.mts.map +1 -0
  54. package/error.d.ts +1 -46
  55. package/error.d.ts.map +1 -1
  56. package/error.js +3 -110
  57. package/error.js.map +1 -1
  58. package/error.mjs +1 -96
  59. package/error.mjs.map +1 -1
  60. package/index.d.mts +6 -151
  61. package/index.d.mts.map +1 -0
  62. package/index.d.ts +5 -150
  63. package/index.d.ts.map +1 -1
  64. package/index.js +12 -150
  65. package/index.js.map +1 -1
  66. package/index.mjs +5 -123
  67. package/index.mjs.map +1 -1
  68. package/internal/builtin-types.d.mts +73 -0
  69. package/internal/builtin-types.d.mts.map +1 -0
  70. package/internal/builtin-types.d.ts +73 -0
  71. package/internal/builtin-types.d.ts.map +1 -0
  72. package/internal/builtin-types.js +4 -0
  73. package/internal/builtin-types.js.map +1 -0
  74. package/internal/builtin-types.mjs +3 -0
  75. package/internal/builtin-types.mjs.map +1 -0
  76. package/internal/detect-platform.d.mts +15 -0
  77. package/internal/detect-platform.d.mts.map +1 -0
  78. package/internal/detect-platform.d.ts +15 -0
  79. package/internal/detect-platform.d.ts.map +1 -0
  80. package/internal/detect-platform.js +162 -0
  81. package/internal/detect-platform.js.map +1 -0
  82. package/internal/detect-platform.mjs +157 -0
  83. package/internal/detect-platform.mjs.map +1 -0
  84. package/internal/errors.d.mts +3 -0
  85. package/internal/errors.d.mts.map +1 -0
  86. package/internal/errors.d.ts +3 -0
  87. package/internal/errors.d.ts.map +1 -0
  88. package/internal/errors.js +41 -0
  89. package/internal/errors.js.map +1 -0
  90. package/internal/errors.mjs +36 -0
  91. package/internal/errors.mjs.map +1 -0
  92. package/internal/headers.d.mts +20 -0
  93. package/internal/headers.d.mts.map +1 -0
  94. package/internal/headers.d.ts +20 -0
  95. package/internal/headers.d.ts.map +1 -0
  96. package/internal/headers.js +79 -0
  97. package/internal/headers.js.map +1 -0
  98. package/internal/headers.mjs +74 -0
  99. package/internal/headers.mjs.map +1 -0
  100. package/internal/parse.d.mts +12 -0
  101. package/internal/parse.d.mts.map +1 -0
  102. package/internal/parse.d.ts +12 -0
  103. package/internal/parse.d.ts.map +1 -0
  104. package/internal/parse.js +40 -0
  105. package/internal/parse.js.map +1 -0
  106. package/internal/parse.mjs +37 -0
  107. package/internal/parse.mjs.map +1 -0
  108. package/internal/request-options.d.mts +75 -0
  109. package/internal/request-options.d.mts.map +1 -0
  110. package/internal/request-options.d.ts +75 -0
  111. package/internal/request-options.d.ts.map +1 -0
  112. package/internal/request-options.js +14 -0
  113. package/internal/request-options.js.map +1 -0
  114. package/internal/request-options.mjs +10 -0
  115. package/internal/request-options.mjs.map +1 -0
  116. package/internal/shim-types.d.mts +17 -0
  117. package/internal/shim-types.d.mts.map +1 -0
  118. package/internal/shim-types.d.ts +17 -0
  119. package/internal/shim-types.d.ts.map +1 -0
  120. package/internal/shim-types.js +4 -0
  121. package/internal/shim-types.js.map +1 -0
  122. package/internal/shim-types.mjs +3 -0
  123. package/internal/shim-types.mjs.map +1 -0
  124. package/internal/shims.d.mts +20 -0
  125. package/internal/shims.d.mts.map +1 -0
  126. package/internal/shims.d.ts +20 -0
  127. package/internal/shims.d.ts.map +1 -0
  128. package/internal/shims.js +92 -0
  129. package/internal/shims.js.map +1 -0
  130. package/internal/shims.mjs +85 -0
  131. package/internal/shims.mjs.map +1 -0
  132. package/internal/to-file.d.mts +45 -0
  133. package/internal/to-file.d.mts.map +1 -0
  134. package/internal/to-file.d.ts +45 -0
  135. package/internal/to-file.d.ts.map +1 -0
  136. package/internal/to-file.js +91 -0
  137. package/internal/to-file.js.map +1 -0
  138. package/internal/to-file.mjs +88 -0
  139. package/internal/to-file.mjs.map +1 -0
  140. package/internal/tslib.js +81 -0
  141. package/internal/tslib.mjs +17 -0
  142. package/internal/types.d.mts +69 -0
  143. package/internal/types.d.mts.map +1 -0
  144. package/internal/types.d.ts +69 -0
  145. package/internal/types.d.ts.map +1 -0
  146. package/internal/types.js +4 -0
  147. package/internal/types.js.map +1 -0
  148. package/internal/types.mjs +3 -0
  149. package/internal/types.mjs.map +1 -0
  150. package/internal/uploads.d.mts +42 -0
  151. package/internal/uploads.d.mts.map +1 -0
  152. package/internal/uploads.d.ts +42 -0
  153. package/internal/uploads.d.ts.map +1 -0
  154. package/internal/uploads.js +141 -0
  155. package/internal/uploads.js.map +1 -0
  156. package/internal/uploads.mjs +131 -0
  157. package/internal/uploads.mjs.map +1 -0
  158. package/internal/utils/base64.d.mts +3 -0
  159. package/internal/utils/base64.d.mts.map +1 -0
  160. package/internal/utils/base64.d.ts +3 -0
  161. package/internal/utils/base64.d.ts.map +1 -0
  162. package/internal/utils/base64.js +38 -0
  163. package/internal/utils/base64.js.map +1 -0
  164. package/internal/utils/base64.mjs +33 -0
  165. package/internal/utils/base64.mjs.map +1 -0
  166. package/internal/utils/bytes.d.mts +4 -0
  167. package/internal/utils/bytes.d.mts.map +1 -0
  168. package/internal/utils/bytes.d.ts +4 -0
  169. package/internal/utils/bytes.d.ts.map +1 -0
  170. package/internal/utils/bytes.js +31 -0
  171. package/internal/utils/bytes.js.map +1 -0
  172. package/internal/utils/bytes.mjs +26 -0
  173. package/internal/utils/bytes.mjs.map +1 -0
  174. package/internal/utils/env.d.mts +9 -0
  175. package/internal/utils/env.d.mts.map +1 -0
  176. package/internal/utils/env.d.ts +9 -0
  177. package/internal/utils/env.d.ts.map +1 -0
  178. package/internal/utils/env.js +22 -0
  179. package/internal/utils/env.js.map +1 -0
  180. package/internal/utils/env.mjs +18 -0
  181. package/internal/utils/env.mjs.map +1 -0
  182. package/internal/utils/log.d.mts +37 -0
  183. package/internal/utils/log.d.mts.map +1 -0
  184. package/internal/utils/log.d.ts +37 -0
  185. package/internal/utils/log.d.ts.map +1 -0
  186. package/internal/utils/log.js +85 -0
  187. package/internal/utils/log.js.map +1 -0
  188. package/internal/utils/log.mjs +79 -0
  189. package/internal/utils/log.mjs.map +1 -0
  190. package/internal/utils/path.d.mts +15 -0
  191. package/internal/utils/path.d.mts.map +1 -0
  192. package/internal/utils/path.d.ts +15 -0
  193. package/internal/utils/path.d.ts.map +1 -0
  194. package/internal/utils/path.js +79 -0
  195. package/internal/utils/path.js.map +1 -0
  196. package/internal/utils/path.mjs +74 -0
  197. package/internal/utils/path.mjs.map +1 -0
  198. package/internal/utils/sleep.d.mts +2 -0
  199. package/internal/utils/sleep.d.mts.map +1 -0
  200. package/internal/utils/sleep.d.ts +2 -0
  201. package/internal/utils/sleep.d.ts.map +1 -0
  202. package/internal/utils/sleep.js +7 -0
  203. package/internal/utils/sleep.js.map +1 -0
  204. package/internal/utils/sleep.mjs +3 -0
  205. package/internal/utils/sleep.mjs.map +1 -0
  206. package/internal/utils/uuid.d.mts +5 -0
  207. package/internal/utils/uuid.d.mts.map +1 -0
  208. package/internal/utils/uuid.d.ts +5 -0
  209. package/internal/utils/uuid.d.ts.map +1 -0
  210. package/internal/utils/uuid.js +19 -0
  211. package/internal/utils/uuid.js.map +1 -0
  212. package/internal/utils/uuid.mjs +15 -0
  213. package/internal/utils/uuid.mjs.map +1 -0
  214. package/internal/utils/values.d.mts +18 -0
  215. package/internal/utils/values.d.mts.map +1 -0
  216. package/internal/utils/values.d.ts +18 -0
  217. package/internal/utils/values.d.ts.map +1 -0
  218. package/internal/utils/values.js +112 -0
  219. package/internal/utils/values.js.map +1 -0
  220. package/internal/utils/values.mjs +94 -0
  221. package/internal/utils/values.mjs.map +1 -0
  222. package/internal/utils.d.mts +7 -0
  223. package/internal/utils.d.mts.map +1 -0
  224. package/internal/utils.d.ts +7 -0
  225. package/internal/utils.d.ts.map +1 -0
  226. package/internal/utils.js +11 -0
  227. package/internal/utils.js.map +1 -0
  228. package/internal/utils.mjs +8 -0
  229. package/internal/utils.mjs.map +1 -0
  230. package/package.json +101 -65
  231. package/resource.d.mts +2 -0
  232. package/resource.d.mts.map +1 -0
  233. package/resource.d.ts +1 -5
  234. package/resource.d.ts.map +1 -1
  235. package/resource.js +3 -8
  236. package/resource.js.map +1 -1
  237. package/resource.mjs +1 -6
  238. package/resource.mjs.map +1 -1
  239. package/resources/agent.d.mts +1803 -0
  240. package/resources/agent.d.mts.map +1 -0
  241. package/resources/agent.d.ts +374 -78
  242. package/resources/agent.d.ts.map +1 -1
  243. package/resources/agent.js +33 -20
  244. package/resources/agent.js.map +1 -1
  245. package/resources/agent.mjs +33 -20
  246. package/resources/agent.mjs.map +1 -1
  247. package/resources/batch-call.d.mts +926 -0
  248. package/resources/batch-call.d.mts.map +1 -0
  249. package/resources/batch-call.d.ts +219 -27
  250. package/resources/batch-call.d.ts.map +1 -1
  251. package/resources/batch-call.js +6 -2
  252. package/resources/batch-call.js.map +1 -1
  253. package/resources/batch-call.mjs +6 -2
  254. package/resources/batch-call.mjs.map +1 -1
  255. package/resources/call.d.mts +4280 -0
  256. package/resources/call.d.mts.map +1 -0
  257. package/resources/call.d.ts +553 -107
  258. package/resources/call.d.ts.map +1 -1
  259. package/resources/call.js +20 -10
  260. package/resources/call.js.map +1 -1
  261. package/resources/call.mjs +20 -10
  262. package/resources/call.mjs.map +1 -1
  263. package/resources/chat-agent.d.mts +836 -0
  264. package/resources/chat-agent.d.mts.map +1 -0
  265. package/resources/chat-agent.d.ts +118 -23
  266. package/resources/chat-agent.d.ts.map +1 -1
  267. package/resources/chat-agent.js +33 -20
  268. package/resources/chat-agent.js.map +1 -1
  269. package/resources/chat-agent.mjs +33 -20
  270. package/resources/chat-agent.mjs.map +1 -1
  271. package/resources/chat.d.mts +607 -0
  272. package/resources/chat.d.mts.map +1 -0
  273. package/resources/chat.d.ts +82 -30
  274. package/resources/chat.d.ts.map +1 -1
  275. package/resources/chat.js +21 -11
  276. package/resources/chat.js.map +1 -1
  277. package/resources/chat.mjs +21 -11
  278. package/resources/chat.mjs.map +1 -1
  279. package/resources/concurrency.d.mts +51 -0
  280. package/resources/concurrency.d.mts.map +1 -0
  281. package/resources/concurrency.d.ts +14 -3
  282. package/resources/concurrency.d.ts.map +1 -1
  283. package/resources/concurrency.js +1 -1
  284. package/resources/concurrency.js.map +1 -1
  285. package/resources/concurrency.mjs +1 -1
  286. package/resources/concurrency.mjs.map +1 -1
  287. package/resources/conversation-flow-component.d.mts +11838 -0
  288. package/resources/conversation-flow-component.d.mts.map +1 -0
  289. package/resources/conversation-flow-component.d.ts +6600 -2597
  290. package/resources/conversation-flow-component.d.ts.map +1 -1
  291. package/resources/conversation-flow-component.js +10 -8
  292. package/resources/conversation-flow-component.js.map +1 -1
  293. package/resources/conversation-flow-component.mjs +10 -8
  294. package/resources/conversation-flow-component.mjs.map +1 -1
  295. package/resources/conversation-flow.d.mts +23851 -0
  296. package/resources/conversation-flow.d.mts.map +1 -0
  297. package/resources/conversation-flow.d.ts +15877 -7958
  298. package/resources/conversation-flow.d.ts.map +1 -1
  299. package/resources/conversation-flow.js +30 -15
  300. package/resources/conversation-flow.js.map +1 -1
  301. package/resources/conversation-flow.mjs +30 -15
  302. package/resources/conversation-flow.mjs.map +1 -1
  303. package/resources/index.d.mts +15 -0
  304. package/resources/index.d.mts.map +1 -0
  305. package/resources/index.d.ts +4 -4
  306. package/resources/index.d.ts.map +1 -1
  307. package/resources/index.js.map +1 -1
  308. package/resources/index.mjs +2 -2
  309. package/resources/index.mjs.map +1 -1
  310. package/resources/knowledge-base.d.mts +228 -0
  311. package/resources/knowledge-base.d.mts.map +1 -0
  312. package/resources/knowledge-base.d.ts +23 -14
  313. package/resources/knowledge-base.d.ts.map +1 -1
  314. package/resources/knowledge-base.js +16 -36
  315. package/resources/knowledge-base.js.map +1 -1
  316. package/resources/knowledge-base.mjs +16 -13
  317. package/resources/knowledge-base.mjs.map +1 -1
  318. package/resources/llm.d.mts +5306 -0
  319. package/resources/llm.d.mts.map +1 -0
  320. package/resources/llm.d.ts +1189 -477
  321. package/resources/llm.d.ts.map +1 -1
  322. package/resources/llm.js +28 -15
  323. package/resources/llm.js.map +1 -1
  324. package/resources/llm.mjs +28 -15
  325. package/resources/llm.mjs.map +1 -1
  326. package/resources/mcp-tool.d.mts +45 -0
  327. package/resources/mcp-tool.d.mts.map +1 -0
  328. package/resources/mcp-tool.d.ts +8 -3
  329. package/resources/mcp-tool.d.ts.map +1 -1
  330. package/resources/mcp-tool.js +4 -3
  331. package/resources/mcp-tool.js.map +1 -1
  332. package/resources/mcp-tool.mjs +4 -3
  333. package/resources/mcp-tool.mjs.map +1 -1
  334. package/resources/phone-number.d.mts +595 -0
  335. package/resources/phone-number.d.mts.map +1 -0
  336. package/resources/phone-number.d.ts +332 -13
  337. package/resources/phone-number.d.ts.map +1 -1
  338. package/resources/phone-number.js +7 -5
  339. package/resources/phone-number.js.map +1 -1
  340. package/resources/phone-number.mjs +7 -5
  341. package/resources/phone-number.mjs.map +1 -1
  342. package/resources/tests.d.mts +561 -0
  343. package/resources/tests.d.mts.map +1 -0
  344. package/resources/tests.d.ts +437 -7
  345. package/resources/tests.d.ts.map +1 -1
  346. package/resources/tests.js +60 -1
  347. package/resources/tests.js.map +1 -1
  348. package/resources/tests.mjs +60 -1
  349. package/resources/tests.mjs.map +1 -1
  350. package/resources/voice.d.mts +130 -0
  351. package/resources/voice.d.mts.map +1 -0
  352. package/resources/voice.d.ts +89 -6
  353. package/resources/voice.d.ts.map +1 -1
  354. package/resources/voice.js +23 -3
  355. package/resources/voice.js.map +1 -1
  356. package/resources/voice.mjs +23 -3
  357. package/resources/voice.mjs.map +1 -1
  358. package/resources.d.mts +2 -0
  359. package/resources.d.mts.map +1 -0
  360. package/resources.d.ts.map +1 -1
  361. package/resources.js +2 -15
  362. package/resources.js.map +1 -1
  363. package/src/api-promise.ts +2 -0
  364. package/src/client.ts +1005 -0
  365. package/src/core/README.md +3 -0
  366. package/src/core/api-promise.ts +92 -0
  367. package/src/core/error.ts +130 -0
  368. package/src/core/resource.ts +11 -0
  369. package/src/core/uploads.ts +2 -0
  370. package/src/error.ts +2 -130
  371. package/src/index.ts +5 -405
  372. package/src/internal/README.md +3 -0
  373. package/src/internal/builtin-types.ts +93 -0
  374. package/src/internal/detect-platform.ts +196 -0
  375. package/src/internal/errors.ts +33 -0
  376. package/src/internal/headers.ts +97 -0
  377. package/src/internal/parse.ts +56 -0
  378. package/src/internal/request-options.ts +91 -0
  379. package/src/internal/shim-types.ts +26 -0
  380. package/src/internal/shims.ts +107 -0
  381. package/src/internal/to-file.ts +154 -0
  382. package/src/internal/types.ts +95 -0
  383. package/src/internal/uploads.ts +187 -0
  384. package/src/internal/utils/base64.ts +40 -0
  385. package/src/internal/utils/bytes.ts +32 -0
  386. package/src/internal/utils/env.ts +18 -0
  387. package/src/internal/utils/log.ts +126 -0
  388. package/src/internal/utils/path.ts +88 -0
  389. package/src/internal/utils/sleep.ts +3 -0
  390. package/src/internal/utils/uuid.ts +17 -0
  391. package/src/internal/utils/values.ts +105 -0
  392. package/src/internal/utils.ts +8 -0
  393. package/src/resource.ts +2 -11
  394. package/src/resources/agent.ts +529 -95
  395. package/src/resources/batch-call.ts +291 -24
  396. package/src/resources/call.ts +754 -105
  397. package/src/resources/chat-agent.ts +191 -41
  398. package/src/resources/chat.ts +108 -40
  399. package/src/resources/concurrency.ts +16 -3
  400. package/src/resources/conversation-flow-component.ts +9469 -4285
  401. package/src/resources/conversation-flow.ts +21572 -11318
  402. package/src/resources/index.ts +25 -2
  403. package/src/resources/knowledge-base.ts +40 -28
  404. package/src/resources/llm.ts +1422 -599
  405. package/src/resources/mcp-tool.ts +13 -6
  406. package/src/resources/phone-number.ts +410 -18
  407. package/src/resources/tests.ts +608 -9
  408. package/src/resources/voice.ts +122 -7
  409. package/src/tsconfig.json +2 -2
  410. package/src/uploads.ts +2 -259
  411. package/src/version.ts +1 -1
  412. package/uploads.d.mts +2 -0
  413. package/uploads.d.mts.map +1 -0
  414. package/uploads.d.ts +1 -74
  415. package/uploads.d.ts.map +1 -1
  416. package/uploads.js +3 -175
  417. package/uploads.js.map +1 -1
  418. package/uploads.mjs +1 -164
  419. package/uploads.mjs.map +1 -1
  420. package/version.d.mts +2 -0
  421. package/version.d.mts.map +1 -0
  422. package/version.d.ts +1 -1
  423. package/version.d.ts.map +1 -1
  424. package/version.js +1 -1
  425. package/version.js.map +1 -1
  426. package/version.mjs +1 -1
  427. package/version.mjs.map +1 -1
  428. package/_shims/MultipartBody.d.ts +0 -9
  429. package/_shims/MultipartBody.d.ts.map +0 -1
  430. package/_shims/MultipartBody.js +0 -16
  431. package/_shims/MultipartBody.js.map +0 -1
  432. package/_shims/MultipartBody.mjs +0 -12
  433. package/_shims/MultipartBody.mjs.map +0 -1
  434. package/_shims/README.md +0 -46
  435. package/_shims/auto/runtime-bun.d.ts +0 -5
  436. package/_shims/auto/runtime-bun.d.ts.map +0 -1
  437. package/_shims/auto/runtime-bun.js +0 -21
  438. package/_shims/auto/runtime-bun.js.map +0 -1
  439. package/_shims/auto/runtime-bun.mjs +0 -2
  440. package/_shims/auto/runtime-bun.mjs.map +0 -1
  441. package/_shims/auto/runtime-node.d.ts +0 -5
  442. package/_shims/auto/runtime-node.d.ts.map +0 -1
  443. package/_shims/auto/runtime-node.js +0 -21
  444. package/_shims/auto/runtime-node.js.map +0 -1
  445. package/_shims/auto/runtime-node.mjs +0 -2
  446. package/_shims/auto/runtime-node.mjs.map +0 -1
  447. package/_shims/auto/runtime.d.ts +0 -5
  448. package/_shims/auto/runtime.d.ts.map +0 -1
  449. package/_shims/auto/runtime.js +0 -21
  450. package/_shims/auto/runtime.js.map +0 -1
  451. package/_shims/auto/runtime.mjs +0 -2
  452. package/_shims/auto/runtime.mjs.map +0 -1
  453. package/_shims/auto/types-node.d.ts +0 -5
  454. package/_shims/auto/types-node.d.ts.map +0 -1
  455. package/_shims/auto/types-node.js +0 -21
  456. package/_shims/auto/types-node.js.map +0 -1
  457. package/_shims/auto/types-node.mjs +0 -2
  458. package/_shims/auto/types-node.mjs.map +0 -1
  459. package/_shims/auto/types.d.ts +0 -101
  460. package/_shims/auto/types.js +0 -3
  461. package/_shims/auto/types.mjs +0 -3
  462. package/_shims/bun-runtime.d.ts +0 -6
  463. package/_shims/bun-runtime.d.ts.map +0 -1
  464. package/_shims/bun-runtime.js +0 -14
  465. package/_shims/bun-runtime.js.map +0 -1
  466. package/_shims/bun-runtime.mjs +0 -10
  467. package/_shims/bun-runtime.mjs.map +0 -1
  468. package/_shims/index.d.ts +0 -83
  469. package/_shims/index.js +0 -17
  470. package/_shims/index.mjs +0 -11
  471. package/_shims/manual-types.d.ts +0 -12
  472. package/_shims/manual-types.js +0 -3
  473. package/_shims/manual-types.mjs +0 -3
  474. package/_shims/node-runtime.d.ts +0 -3
  475. package/_shims/node-runtime.d.ts.map +0 -1
  476. package/_shims/node-runtime.js +0 -89
  477. package/_shims/node-runtime.js.map +0 -1
  478. package/_shims/node-runtime.mjs +0 -56
  479. package/_shims/node-runtime.mjs.map +0 -1
  480. package/_shims/node-types.d.ts +0 -42
  481. package/_shims/node-types.js +0 -3
  482. package/_shims/node-types.mjs +0 -3
  483. package/_shims/registry.d.ts +0 -37
  484. package/_shims/registry.d.ts.map +0 -1
  485. package/_shims/registry.js +0 -41
  486. package/_shims/registry.js.map +0 -1
  487. package/_shims/registry.mjs +0 -37
  488. package/_shims/registry.mjs.map +0 -1
  489. package/_shims/web-runtime.d.ts +0 -5
  490. package/_shims/web-runtime.d.ts.map +0 -1
  491. package/_shims/web-runtime.js +0 -78
  492. package/_shims/web-runtime.js.map +0 -1
  493. package/_shims/web-runtime.mjs +0 -71
  494. package/_shims/web-runtime.mjs.map +0 -1
  495. package/_shims/web-types.d.ts +0 -83
  496. package/_shims/web-types.js +0 -3
  497. package/_shims/web-types.mjs +0 -3
  498. package/core.d.ts +0 -255
  499. package/core.d.ts.map +0 -1
  500. package/core.js +0 -924
  501. package/core.js.map +0 -1
  502. package/core.mjs +0 -892
  503. package/core.mjs.map +0 -1
  504. package/lib/webhook_auth.d.ts +0 -27
  505. package/lib/webhook_auth.d.ts.map +0 -1
  506. package/lib/webhook_auth.js +0 -50
  507. package/lib/webhook_auth.js.map +0 -1
  508. package/lib/webhook_auth.mjs +0 -45
  509. package/lib/webhook_auth.mjs.map +0 -1
  510. package/shims/node.d.ts +0 -30
  511. package/shims/node.d.ts.map +0 -1
  512. package/shims/node.js +0 -31
  513. package/shims/node.js.map +0 -1
  514. package/shims/node.mjs +0 -5
  515. package/shims/node.mjs.map +0 -1
  516. package/shims/web.d.ts +0 -26
  517. package/shims/web.d.ts.map +0 -1
  518. package/shims/web.js +0 -31
  519. package/shims/web.js.map +0 -1
  520. package/shims/web.mjs +0 -5
  521. package/shims/web.mjs.map +0 -1
  522. package/src/_shims/MultipartBody.ts +0 -9
  523. package/src/_shims/README.md +0 -46
  524. package/src/_shims/auto/runtime-bun.ts +0 -4
  525. package/src/_shims/auto/runtime-node.ts +0 -4
  526. package/src/_shims/auto/runtime.ts +0 -4
  527. package/src/_shims/auto/types-node.ts +0 -4
  528. package/src/_shims/auto/types.d.ts +0 -101
  529. package/src/_shims/auto/types.js +0 -3
  530. package/src/_shims/auto/types.mjs +0 -3
  531. package/src/_shims/bun-runtime.ts +0 -14
  532. package/src/_shims/index.d.ts +0 -83
  533. package/src/_shims/index.js +0 -17
  534. package/src/_shims/index.mjs +0 -11
  535. package/src/_shims/manual-types.d.ts +0 -12
  536. package/src/_shims/manual-types.js +0 -3
  537. package/src/_shims/manual-types.mjs +0 -3
  538. package/src/_shims/node-runtime.ts +0 -81
  539. package/src/_shims/node-types.d.ts +0 -42
  540. package/src/_shims/node-types.js +0 -3
  541. package/src/_shims/node-types.mjs +0 -3
  542. package/src/_shims/registry.ts +0 -67
  543. package/src/_shims/web-runtime.ts +0 -103
  544. package/src/_shims/web-types.d.ts +0 -83
  545. package/src/_shims/web-types.js +0 -3
  546. package/src/_shims/web-types.mjs +0 -3
  547. package/src/core.ts +0 -1236
  548. package/src/lib/webhook_auth.ts +0 -69
  549. package/src/shims/node.ts +0 -50
  550. package/src/shims/web.ts +0 -50
@@ -1,7 +1,10 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- import { APIResource } from '../resource';
4
- import * as Core from '../core';
3
+ import { APIResource } from '../core/resource';
4
+ import { APIPromise } from '../core/api-promise';
5
+ import { buildHeaders } from '../internal/headers';
6
+ import { RequestOptions } from '../internal/request-options';
7
+ import { path } from '../internal/utils/path';
5
8
 
6
9
  export class Call extends APIResource {
7
10
  /**
@@ -14,8 +17,8 @@ export class Call extends APIResource {
14
17
  * );
15
18
  * ```
16
19
  */
17
- retrieve(callId: string, options?: Core.RequestOptions): Core.APIPromise<CallResponse> {
18
- return this._client.get(`/v2/get-call/${callId}`, options);
20
+ retrieve(callID: string, options?: RequestOptions): APIPromise<CallResponse> {
21
+ return this._client.get(path`/v2/get-call/${callID}`, options);
19
22
  }
20
23
 
21
24
  /**
@@ -35,12 +38,8 @@ export class Call extends APIResource {
35
38
  * );
36
39
  * ```
37
40
  */
38
- update(
39
- callId: string,
40
- body: CallUpdateParams,
41
- options?: Core.RequestOptions,
42
- ): Core.APIPromise<CallResponse> {
43
- return this._client.patch(`/v2/update-call/${callId}`, { body, ...options });
41
+ update(callID: string, body: CallUpdateParams, options?: RequestOptions): APIPromise<CallResponse> {
42
+ return this._client.patch(path`/v2/update-call/${callID}`, { body, ...options });
44
43
  }
45
44
 
46
45
  /**
@@ -51,8 +50,12 @@ export class Call extends APIResource {
51
50
  * const callResponses = await client.call.list();
52
51
  * ```
53
52
  */
54
- list(body: CallListParams, options?: Core.RequestOptions): Core.APIPromise<CallListResponse> {
55
- return this._client.post('/v2/list-calls', { body, ...options });
53
+ list(body: CallListParams, options?: RequestOptions): APIPromise<CallListResponse> {
54
+ return this._client.post('/v2/list-calls', {
55
+ body,
56
+ timeout: (this._client as any)._options.timeout ?? 300000,
57
+ ...options,
58
+ });
56
59
  }
57
60
 
58
61
  /**
@@ -65,10 +68,10 @@ export class Call extends APIResource {
65
68
  * );
66
69
  * ```
67
70
  */
68
- delete(callId: string, options?: Core.RequestOptions): Core.APIPromise<void> {
69
- return this._client.delete(`/v2/delete-call/${callId}`, {
71
+ delete(callID: string, options?: RequestOptions): APIPromise<void> {
72
+ return this._client.delete(path`/v2/delete-call/${callID}`, {
70
73
  ...options,
71
- headers: { Accept: '*/*', ...options?.headers },
74
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
72
75
  });
73
76
  }
74
77
 
@@ -85,11 +88,12 @@ export class Call extends APIResource {
85
88
  * );
86
89
  * ```
87
90
  */
88
- createPhoneCall(
89
- body: CallCreatePhoneCallParams,
90
- options?: Core.RequestOptions,
91
- ): Core.APIPromise<PhoneCallResponse> {
92
- return this._client.post('/v2/create-phone-call', { body, ...options });
91
+ createPhoneCall(body: CallCreatePhoneCallParams, options?: RequestOptions): APIPromise<PhoneCallResponse> {
92
+ return this._client.post('/v2/create-phone-call', {
93
+ body,
94
+ timeout: (this._client as any)._options.timeout ?? 120000,
95
+ ...options,
96
+ });
93
97
  }
94
98
 
95
99
  /**
@@ -102,10 +106,7 @@ export class Call extends APIResource {
102
106
  * });
103
107
  * ```
104
108
  */
105
- createWebCall(
106
- body: CallCreateWebCallParams,
107
- options?: Core.RequestOptions,
108
- ): Core.APIPromise<WebCallResponse> {
109
+ createWebCall(body: CallCreateWebCallParams, options?: RequestOptions): APIPromise<WebCallResponse> {
109
110
  return this._client.post('/v2/create-web-call', { body, ...options });
110
111
  }
111
112
 
@@ -122,8 +123,8 @@ export class Call extends APIResource {
122
123
  */
123
124
  registerPhoneCall(
124
125
  body: CallRegisterPhoneCallParams,
125
- options?: Core.RequestOptions,
126
- ): Core.APIPromise<PhoneCallResponse> {
126
+ options?: RequestOptions,
127
+ ): APIPromise<PhoneCallResponse> {
127
128
  return this._client.post('/v2/register-phone-call', { body, ...options });
128
129
  }
129
130
  }
@@ -142,8 +143,8 @@ export interface PhoneCallResponse {
142
143
  agent_version: number;
143
144
 
144
145
  /**
145
- * Unique id of the call. Used to identify in LLM websocket and used to
146
- * authenticate in audio websocket.
146
+ * Unique id of the call. Used to identify the call in the LLM websocket and used
147
+ * to authenticate in the audio websocket.
147
148
  */
148
149
  call_id: string;
149
150
 
@@ -151,12 +152,9 @@ export interface PhoneCallResponse {
151
152
  * Status of call.
152
153
  *
153
154
  * - `registered`: Call id issued, starting to make a call using this id.
154
- *
155
155
  * - `ongoing`: Call connected and ongoing.
156
- *
157
156
  * - `ended`: The underlying websocket has ended for the call. Either user or agent
158
- * hanged up, or call transferred.
159
- *
157
+ * hung up, or call transferred.
160
158
  * - `error`: Call encountered error.
161
159
  */
162
160
  call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error';
@@ -340,6 +338,7 @@ export interface PhoneCallResponse {
340
338
  | PhoneCallResponse.Utterance
341
339
  | PhoneCallResponse.ToolCallInvocationUtterance
342
340
  | PhoneCallResponse.ToolCallResultUtterance
341
+ | PhoneCallResponse.NodeTransitionUtterance
343
342
  | PhoneCallResponse.DtmfUtterance
344
343
  >;
345
344
 
@@ -375,6 +374,7 @@ export interface PhoneCallResponse {
375
374
  | PhoneCallResponse.Utterance
376
375
  | PhoneCallResponse.ToolCallInvocationUtterance
377
376
  | PhoneCallResponse.ToolCallResultUtterance
377
+ | PhoneCallResponse.NodeTransitionUtterance
378
378
  | PhoneCallResponse.DtmfUtterance
379
379
  >;
380
380
 
@@ -383,9 +383,15 @@ export interface PhoneCallResponse {
383
383
  * populated when the disconnection reason was `call_transfer`. Can be a phone
384
384
  * number or a SIP URI. SIP URIs are prefixed with "sip:" and may include a
385
385
  * ";transport=..." portion (if transport is known) where the transport type can be
386
- * "tls", "tcp", "udp", or "auto".
386
+ * "tls", "tcp" or "udp".
387
387
  */
388
388
  transfer_destination?: string | null;
389
+
390
+ /**
391
+ * Transfer end timestamp (milliseconds since epoch) of the call. Available after
392
+ * transfer call ends.
393
+ */
394
+ transfer_end_timestamp?: number;
389
395
  }
390
396
 
391
397
  export namespace PhoneCallResponse {
@@ -460,6 +466,11 @@ export namespace PhoneCallResponse {
460
466
  */
461
467
  product: string;
462
468
 
469
+ /**
470
+ * True if this cost item is for a transfer segment.
471
+ */
472
+ is_transfer_leg_cost?: boolean;
473
+
463
474
  /**
464
475
  * Unit price of the product in cents per second.
465
476
  */
@@ -930,6 +941,12 @@ export namespace PhoneCallResponse {
930
941
  * Tool call id, globally unique.
931
942
  */
932
943
  tool_call_id: string;
944
+
945
+ /**
946
+ * Optional thought signature from Google Gemini thinking models. This is used
947
+ * internally to maintain reasoning chain in multi-turn function calling.
948
+ */
949
+ thought_signature?: string;
933
950
  }
934
951
 
935
952
  export interface ToolCallResultUtterance {
@@ -939,7 +956,7 @@ export namespace PhoneCallResponse {
939
956
  content: string;
940
957
 
941
958
  /**
942
- * This is result of a tool call.
959
+ * This is the result of a tool call.
943
960
  */
944
961
  role: 'tool_call_result';
945
962
 
@@ -949,6 +966,33 @@ export namespace PhoneCallResponse {
949
966
  tool_call_id: string;
950
967
  }
951
968
 
969
+ export interface NodeTransitionUtterance {
970
+ /**
971
+ * Former node id
972
+ */
973
+ former_node_id: string;
974
+
975
+ /**
976
+ * Former node name
977
+ */
978
+ former_node_name: string;
979
+
980
+ /**
981
+ * New node id
982
+ */
983
+ new_node_id: string;
984
+
985
+ /**
986
+ * New node name
987
+ */
988
+ new_node_name: string;
989
+
990
+ /**
991
+ * This is result of a node transition
992
+ */
993
+ role: 'node_transition';
994
+ }
995
+
952
996
  export interface DtmfUtterance {
953
997
  /**
954
998
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -957,7 +1001,7 @@ export namespace PhoneCallResponse {
957
1001
  digit: string;
958
1002
 
959
1003
  /**
960
- * This is user pressed digit from their phone keypad.
1004
+ * Digit pressed by the user from their phone keypad.
961
1005
  */
962
1006
  role: 'dtmf';
963
1007
  }
@@ -1073,6 +1117,12 @@ export namespace PhoneCallResponse {
1073
1117
  * Tool call id, globally unique.
1074
1118
  */
1075
1119
  tool_call_id: string;
1120
+
1121
+ /**
1122
+ * Optional thought signature from Google Gemini thinking models. This is used
1123
+ * internally to maintain reasoning chain in multi-turn function calling.
1124
+ */
1125
+ thought_signature?: string;
1076
1126
  }
1077
1127
 
1078
1128
  export interface ToolCallResultUtterance {
@@ -1082,7 +1132,7 @@ export namespace PhoneCallResponse {
1082
1132
  content: string;
1083
1133
 
1084
1134
  /**
1085
- * This is result of a tool call.
1135
+ * This is the result of a tool call.
1086
1136
  */
1087
1137
  role: 'tool_call_result';
1088
1138
 
@@ -1092,6 +1142,33 @@ export namespace PhoneCallResponse {
1092
1142
  tool_call_id: string;
1093
1143
  }
1094
1144
 
1145
+ export interface NodeTransitionUtterance {
1146
+ /**
1147
+ * Former node id
1148
+ */
1149
+ former_node_id: string;
1150
+
1151
+ /**
1152
+ * Former node name
1153
+ */
1154
+ former_node_name: string;
1155
+
1156
+ /**
1157
+ * New node id
1158
+ */
1159
+ new_node_id: string;
1160
+
1161
+ /**
1162
+ * New node name
1163
+ */
1164
+ new_node_name: string;
1165
+
1166
+ /**
1167
+ * This is result of a node transition
1168
+ */
1169
+ role: 'node_transition';
1170
+ }
1171
+
1095
1172
  export interface DtmfUtterance {
1096
1173
  /**
1097
1174
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -1100,7 +1177,7 @@ export namespace PhoneCallResponse {
1100
1177
  digit: string;
1101
1178
 
1102
1179
  /**
1103
- * This is user pressed digit from their phone keypad.
1180
+ * Digit pressed by the user from their phone keypad.
1104
1181
  */
1105
1182
  role: 'dtmf';
1106
1183
  }
@@ -1124,8 +1201,8 @@ export interface WebCallResponse {
1124
1201
  agent_version: number;
1125
1202
 
1126
1203
  /**
1127
- * Unique id of the call. Used to identify in LLM websocket and used to
1128
- * authenticate in audio websocket.
1204
+ * Unique id of the call. Used to identify the call in the LLM websocket and used
1205
+ * to authenticate in the audio websocket.
1129
1206
  */
1130
1207
  call_id: string;
1131
1208
 
@@ -1133,12 +1210,9 @@ export interface WebCallResponse {
1133
1210
  * Status of call.
1134
1211
  *
1135
1212
  * - `registered`: Call id issued, starting to make a call using this id.
1136
- *
1137
1213
  * - `ongoing`: Call connected and ongoing.
1138
- *
1139
1214
  * - `ended`: The underlying websocket has ended for the call. Either user or agent
1140
- * hanged up, or call transferred.
1141
- *
1215
+ * hung up, or call transferred.
1142
1216
  * - `error`: Call encountered error.
1143
1217
  */
1144
1218
  call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error';
@@ -1307,6 +1381,7 @@ export interface WebCallResponse {
1307
1381
  | WebCallResponse.Utterance
1308
1382
  | WebCallResponse.ToolCallInvocationUtterance
1309
1383
  | WebCallResponse.ToolCallResultUtterance
1384
+ | WebCallResponse.NodeTransitionUtterance
1310
1385
  | WebCallResponse.DtmfUtterance
1311
1386
  >;
1312
1387
 
@@ -1336,6 +1411,7 @@ export interface WebCallResponse {
1336
1411
  | WebCallResponse.Utterance
1337
1412
  | WebCallResponse.ToolCallInvocationUtterance
1338
1413
  | WebCallResponse.ToolCallResultUtterance
1414
+ | WebCallResponse.NodeTransitionUtterance
1339
1415
  | WebCallResponse.DtmfUtterance
1340
1416
  >;
1341
1417
 
@@ -1344,9 +1420,15 @@ export interface WebCallResponse {
1344
1420
  * populated when the disconnection reason was `call_transfer`. Can be a phone
1345
1421
  * number or a SIP URI. SIP URIs are prefixed with "sip:" and may include a
1346
1422
  * ";transport=..." portion (if transport is known) where the transport type can be
1347
- * "tls", "tcp", "udp", or "auto".
1423
+ * "tls", "tcp" or "udp".
1348
1424
  */
1349
1425
  transfer_destination?: string | null;
1426
+
1427
+ /**
1428
+ * Transfer end timestamp (milliseconds since epoch) of the call. Available after
1429
+ * transfer call ends.
1430
+ */
1431
+ transfer_end_timestamp?: number;
1350
1432
  }
1351
1433
 
1352
1434
  export namespace WebCallResponse {
@@ -1421,6 +1503,11 @@ export namespace WebCallResponse {
1421
1503
  */
1422
1504
  product: string;
1423
1505
 
1506
+ /**
1507
+ * True if this cost item is for a transfer segment.
1508
+ */
1509
+ is_transfer_leg_cost?: boolean;
1510
+
1424
1511
  /**
1425
1512
  * Unit price of the product in cents per second.
1426
1513
  */
@@ -1891,6 +1978,12 @@ export namespace WebCallResponse {
1891
1978
  * Tool call id, globally unique.
1892
1979
  */
1893
1980
  tool_call_id: string;
1981
+
1982
+ /**
1983
+ * Optional thought signature from Google Gemini thinking models. This is used
1984
+ * internally to maintain reasoning chain in multi-turn function calling.
1985
+ */
1986
+ thought_signature?: string;
1894
1987
  }
1895
1988
 
1896
1989
  export interface ToolCallResultUtterance {
@@ -1900,7 +1993,7 @@ export namespace WebCallResponse {
1900
1993
  content: string;
1901
1994
 
1902
1995
  /**
1903
- * This is result of a tool call.
1996
+ * This is the result of a tool call.
1904
1997
  */
1905
1998
  role: 'tool_call_result';
1906
1999
 
@@ -1910,6 +2003,33 @@ export namespace WebCallResponse {
1910
2003
  tool_call_id: string;
1911
2004
  }
1912
2005
 
2006
+ export interface NodeTransitionUtterance {
2007
+ /**
2008
+ * Former node id
2009
+ */
2010
+ former_node_id: string;
2011
+
2012
+ /**
2013
+ * Former node name
2014
+ */
2015
+ former_node_name: string;
2016
+
2017
+ /**
2018
+ * New node id
2019
+ */
2020
+ new_node_id: string;
2021
+
2022
+ /**
2023
+ * New node name
2024
+ */
2025
+ new_node_name: string;
2026
+
2027
+ /**
2028
+ * This is result of a node transition
2029
+ */
2030
+ role: 'node_transition';
2031
+ }
2032
+
1913
2033
  export interface DtmfUtterance {
1914
2034
  /**
1915
2035
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -1918,7 +2038,7 @@ export namespace WebCallResponse {
1918
2038
  digit: string;
1919
2039
 
1920
2040
  /**
1921
- * This is user pressed digit from their phone keypad.
2041
+ * Digit pressed by the user from their phone keypad.
1922
2042
  */
1923
2043
  role: 'dtmf';
1924
2044
  }
@@ -2023,6 +2143,12 @@ export namespace WebCallResponse {
2023
2143
  * Tool call id, globally unique.
2024
2144
  */
2025
2145
  tool_call_id: string;
2146
+
2147
+ /**
2148
+ * Optional thought signature from Google Gemini thinking models. This is used
2149
+ * internally to maintain reasoning chain in multi-turn function calling.
2150
+ */
2151
+ thought_signature?: string;
2026
2152
  }
2027
2153
 
2028
2154
  export interface ToolCallResultUtterance {
@@ -2032,7 +2158,7 @@ export namespace WebCallResponse {
2032
2158
  content: string;
2033
2159
 
2034
2160
  /**
2035
- * This is result of a tool call.
2161
+ * This is the result of a tool call.
2036
2162
  */
2037
2163
  role: 'tool_call_result';
2038
2164
 
@@ -2042,6 +2168,33 @@ export namespace WebCallResponse {
2042
2168
  tool_call_id: string;
2043
2169
  }
2044
2170
 
2171
+ export interface NodeTransitionUtterance {
2172
+ /**
2173
+ * Former node id
2174
+ */
2175
+ former_node_id: string;
2176
+
2177
+ /**
2178
+ * Former node name
2179
+ */
2180
+ former_node_name: string;
2181
+
2182
+ /**
2183
+ * New node id
2184
+ */
2185
+ new_node_id: string;
2186
+
2187
+ /**
2188
+ * New node name
2189
+ */
2190
+ new_node_name: string;
2191
+
2192
+ /**
2193
+ * This is result of a node transition
2194
+ */
2195
+ role: 'node_transition';
2196
+ }
2197
+
2045
2198
  export interface DtmfUtterance {
2046
2199
  /**
2047
2200
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -2050,7 +2203,7 @@ export namespace WebCallResponse {
2050
2203
  digit: string;
2051
2204
 
2052
2205
  /**
2053
- * This is user pressed digit from their phone keypad.
2206
+ * Digit pressed by the user from their phone keypad.
2054
2207
  */
2055
2208
  role: 'dtmf';
2056
2209
  }
@@ -2059,6 +2212,11 @@ export namespace WebCallResponse {
2059
2212
  export type CallListResponse = Array<CallResponse>;
2060
2213
 
2061
2214
  export interface CallUpdateParams {
2215
+ /**
2216
+ * Custom attributes for the call
2217
+ */
2218
+ custom_attributes?: { [key: string]: string | number | boolean };
2219
+
2062
2220
  /**
2063
2221
  * Data storage setting for this call. Overrides the agent's default setting.
2064
2222
  * "everything" stores all data, "everything_except_pii" excludes PII when
@@ -2185,8 +2343,19 @@ export namespace CallListParams {
2185
2343
  */
2186
2344
  duration_ms?: FilterCriteria.DurationMs;
2187
2345
 
2346
+ /**
2347
+ * Filter by dynamic variables using dot notation (e.g., `dynamic_variables.name`).
2348
+ * Values are matched exactly as strings.
2349
+ */
2350
+ dynamic_variables?: { [key: string]: Array<string> };
2351
+
2188
2352
  e2e_latency_p50?: FilterCriteria.E2ELatencyP50;
2189
2353
 
2354
+ /**
2355
+ * Only retrieve calls with specific range of end timestamp(s).
2356
+ */
2357
+ end_timestamp?: FilterCriteria.EndTimestamp;
2358
+
2190
2359
  /**
2191
2360
  * Only retrieve calls with specific from number(s).
2192
2361
  */
@@ -2197,6 +2366,12 @@ export namespace CallListParams {
2197
2366
  */
2198
2367
  in_voicemail?: Array<boolean>;
2199
2368
 
2369
+ /**
2370
+ * Filter by metadata fields using dot notation (e.g., `metadata.customer_id`).
2371
+ * Values are matched exactly as strings.
2372
+ */
2373
+ metadata?: { [key: string]: Array<string> };
2374
+
2200
2375
  /**
2201
2376
  * Only retrieve calls with specific range of start timestamp(s).
2202
2377
  */
@@ -2234,6 +2409,15 @@ export namespace CallListParams {
2234
2409
  upper_threshold?: number;
2235
2410
  }
2236
2411
 
2412
+ /**
2413
+ * Only retrieve calls with specific range of end timestamp(s).
2414
+ */
2415
+ export interface EndTimestamp {
2416
+ lower_threshold?: number;
2417
+
2418
+ upper_threshold?: number;
2419
+ }
2420
+
2237
2421
  /**
2238
2422
  * Only retrieve calls with specific range of start timestamp(s).
2239
2423
  */
@@ -2360,24 +2544,18 @@ export namespace CallCreatePhoneCallParams {
2360
2544
  *
2361
2545
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
2362
2546
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
2363
- *
2364
2547
  * - `convention-hall`: Convention hall ambience, with some echo and people
2365
2548
  * chatting in background.
2366
2549
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
2367
- *
2368
2550
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
2369
2551
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
2370
- *
2371
2552
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
2372
2553
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
2373
- *
2374
2554
  * - `static-noise`: Constant static noise.
2375
2555
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
2376
- *
2377
2556
  * - `call-center`: Call center work noise.
2378
2557
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/call-center.wav)
2379
- *
2380
- * Set to `null` to remove ambient sound from this agent.
2558
+ * Set to `null` to remove ambient sound from this agent.
2381
2559
  */
2382
2560
  ambient_sound?:
2383
2561
  | 'coffee-shop'
@@ -2441,6 +2619,11 @@ export namespace CallCreatePhoneCallParams {
2441
2619
  */
2442
2620
  boosted_keywords?: Array<string> | null;
2443
2621
 
2622
+ /**
2623
+ * Custom STT configuration. Only used when stt_mode is set to custom.
2624
+ */
2625
+ custom_stt_config?: Agent.CustomSttConfig;
2626
+
2444
2627
  /**
2445
2628
  * Granular setting to manage how Retell stores sensitive data (transcripts,
2446
2629
  * recordings, logs, etc.). This replaces the deprecated
@@ -2455,9 +2638,10 @@ export namespace CallCreatePhoneCallParams {
2455
2638
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
2456
2639
 
2457
2640
  /**
2458
- * If set, determines what denoising mode to use. Default to noise-cancellation.
2641
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
2642
+ * audio denoising. Default to noise-cancellation.
2459
2643
  */
2460
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
2644
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
2461
2645
 
2462
2646
  /**
2463
2647
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -2467,6 +2651,18 @@ export namespace CallCreatePhoneCallParams {
2467
2651
  */
2468
2652
  enable_backchannel?: boolean;
2469
2653
 
2654
+ /**
2655
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
2656
+ * speech rate and conversation context. If unset, default value false will apply.
2657
+ */
2658
+ enable_dynamic_voice_speed?: boolean;
2659
+
2660
+ /**
2661
+ * If set to true, will detect whether the call enters a voicemail. Note that this
2662
+ * feature is only available for phone calls.
2663
+ */
2664
+ enable_voicemail_detection?: boolean;
2665
+
2470
2666
  /**
2471
2667
  * If users stay silent for a period after agent speech, end the call. The minimum
2472
2668
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -2482,6 +2678,12 @@ export namespace CallCreatePhoneCallParams {
2482
2678
  */
2483
2679
  fallback_voice_ids?: Array<string> | null;
2484
2680
 
2681
+ /**
2682
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
2683
+ * agent output and user input.
2684
+ */
2685
+ guardrail_config?: Agent.GuardrailConfig;
2686
+
2485
2687
  /**
2486
2688
  * Controls how sensitive the agent is to user interruptions. Value ranging from
2487
2689
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -2491,6 +2693,19 @@ export namespace CallCreatePhoneCallParams {
2491
2693
  */
2492
2694
  interruption_sensitivity?: number;
2493
2695
 
2696
+ /**
2697
+ * Whether the agent is public. When set to true, the agent is available for public
2698
+ * agent preview link.
2699
+ */
2700
+ is_public?: boolean | null;
2701
+
2702
+ /**
2703
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
2704
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
2705
+ * null to disable IVR detection.
2706
+ */
2707
+ ivr_option?: Agent.IvrOption | null;
2708
+
2494
2709
  /**
2495
2710
  * Specifies what language (and dialect) the speech recognition will operate in.
2496
2711
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -2533,6 +2748,9 @@ export namespace CallCreatePhoneCallParams {
2533
2748
  | 'no-NO'
2534
2749
  | 'sk-SK'
2535
2750
  | 'sv-SE'
2751
+ | 'lt-LT'
2752
+ | 'lv-LV'
2753
+ | 'cs-CZ'
2536
2754
  | 'ms-MY'
2537
2755
  | 'af-ZA'
2538
2756
  | 'ar-SA'
@@ -2610,12 +2828,15 @@ export namespace CallCreatePhoneCallParams {
2610
2828
  | 'gpt-4.1-mini'
2611
2829
  | 'gpt-4.1-nano'
2612
2830
  | 'gpt-5'
2831
+ | 'gpt-5.1'
2832
+ | 'gpt-5.2'
2613
2833
  | 'gpt-5-mini'
2614
2834
  | 'gpt-5-nano'
2615
2835
  | 'claude-4.5-sonnet'
2616
2836
  | 'claude-4.5-haiku'
2617
2837
  | 'gemini-2.5-flash'
2618
2838
  | 'gemini-2.5-flash-lite'
2839
+ | 'gemini-3.0-flash'
2619
2840
  | null;
2620
2841
 
2621
2842
  /**
@@ -2673,12 +2894,18 @@ export namespace CallCreatePhoneCallParams {
2673
2894
 
2674
2895
  /**
2675
2896
  * If set, determines whether speech to text should focus on latency or accuracy.
2676
- * Default to fast mode.
2897
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
2677
2898
  */
2678
- stt_mode?: 'fast' | 'accurate';
2899
+ stt_mode?: 'fast' | 'accurate' | 'custom';
2679
2900
 
2680
2901
  user_dtmf_options?: Agent.UserDtmfOptions | null;
2681
2902
 
2903
+ /**
2904
+ * Optional description of the agent version. Used for your own reference and
2905
+ * documentation.
2906
+ */
2907
+ version_description?: string | null;
2908
+
2682
2909
  /**
2683
2910
  * If set, determines the vocabulary set to use for transcription. This setting
2684
2911
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -2686,6 +2913,12 @@ export namespace CallCreatePhoneCallParams {
2686
2913
  */
2687
2914
  vocab_specialization?: 'general' | 'medical';
2688
2915
 
2916
+ /**
2917
+ * Controls the emotional tone of the agent's voice. Currently supported for
2918
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
2919
+ */
2920
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
2921
+
2689
2922
  /**
2690
2923
  * Unique voice id used for the agent. Find list of available voices and their
2691
2924
  * preview in Dashboard.
@@ -2693,10 +2926,9 @@ export namespace CallCreatePhoneCallParams {
2693
2926
  voice_id?: string;
2694
2927
 
2695
2928
  /**
2696
- * Optionally set the voice model used for the selected voice. Currently only
2697
- * elevenlab voices have voice model selections. Set to null to remove voice model
2698
- * selection, and default ones will apply. Check out the dashboard for details on
2699
- * each voice model.
2929
+ * Select the voice model used for the selected voice. Each provider has a set of
2930
+ * available voice models. Set to null to remove voice model selection, and default
2931
+ * ones will apply. Check out dashboard for more details of each voice model.
2700
2932
  */
2701
2933
  voice_model?:
2702
2934
  | 'eleven_turbo_v2'
@@ -2704,8 +2936,14 @@ export namespace CallCreatePhoneCallParams {
2704
2936
  | 'eleven_turbo_v2_5'
2705
2937
  | 'eleven_flash_v2_5'
2706
2938
  | 'eleven_multilingual_v2'
2939
+ | 'sonic-2'
2940
+ | 'sonic-3'
2941
+ | 'sonic-3-latest'
2942
+ | 'sonic-turbo'
2707
2943
  | 'tts-1'
2708
2944
  | 'gpt-4o-mini-tts'
2945
+ | 'speech-02-turbo'
2946
+ | 'speech-2.8-turbo'
2709
2947
  | null;
2710
2948
 
2711
2949
  /**
@@ -2723,6 +2961,21 @@ export namespace CallCreatePhoneCallParams {
2723
2961
  */
2724
2962
  voice_temperature?: number;
2725
2963
 
2964
+ /**
2965
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
2966
+ * hit voicemail after a couple minutes, and keep running it will only have
2967
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
2968
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
2969
+ */
2970
+ voicemail_detection_timeout_ms?: number;
2971
+
2972
+ /**
2973
+ * The message to be played when the call enters a voicemail. Note that this
2974
+ * feature is only available for phone calls. If you want to hangup after hitting
2975
+ * voicemail, set this to empty string.
2976
+ */
2977
+ voicemail_message?: string;
2978
+
2726
2979
  /**
2727
2980
  * If this option is set, the call will try to detect voicemail in the first 3
2728
2981
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -2738,6 +2991,21 @@ export namespace CallCreatePhoneCallParams {
2738
2991
  */
2739
2992
  volume?: number;
2740
2993
 
2994
+ /**
2995
+ * Which webhook events this agent should receive. If not set, defaults to
2996
+ * call_started, call_ended, call_analyzed.
2997
+ */
2998
+ webhook_events?: Array<
2999
+ | 'call_started'
3000
+ | 'call_ended'
3001
+ | 'call_analyzed'
3002
+ | 'transcript_updated'
3003
+ | 'transfer_started'
3004
+ | 'transfer_bridged'
3005
+ | 'transfer_cancelled'
3006
+ | 'transfer_ended'
3007
+ > | null;
3008
+
2741
3009
  /**
2742
3010
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
2743
3011
  * will apply.
@@ -2754,6 +3022,65 @@ export namespace CallCreatePhoneCallParams {
2754
3022
  }
2755
3023
 
2756
3024
  export namespace Agent {
3025
+ /**
3026
+ * Custom STT configuration. Only used when stt_mode is set to custom.
3027
+ */
3028
+ export interface CustomSttConfig {
3029
+ /**
3030
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
3031
+ */
3032
+ endpointing_ms: number;
3033
+
3034
+ /**
3035
+ * The STT provider to use.
3036
+ */
3037
+ provider: 'azure' | 'deepgram';
3038
+ }
3039
+
3040
+ /**
3041
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
3042
+ * agent output and user input.
3043
+ */
3044
+ export interface GuardrailConfig {
3045
+ /**
3046
+ * Selected prohibited user topic categories to check. When user messages contain
3047
+ * these topics, the agent will respond with a placeholder message instead of
3048
+ * processing the request.
3049
+ */
3050
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
3051
+
3052
+ /**
3053
+ * Selected prohibited agent topic categories to check. When agent messages contain
3054
+ * these topics, they will be replaced with a placeholder message.
3055
+ */
3056
+ output_topics?: Array<
3057
+ | 'harassment'
3058
+ | 'self_harm'
3059
+ | 'sexual_exploitation'
3060
+ | 'violence'
3061
+ | 'defense_and_national_security'
3062
+ | 'illicit_and_harmful_activity'
3063
+ | 'gambling'
3064
+ | 'regulated_professional_advice'
3065
+ | 'child_safety_and_exploitation'
3066
+ > | null;
3067
+ }
3068
+
3069
+ /**
3070
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
3071
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
3072
+ * null to disable IVR detection.
3073
+ */
3074
+ export interface IvrOption {
3075
+ action: IvrOption.Action;
3076
+ }
3077
+
3078
+ export namespace IvrOption {
3079
+ export interface Action {
3080
+ type: 'hangup';
3081
+ }
3082
+ }
3083
+
2757
3084
  /**
2758
3085
  * Configuration for PII scrubbing from transcripts and recordings.
2759
3086
  */
@@ -2775,6 +3102,7 @@ export namespace CallCreatePhoneCallParams {
2775
3102
  | 'pin'
2776
3103
  | 'medical_id'
2777
3104
  | 'date_of_birth'
3105
+ | 'customer_account_number'
2778
3106
  >;
2779
3107
 
2780
3108
  /**
@@ -2934,7 +3262,7 @@ export namespace CallCreatePhoneCallParams {
2934
3262
 
2935
3263
  /**
2936
3264
  * A single key that signals the end of DTMF input. Acceptable values include any
2937
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
3265
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
2938
3266
  */
2939
3267
  termination_key?: string | null;
2940
3268
 
@@ -2955,7 +3283,8 @@ export namespace CallCreatePhoneCallParams {
2955
3283
  action:
2956
3284
  | VoicemailOption.VoicemailActionPrompt
2957
3285
  | VoicemailOption.VoicemailActionStaticText
2958
- | VoicemailOption.VoicemailActionHangup;
3286
+ | VoicemailOption.VoicemailActionHangup
3287
+ | VoicemailOption.VoicemailActionBridgeTransfer;
2959
3288
  }
2960
3289
 
2961
3290
  export namespace VoicemailOption {
@@ -2981,6 +3310,10 @@ export namespace CallCreatePhoneCallParams {
2981
3310
  export interface VoicemailActionHangup {
2982
3311
  type: 'hangup';
2983
3312
  }
3313
+
3314
+ export interface VoicemailActionBridgeTransfer {
3315
+ type: 'bridge_transfer';
3316
+ }
2984
3317
  }
2985
3318
  }
2986
3319
 
@@ -3060,12 +3393,15 @@ export namespace CallCreatePhoneCallParams {
3060
3393
  | 'gpt-4.1-mini'
3061
3394
  | 'gpt-4.1-nano'
3062
3395
  | 'gpt-5'
3396
+ | 'gpt-5.1'
3397
+ | 'gpt-5.2'
3063
3398
  | 'gpt-5-mini'
3064
3399
  | 'gpt-5-nano'
3065
3400
  | 'claude-4.5-sonnet'
3066
3401
  | 'claude-4.5-haiku'
3067
3402
  | 'gemini-2.5-flash'
3068
- | 'gemini-2.5-flash-lite';
3403
+ | 'gemini-2.5-flash-lite'
3404
+ | 'gemini-3.0-flash';
3069
3405
 
3070
3406
  /**
3071
3407
  * Type of model choice
@@ -3119,12 +3455,15 @@ export namespace CallCreatePhoneCallParams {
3119
3455
  | 'gpt-4.1-mini'
3120
3456
  | 'gpt-4.1-nano'
3121
3457
  | 'gpt-5'
3458
+ | 'gpt-5.1'
3459
+ | 'gpt-5.2'
3122
3460
  | 'gpt-5-mini'
3123
3461
  | 'gpt-5-nano'
3124
3462
  | 'claude-4.5-sonnet'
3125
3463
  | 'claude-4.5-haiku'
3126
3464
  | 'gemini-2.5-flash'
3127
3465
  | 'gemini-2.5-flash-lite'
3466
+ | 'gemini-3.0-flash'
3128
3467
  | null;
3129
3468
 
3130
3469
  /**
@@ -3146,7 +3485,7 @@ export namespace CallCreatePhoneCallParams {
3146
3485
  * Select the underlying speech to speech model. Can only set this or model, not
3147
3486
  * both.
3148
3487
  */
3149
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
3488
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
3150
3489
 
3151
3490
  /**
3152
3491
  * The speaker who starts the conversation. Required. Must be either 'user' or
@@ -3268,24 +3607,18 @@ export namespace CallCreateWebCallParams {
3268
3607
  *
3269
3608
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
3270
3609
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
3271
- *
3272
3610
  * - `convention-hall`: Convention hall ambience, with some echo and people
3273
3611
  * chatting in background.
3274
3612
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
3275
- *
3276
3613
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
3277
3614
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
3278
- *
3279
3615
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
3280
3616
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
3281
- *
3282
3617
  * - `static-noise`: Constant static noise.
3283
3618
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
3284
- *
3285
3619
  * - `call-center`: Call center work noise.
3286
3620
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/call-center.wav)
3287
- *
3288
- * Set to `null` to remove ambient sound from this agent.
3621
+ * Set to `null` to remove ambient sound from this agent.
3289
3622
  */
3290
3623
  ambient_sound?:
3291
3624
  | 'coffee-shop'
@@ -3349,6 +3682,11 @@ export namespace CallCreateWebCallParams {
3349
3682
  */
3350
3683
  boosted_keywords?: Array<string> | null;
3351
3684
 
3685
+ /**
3686
+ * Custom STT configuration. Only used when stt_mode is set to custom.
3687
+ */
3688
+ custom_stt_config?: Agent.CustomSttConfig;
3689
+
3352
3690
  /**
3353
3691
  * Granular setting to manage how Retell stores sensitive data (transcripts,
3354
3692
  * recordings, logs, etc.). This replaces the deprecated
@@ -3363,9 +3701,10 @@ export namespace CallCreateWebCallParams {
3363
3701
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
3364
3702
 
3365
3703
  /**
3366
- * If set, determines what denoising mode to use. Default to noise-cancellation.
3704
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
3705
+ * audio denoising. Default to noise-cancellation.
3367
3706
  */
3368
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
3707
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
3369
3708
 
3370
3709
  /**
3371
3710
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -3375,6 +3714,18 @@ export namespace CallCreateWebCallParams {
3375
3714
  */
3376
3715
  enable_backchannel?: boolean;
3377
3716
 
3717
+ /**
3718
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
3719
+ * speech rate and conversation context. If unset, default value false will apply.
3720
+ */
3721
+ enable_dynamic_voice_speed?: boolean;
3722
+
3723
+ /**
3724
+ * If set to true, will detect whether the call enters a voicemail. Note that this
3725
+ * feature is only available for phone calls.
3726
+ */
3727
+ enable_voicemail_detection?: boolean;
3728
+
3378
3729
  /**
3379
3730
  * If users stay silent for a period after agent speech, end the call. The minimum
3380
3731
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -3390,6 +3741,12 @@ export namespace CallCreateWebCallParams {
3390
3741
  */
3391
3742
  fallback_voice_ids?: Array<string> | null;
3392
3743
 
3744
+ /**
3745
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
3746
+ * agent output and user input.
3747
+ */
3748
+ guardrail_config?: Agent.GuardrailConfig;
3749
+
3393
3750
  /**
3394
3751
  * Controls how sensitive the agent is to user interruptions. Value ranging from
3395
3752
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -3399,6 +3756,19 @@ export namespace CallCreateWebCallParams {
3399
3756
  */
3400
3757
  interruption_sensitivity?: number;
3401
3758
 
3759
+ /**
3760
+ * Whether the agent is public. When set to true, the agent is available for public
3761
+ * agent preview link.
3762
+ */
3763
+ is_public?: boolean | null;
3764
+
3765
+ /**
3766
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
3767
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
3768
+ * null to disable IVR detection.
3769
+ */
3770
+ ivr_option?: Agent.IvrOption | null;
3771
+
3402
3772
  /**
3403
3773
  * Specifies what language (and dialect) the speech recognition will operate in.
3404
3774
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -3441,6 +3811,9 @@ export namespace CallCreateWebCallParams {
3441
3811
  | 'no-NO'
3442
3812
  | 'sk-SK'
3443
3813
  | 'sv-SE'
3814
+ | 'lt-LT'
3815
+ | 'lv-LV'
3816
+ | 'cs-CZ'
3444
3817
  | 'ms-MY'
3445
3818
  | 'af-ZA'
3446
3819
  | 'ar-SA'
@@ -3518,12 +3891,15 @@ export namespace CallCreateWebCallParams {
3518
3891
  | 'gpt-4.1-mini'
3519
3892
  | 'gpt-4.1-nano'
3520
3893
  | 'gpt-5'
3894
+ | 'gpt-5.1'
3895
+ | 'gpt-5.2'
3521
3896
  | 'gpt-5-mini'
3522
3897
  | 'gpt-5-nano'
3523
3898
  | 'claude-4.5-sonnet'
3524
3899
  | 'claude-4.5-haiku'
3525
3900
  | 'gemini-2.5-flash'
3526
3901
  | 'gemini-2.5-flash-lite'
3902
+ | 'gemini-3.0-flash'
3527
3903
  | null;
3528
3904
 
3529
3905
  /**
@@ -3581,12 +3957,18 @@ export namespace CallCreateWebCallParams {
3581
3957
 
3582
3958
  /**
3583
3959
  * If set, determines whether speech to text should focus on latency or accuracy.
3584
- * Default to fast mode.
3960
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
3585
3961
  */
3586
- stt_mode?: 'fast' | 'accurate';
3962
+ stt_mode?: 'fast' | 'accurate' | 'custom';
3587
3963
 
3588
3964
  user_dtmf_options?: Agent.UserDtmfOptions | null;
3589
3965
 
3966
+ /**
3967
+ * Optional description of the agent version. Used for your own reference and
3968
+ * documentation.
3969
+ */
3970
+ version_description?: string | null;
3971
+
3590
3972
  /**
3591
3973
  * If set, determines the vocabulary set to use for transcription. This setting
3592
3974
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -3594,6 +3976,12 @@ export namespace CallCreateWebCallParams {
3594
3976
  */
3595
3977
  vocab_specialization?: 'general' | 'medical';
3596
3978
 
3979
+ /**
3980
+ * Controls the emotional tone of the agent's voice. Currently supported for
3981
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
3982
+ */
3983
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
3984
+
3597
3985
  /**
3598
3986
  * Unique voice id used for the agent. Find list of available voices and their
3599
3987
  * preview in Dashboard.
@@ -3601,10 +3989,9 @@ export namespace CallCreateWebCallParams {
3601
3989
  voice_id?: string;
3602
3990
 
3603
3991
  /**
3604
- * Optionally set the voice model used for the selected voice. Currently only
3605
- * elevenlab voices have voice model selections. Set to null to remove voice model
3606
- * selection, and default ones will apply. Check out the dashboard for details on
3607
- * each voice model.
3992
+ * Select the voice model used for the selected voice. Each provider has a set of
3993
+ * available voice models. Set to null to remove voice model selection, and default
3994
+ * ones will apply. Check out dashboard for more details of each voice model.
3608
3995
  */
3609
3996
  voice_model?:
3610
3997
  | 'eleven_turbo_v2'
@@ -3612,8 +3999,14 @@ export namespace CallCreateWebCallParams {
3612
3999
  | 'eleven_turbo_v2_5'
3613
4000
  | 'eleven_flash_v2_5'
3614
4001
  | 'eleven_multilingual_v2'
4002
+ | 'sonic-2'
4003
+ | 'sonic-3'
4004
+ | 'sonic-3-latest'
4005
+ | 'sonic-turbo'
3615
4006
  | 'tts-1'
3616
4007
  | 'gpt-4o-mini-tts'
4008
+ | 'speech-02-turbo'
4009
+ | 'speech-2.8-turbo'
3617
4010
  | null;
3618
4011
 
3619
4012
  /**
@@ -3631,6 +4024,21 @@ export namespace CallCreateWebCallParams {
3631
4024
  */
3632
4025
  voice_temperature?: number;
3633
4026
 
4027
+ /**
4028
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
4029
+ * hit voicemail after a couple minutes, and keep running it will only have
4030
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
4031
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
4032
+ */
4033
+ voicemail_detection_timeout_ms?: number;
4034
+
4035
+ /**
4036
+ * The message to be played when the call enters a voicemail. Note that this
4037
+ * feature is only available for phone calls. If you want to hangup after hitting
4038
+ * voicemail, set this to empty string.
4039
+ */
4040
+ voicemail_message?: string;
4041
+
3634
4042
  /**
3635
4043
  * If this option is set, the call will try to detect voicemail in the first 3
3636
4044
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -3646,6 +4054,21 @@ export namespace CallCreateWebCallParams {
3646
4054
  */
3647
4055
  volume?: number;
3648
4056
 
4057
+ /**
4058
+ * Which webhook events this agent should receive. If not set, defaults to
4059
+ * call_started, call_ended, call_analyzed.
4060
+ */
4061
+ webhook_events?: Array<
4062
+ | 'call_started'
4063
+ | 'call_ended'
4064
+ | 'call_analyzed'
4065
+ | 'transcript_updated'
4066
+ | 'transfer_started'
4067
+ | 'transfer_bridged'
4068
+ | 'transfer_cancelled'
4069
+ | 'transfer_ended'
4070
+ > | null;
4071
+
3649
4072
  /**
3650
4073
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
3651
4074
  * will apply.
@@ -3662,6 +4085,65 @@ export namespace CallCreateWebCallParams {
3662
4085
  }
3663
4086
 
3664
4087
  export namespace Agent {
4088
+ /**
4089
+ * Custom STT configuration. Only used when stt_mode is set to custom.
4090
+ */
4091
+ export interface CustomSttConfig {
4092
+ /**
4093
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
4094
+ */
4095
+ endpointing_ms: number;
4096
+
4097
+ /**
4098
+ * The STT provider to use.
4099
+ */
4100
+ provider: 'azure' | 'deepgram';
4101
+ }
4102
+
4103
+ /**
4104
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
4105
+ * agent output and user input.
4106
+ */
4107
+ export interface GuardrailConfig {
4108
+ /**
4109
+ * Selected prohibited user topic categories to check. When user messages contain
4110
+ * these topics, the agent will respond with a placeholder message instead of
4111
+ * processing the request.
4112
+ */
4113
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
4114
+
4115
+ /**
4116
+ * Selected prohibited agent topic categories to check. When agent messages contain
4117
+ * these topics, they will be replaced with a placeholder message.
4118
+ */
4119
+ output_topics?: Array<
4120
+ | 'harassment'
4121
+ | 'self_harm'
4122
+ | 'sexual_exploitation'
4123
+ | 'violence'
4124
+ | 'defense_and_national_security'
4125
+ | 'illicit_and_harmful_activity'
4126
+ | 'gambling'
4127
+ | 'regulated_professional_advice'
4128
+ | 'child_safety_and_exploitation'
4129
+ > | null;
4130
+ }
4131
+
4132
+ /**
4133
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
4134
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
4135
+ * null to disable IVR detection.
4136
+ */
4137
+ export interface IvrOption {
4138
+ action: IvrOption.Action;
4139
+ }
4140
+
4141
+ export namespace IvrOption {
4142
+ export interface Action {
4143
+ type: 'hangup';
4144
+ }
4145
+ }
4146
+
3665
4147
  /**
3666
4148
  * Configuration for PII scrubbing from transcripts and recordings.
3667
4149
  */
@@ -3683,6 +4165,7 @@ export namespace CallCreateWebCallParams {
3683
4165
  | 'pin'
3684
4166
  | 'medical_id'
3685
4167
  | 'date_of_birth'
4168
+ | 'customer_account_number'
3686
4169
  >;
3687
4170
 
3688
4171
  /**
@@ -3842,7 +4325,7 @@ export namespace CallCreateWebCallParams {
3842
4325
 
3843
4326
  /**
3844
4327
  * A single key that signals the end of DTMF input. Acceptable values include any
3845
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
4328
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
3846
4329
  */
3847
4330
  termination_key?: string | null;
3848
4331
 
@@ -3863,7 +4346,8 @@ export namespace CallCreateWebCallParams {
3863
4346
  action:
3864
4347
  | VoicemailOption.VoicemailActionPrompt
3865
4348
  | VoicemailOption.VoicemailActionStaticText
3866
- | VoicemailOption.VoicemailActionHangup;
4349
+ | VoicemailOption.VoicemailActionHangup
4350
+ | VoicemailOption.VoicemailActionBridgeTransfer;
3867
4351
  }
3868
4352
 
3869
4353
  export namespace VoicemailOption {
@@ -3889,6 +4373,10 @@ export namespace CallCreateWebCallParams {
3889
4373
  export interface VoicemailActionHangup {
3890
4374
  type: 'hangup';
3891
4375
  }
4376
+
4377
+ export interface VoicemailActionBridgeTransfer {
4378
+ type: 'bridge_transfer';
4379
+ }
3892
4380
  }
3893
4381
  }
3894
4382
 
@@ -3968,12 +4456,15 @@ export namespace CallCreateWebCallParams {
3968
4456
  | 'gpt-4.1-mini'
3969
4457
  | 'gpt-4.1-nano'
3970
4458
  | 'gpt-5'
4459
+ | 'gpt-5.1'
4460
+ | 'gpt-5.2'
3971
4461
  | 'gpt-5-mini'
3972
4462
  | 'gpt-5-nano'
3973
4463
  | 'claude-4.5-sonnet'
3974
4464
  | 'claude-4.5-haiku'
3975
4465
  | 'gemini-2.5-flash'
3976
- | 'gemini-2.5-flash-lite';
4466
+ | 'gemini-2.5-flash-lite'
4467
+ | 'gemini-3.0-flash';
3977
4468
 
3978
4469
  /**
3979
4470
  * Type of model choice
@@ -4027,12 +4518,15 @@ export namespace CallCreateWebCallParams {
4027
4518
  | 'gpt-4.1-mini'
4028
4519
  | 'gpt-4.1-nano'
4029
4520
  | 'gpt-5'
4521
+ | 'gpt-5.1'
4522
+ | 'gpt-5.2'
4030
4523
  | 'gpt-5-mini'
4031
4524
  | 'gpt-5-nano'
4032
4525
  | 'claude-4.5-sonnet'
4033
4526
  | 'claude-4.5-haiku'
4034
4527
  | 'gemini-2.5-flash'
4035
4528
  | 'gemini-2.5-flash-lite'
4529
+ | 'gemini-3.0-flash'
4036
4530
  | null;
4037
4531
 
4038
4532
  /**
@@ -4054,7 +4548,7 @@ export namespace CallCreateWebCallParams {
4054
4548
  * Select the underlying speech to speech model. Can only set this or model, not
4055
4549
  * both.
4056
4550
  */
4057
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
4551
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
4058
4552
 
4059
4553
  /**
4060
4554
  * The speaker who starts the conversation. Required. Must be either 'user' or
@@ -4190,24 +4684,18 @@ export namespace CallRegisterPhoneCallParams {
4190
4684
  *
4191
4685
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
4192
4686
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
4193
- *
4194
4687
  * - `convention-hall`: Convention hall ambience, with some echo and people
4195
4688
  * chatting in background.
4196
4689
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
4197
- *
4198
4690
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
4199
4691
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
4200
- *
4201
4692
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
4202
4693
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
4203
- *
4204
4694
  * - `static-noise`: Constant static noise.
4205
4695
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
4206
- *
4207
4696
  * - `call-center`: Call center work noise.
4208
4697
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/call-center.wav)
4209
- *
4210
- * Set to `null` to remove ambient sound from this agent.
4698
+ * Set to `null` to remove ambient sound from this agent.
4211
4699
  */
4212
4700
  ambient_sound?:
4213
4701
  | 'coffee-shop'
@@ -4271,6 +4759,11 @@ export namespace CallRegisterPhoneCallParams {
4271
4759
  */
4272
4760
  boosted_keywords?: Array<string> | null;
4273
4761
 
4762
+ /**
4763
+ * Custom STT configuration. Only used when stt_mode is set to custom.
4764
+ */
4765
+ custom_stt_config?: Agent.CustomSttConfig;
4766
+
4274
4767
  /**
4275
4768
  * Granular setting to manage how Retell stores sensitive data (transcripts,
4276
4769
  * recordings, logs, etc.). This replaces the deprecated
@@ -4285,9 +4778,10 @@ export namespace CallRegisterPhoneCallParams {
4285
4778
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
4286
4779
 
4287
4780
  /**
4288
- * If set, determines what denoising mode to use. Default to noise-cancellation.
4781
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
4782
+ * audio denoising. Default to noise-cancellation.
4289
4783
  */
4290
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
4784
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
4291
4785
 
4292
4786
  /**
4293
4787
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -4297,6 +4791,18 @@ export namespace CallRegisterPhoneCallParams {
4297
4791
  */
4298
4792
  enable_backchannel?: boolean;
4299
4793
 
4794
+ /**
4795
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
4796
+ * speech rate and conversation context. If unset, default value false will apply.
4797
+ */
4798
+ enable_dynamic_voice_speed?: boolean;
4799
+
4800
+ /**
4801
+ * If set to true, will detect whether the call enters a voicemail. Note that this
4802
+ * feature is only available for phone calls.
4803
+ */
4804
+ enable_voicemail_detection?: boolean;
4805
+
4300
4806
  /**
4301
4807
  * If users stay silent for a period after agent speech, end the call. The minimum
4302
4808
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -4312,6 +4818,12 @@ export namespace CallRegisterPhoneCallParams {
4312
4818
  */
4313
4819
  fallback_voice_ids?: Array<string> | null;
4314
4820
 
4821
+ /**
4822
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
4823
+ * agent output and user input.
4824
+ */
4825
+ guardrail_config?: Agent.GuardrailConfig;
4826
+
4315
4827
  /**
4316
4828
  * Controls how sensitive the agent is to user interruptions. Value ranging from
4317
4829
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -4321,6 +4833,19 @@ export namespace CallRegisterPhoneCallParams {
4321
4833
  */
4322
4834
  interruption_sensitivity?: number;
4323
4835
 
4836
+ /**
4837
+ * Whether the agent is public. When set to true, the agent is available for public
4838
+ * agent preview link.
4839
+ */
4840
+ is_public?: boolean | null;
4841
+
4842
+ /**
4843
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
4844
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
4845
+ * null to disable IVR detection.
4846
+ */
4847
+ ivr_option?: Agent.IvrOption | null;
4848
+
4324
4849
  /**
4325
4850
  * Specifies what language (and dialect) the speech recognition will operate in.
4326
4851
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -4363,6 +4888,9 @@ export namespace CallRegisterPhoneCallParams {
4363
4888
  | 'no-NO'
4364
4889
  | 'sk-SK'
4365
4890
  | 'sv-SE'
4891
+ | 'lt-LT'
4892
+ | 'lv-LV'
4893
+ | 'cs-CZ'
4366
4894
  | 'ms-MY'
4367
4895
  | 'af-ZA'
4368
4896
  | 'ar-SA'
@@ -4440,12 +4968,15 @@ export namespace CallRegisterPhoneCallParams {
4440
4968
  | 'gpt-4.1-mini'
4441
4969
  | 'gpt-4.1-nano'
4442
4970
  | 'gpt-5'
4971
+ | 'gpt-5.1'
4972
+ | 'gpt-5.2'
4443
4973
  | 'gpt-5-mini'
4444
4974
  | 'gpt-5-nano'
4445
4975
  | 'claude-4.5-sonnet'
4446
4976
  | 'claude-4.5-haiku'
4447
4977
  | 'gemini-2.5-flash'
4448
4978
  | 'gemini-2.5-flash-lite'
4979
+ | 'gemini-3.0-flash'
4449
4980
  | null;
4450
4981
 
4451
4982
  /**
@@ -4503,12 +5034,18 @@ export namespace CallRegisterPhoneCallParams {
4503
5034
 
4504
5035
  /**
4505
5036
  * If set, determines whether speech to text should focus on latency or accuracy.
4506
- * Default to fast mode.
5037
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
4507
5038
  */
4508
- stt_mode?: 'fast' | 'accurate';
5039
+ stt_mode?: 'fast' | 'accurate' | 'custom';
4509
5040
 
4510
5041
  user_dtmf_options?: Agent.UserDtmfOptions | null;
4511
5042
 
5043
+ /**
5044
+ * Optional description of the agent version. Used for your own reference and
5045
+ * documentation.
5046
+ */
5047
+ version_description?: string | null;
5048
+
4512
5049
  /**
4513
5050
  * If set, determines the vocabulary set to use for transcription. This setting
4514
5051
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -4516,6 +5053,12 @@ export namespace CallRegisterPhoneCallParams {
4516
5053
  */
4517
5054
  vocab_specialization?: 'general' | 'medical';
4518
5055
 
5056
+ /**
5057
+ * Controls the emotional tone of the agent's voice. Currently supported for
5058
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
5059
+ */
5060
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
5061
+
4519
5062
  /**
4520
5063
  * Unique voice id used for the agent. Find list of available voices and their
4521
5064
  * preview in Dashboard.
@@ -4523,10 +5066,9 @@ export namespace CallRegisterPhoneCallParams {
4523
5066
  voice_id?: string;
4524
5067
 
4525
5068
  /**
4526
- * Optionally set the voice model used for the selected voice. Currently only
4527
- * elevenlab voices have voice model selections. Set to null to remove voice model
4528
- * selection, and default ones will apply. Check out the dashboard for details on
4529
- * each voice model.
5069
+ * Select the voice model used for the selected voice. Each provider has a set of
5070
+ * available voice models. Set to null to remove voice model selection, and default
5071
+ * ones will apply. Check out dashboard for more details of each voice model.
4530
5072
  */
4531
5073
  voice_model?:
4532
5074
  | 'eleven_turbo_v2'
@@ -4534,8 +5076,14 @@ export namespace CallRegisterPhoneCallParams {
4534
5076
  | 'eleven_turbo_v2_5'
4535
5077
  | 'eleven_flash_v2_5'
4536
5078
  | 'eleven_multilingual_v2'
5079
+ | 'sonic-2'
5080
+ | 'sonic-3'
5081
+ | 'sonic-3-latest'
5082
+ | 'sonic-turbo'
4537
5083
  | 'tts-1'
4538
5084
  | 'gpt-4o-mini-tts'
5085
+ | 'speech-02-turbo'
5086
+ | 'speech-2.8-turbo'
4539
5087
  | null;
4540
5088
 
4541
5089
  /**
@@ -4553,6 +5101,21 @@ export namespace CallRegisterPhoneCallParams {
4553
5101
  */
4554
5102
  voice_temperature?: number;
4555
5103
 
5104
+ /**
5105
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
5106
+ * hit voicemail after a couple minutes, and keep running it will only have
5107
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
5108
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
5109
+ */
5110
+ voicemail_detection_timeout_ms?: number;
5111
+
5112
+ /**
5113
+ * The message to be played when the call enters a voicemail. Note that this
5114
+ * feature is only available for phone calls. If you want to hangup after hitting
5115
+ * voicemail, set this to empty string.
5116
+ */
5117
+ voicemail_message?: string;
5118
+
4556
5119
  /**
4557
5120
  * If this option is set, the call will try to detect voicemail in the first 3
4558
5121
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -4568,6 +5131,21 @@ export namespace CallRegisterPhoneCallParams {
4568
5131
  */
4569
5132
  volume?: number;
4570
5133
 
5134
+ /**
5135
+ * Which webhook events this agent should receive. If not set, defaults to
5136
+ * call_started, call_ended, call_analyzed.
5137
+ */
5138
+ webhook_events?: Array<
5139
+ | 'call_started'
5140
+ | 'call_ended'
5141
+ | 'call_analyzed'
5142
+ | 'transcript_updated'
5143
+ | 'transfer_started'
5144
+ | 'transfer_bridged'
5145
+ | 'transfer_cancelled'
5146
+ | 'transfer_ended'
5147
+ > | null;
5148
+
4571
5149
  /**
4572
5150
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
4573
5151
  * will apply.
@@ -4584,6 +5162,65 @@ export namespace CallRegisterPhoneCallParams {
4584
5162
  }
4585
5163
 
4586
5164
  export namespace Agent {
5165
+ /**
5166
+ * Custom STT configuration. Only used when stt_mode is set to custom.
5167
+ */
5168
+ export interface CustomSttConfig {
5169
+ /**
5170
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
5171
+ */
5172
+ endpointing_ms: number;
5173
+
5174
+ /**
5175
+ * The STT provider to use.
5176
+ */
5177
+ provider: 'azure' | 'deepgram';
5178
+ }
5179
+
5180
+ /**
5181
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
5182
+ * agent output and user input.
5183
+ */
5184
+ export interface GuardrailConfig {
5185
+ /**
5186
+ * Selected prohibited user topic categories to check. When user messages contain
5187
+ * these topics, the agent will respond with a placeholder message instead of
5188
+ * processing the request.
5189
+ */
5190
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
5191
+
5192
+ /**
5193
+ * Selected prohibited agent topic categories to check. When agent messages contain
5194
+ * these topics, they will be replaced with a placeholder message.
5195
+ */
5196
+ output_topics?: Array<
5197
+ | 'harassment'
5198
+ | 'self_harm'
5199
+ | 'sexual_exploitation'
5200
+ | 'violence'
5201
+ | 'defense_and_national_security'
5202
+ | 'illicit_and_harmful_activity'
5203
+ | 'gambling'
5204
+ | 'regulated_professional_advice'
5205
+ | 'child_safety_and_exploitation'
5206
+ > | null;
5207
+ }
5208
+
5209
+ /**
5210
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
5211
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
5212
+ * null to disable IVR detection.
5213
+ */
5214
+ export interface IvrOption {
5215
+ action: IvrOption.Action;
5216
+ }
5217
+
5218
+ export namespace IvrOption {
5219
+ export interface Action {
5220
+ type: 'hangup';
5221
+ }
5222
+ }
5223
+
4587
5224
  /**
4588
5225
  * Configuration for PII scrubbing from transcripts and recordings.
4589
5226
  */
@@ -4605,6 +5242,7 @@ export namespace CallRegisterPhoneCallParams {
4605
5242
  | 'pin'
4606
5243
  | 'medical_id'
4607
5244
  | 'date_of_birth'
5245
+ | 'customer_account_number'
4608
5246
  >;
4609
5247
 
4610
5248
  /**
@@ -4764,7 +5402,7 @@ export namespace CallRegisterPhoneCallParams {
4764
5402
 
4765
5403
  /**
4766
5404
  * A single key that signals the end of DTMF input. Acceptable values include any
4767
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
5405
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
4768
5406
  */
4769
5407
  termination_key?: string | null;
4770
5408
 
@@ -4785,7 +5423,8 @@ export namespace CallRegisterPhoneCallParams {
4785
5423
  action:
4786
5424
  | VoicemailOption.VoicemailActionPrompt
4787
5425
  | VoicemailOption.VoicemailActionStaticText
4788
- | VoicemailOption.VoicemailActionHangup;
5426
+ | VoicemailOption.VoicemailActionHangup
5427
+ | VoicemailOption.VoicemailActionBridgeTransfer;
4789
5428
  }
4790
5429
 
4791
5430
  export namespace VoicemailOption {
@@ -4811,6 +5450,10 @@ export namespace CallRegisterPhoneCallParams {
4811
5450
  export interface VoicemailActionHangup {
4812
5451
  type: 'hangup';
4813
5452
  }
5453
+
5454
+ export interface VoicemailActionBridgeTransfer {
5455
+ type: 'bridge_transfer';
5456
+ }
4814
5457
  }
4815
5458
  }
4816
5459
 
@@ -4890,12 +5533,15 @@ export namespace CallRegisterPhoneCallParams {
4890
5533
  | 'gpt-4.1-mini'
4891
5534
  | 'gpt-4.1-nano'
4892
5535
  | 'gpt-5'
5536
+ | 'gpt-5.1'
5537
+ | 'gpt-5.2'
4893
5538
  | 'gpt-5-mini'
4894
5539
  | 'gpt-5-nano'
4895
5540
  | 'claude-4.5-sonnet'
4896
5541
  | 'claude-4.5-haiku'
4897
5542
  | 'gemini-2.5-flash'
4898
- | 'gemini-2.5-flash-lite';
5543
+ | 'gemini-2.5-flash-lite'
5544
+ | 'gemini-3.0-flash';
4899
5545
 
4900
5546
  /**
4901
5547
  * Type of model choice
@@ -4949,12 +5595,15 @@ export namespace CallRegisterPhoneCallParams {
4949
5595
  | 'gpt-4.1-mini'
4950
5596
  | 'gpt-4.1-nano'
4951
5597
  | 'gpt-5'
5598
+ | 'gpt-5.1'
5599
+ | 'gpt-5.2'
4952
5600
  | 'gpt-5-mini'
4953
5601
  | 'gpt-5-nano'
4954
5602
  | 'claude-4.5-sonnet'
4955
5603
  | 'claude-4.5-haiku'
4956
5604
  | 'gemini-2.5-flash'
4957
5605
  | 'gemini-2.5-flash-lite'
5606
+ | 'gemini-3.0-flash'
4958
5607
  | null;
4959
5608
 
4960
5609
  /**
@@ -4976,7 +5625,7 @@ export namespace CallRegisterPhoneCallParams {
4976
5625
  * Select the underlying speech to speech model. Can only set this or model, not
4977
5626
  * both.
4978
5627
  */
4979
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
5628
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
4980
5629
 
4981
5630
  /**
4982
5631
  * The speaker who starts the conversation. Required. Must be either 'user' or