retell-sdk 4.66.0 → 5.1.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 +7 -1341
  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 +556 -110
  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 +757 -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';
@@ -225,6 +223,7 @@ export interface PhoneCallResponse {
225
223
  | 'agent_hangup'
226
224
  | 'call_transfer'
227
225
  | 'voicemail_reached'
226
+ | 'ivr_reached'
228
227
  | 'inactivity'
229
228
  | 'max_duration_reached'
230
229
  | 'concurrency_limit_reached'
@@ -340,6 +339,7 @@ export interface PhoneCallResponse {
340
339
  | PhoneCallResponse.Utterance
341
340
  | PhoneCallResponse.ToolCallInvocationUtterance
342
341
  | PhoneCallResponse.ToolCallResultUtterance
342
+ | PhoneCallResponse.NodeTransitionUtterance
343
343
  | PhoneCallResponse.DtmfUtterance
344
344
  >;
345
345
 
@@ -375,6 +375,7 @@ export interface PhoneCallResponse {
375
375
  | PhoneCallResponse.Utterance
376
376
  | PhoneCallResponse.ToolCallInvocationUtterance
377
377
  | PhoneCallResponse.ToolCallResultUtterance
378
+ | PhoneCallResponse.NodeTransitionUtterance
378
379
  | PhoneCallResponse.DtmfUtterance
379
380
  >;
380
381
 
@@ -383,9 +384,15 @@ export interface PhoneCallResponse {
383
384
  * populated when the disconnection reason was `call_transfer`. Can be a phone
384
385
  * number or a SIP URI. SIP URIs are prefixed with "sip:" and may include a
385
386
  * ";transport=..." portion (if transport is known) where the transport type can be
386
- * "tls", "tcp", "udp", or "auto".
387
+ * "tls", "tcp" or "udp".
387
388
  */
388
389
  transfer_destination?: string | null;
390
+
391
+ /**
392
+ * Transfer end timestamp (milliseconds since epoch) of the call. Available after
393
+ * transfer call ends.
394
+ */
395
+ transfer_end_timestamp?: number;
389
396
  }
390
397
 
391
398
  export namespace PhoneCallResponse {
@@ -460,6 +467,11 @@ export namespace PhoneCallResponse {
460
467
  */
461
468
  product: string;
462
469
 
470
+ /**
471
+ * True if this cost item is for a transfer segment.
472
+ */
473
+ is_transfer_leg_cost?: boolean;
474
+
463
475
  /**
464
476
  * Unit price of the product in cents per second.
465
477
  */
@@ -930,6 +942,12 @@ export namespace PhoneCallResponse {
930
942
  * Tool call id, globally unique.
931
943
  */
932
944
  tool_call_id: string;
945
+
946
+ /**
947
+ * Optional thought signature from Google Gemini thinking models. This is used
948
+ * internally to maintain reasoning chain in multi-turn function calling.
949
+ */
950
+ thought_signature?: string;
933
951
  }
934
952
 
935
953
  export interface ToolCallResultUtterance {
@@ -939,7 +957,7 @@ export namespace PhoneCallResponse {
939
957
  content: string;
940
958
 
941
959
  /**
942
- * This is result of a tool call.
960
+ * This is the result of a tool call.
943
961
  */
944
962
  role: 'tool_call_result';
945
963
 
@@ -949,6 +967,33 @@ export namespace PhoneCallResponse {
949
967
  tool_call_id: string;
950
968
  }
951
969
 
970
+ export interface NodeTransitionUtterance {
971
+ /**
972
+ * Former node id
973
+ */
974
+ former_node_id: string;
975
+
976
+ /**
977
+ * Former node name
978
+ */
979
+ former_node_name: string;
980
+
981
+ /**
982
+ * New node id
983
+ */
984
+ new_node_id: string;
985
+
986
+ /**
987
+ * New node name
988
+ */
989
+ new_node_name: string;
990
+
991
+ /**
992
+ * This is result of a node transition
993
+ */
994
+ role: 'node_transition';
995
+ }
996
+
952
997
  export interface DtmfUtterance {
953
998
  /**
954
999
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -957,7 +1002,7 @@ export namespace PhoneCallResponse {
957
1002
  digit: string;
958
1003
 
959
1004
  /**
960
- * This is user pressed digit from their phone keypad.
1005
+ * Digit pressed by the user from their phone keypad.
961
1006
  */
962
1007
  role: 'dtmf';
963
1008
  }
@@ -1073,6 +1118,12 @@ export namespace PhoneCallResponse {
1073
1118
  * Tool call id, globally unique.
1074
1119
  */
1075
1120
  tool_call_id: string;
1121
+
1122
+ /**
1123
+ * Optional thought signature from Google Gemini thinking models. This is used
1124
+ * internally to maintain reasoning chain in multi-turn function calling.
1125
+ */
1126
+ thought_signature?: string;
1076
1127
  }
1077
1128
 
1078
1129
  export interface ToolCallResultUtterance {
@@ -1082,7 +1133,7 @@ export namespace PhoneCallResponse {
1082
1133
  content: string;
1083
1134
 
1084
1135
  /**
1085
- * This is result of a tool call.
1136
+ * This is the result of a tool call.
1086
1137
  */
1087
1138
  role: 'tool_call_result';
1088
1139
 
@@ -1092,6 +1143,33 @@ export namespace PhoneCallResponse {
1092
1143
  tool_call_id: string;
1093
1144
  }
1094
1145
 
1146
+ export interface NodeTransitionUtterance {
1147
+ /**
1148
+ * Former node id
1149
+ */
1150
+ former_node_id: string;
1151
+
1152
+ /**
1153
+ * Former node name
1154
+ */
1155
+ former_node_name: string;
1156
+
1157
+ /**
1158
+ * New node id
1159
+ */
1160
+ new_node_id: string;
1161
+
1162
+ /**
1163
+ * New node name
1164
+ */
1165
+ new_node_name: string;
1166
+
1167
+ /**
1168
+ * This is result of a node transition
1169
+ */
1170
+ role: 'node_transition';
1171
+ }
1172
+
1095
1173
  export interface DtmfUtterance {
1096
1174
  /**
1097
1175
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -1100,7 +1178,7 @@ export namespace PhoneCallResponse {
1100
1178
  digit: string;
1101
1179
 
1102
1180
  /**
1103
- * This is user pressed digit from their phone keypad.
1181
+ * Digit pressed by the user from their phone keypad.
1104
1182
  */
1105
1183
  role: 'dtmf';
1106
1184
  }
@@ -1124,8 +1202,8 @@ export interface WebCallResponse {
1124
1202
  agent_version: number;
1125
1203
 
1126
1204
  /**
1127
- * Unique id of the call. Used to identify in LLM websocket and used to
1128
- * authenticate in audio websocket.
1205
+ * Unique id of the call. Used to identify the call in the LLM websocket and used
1206
+ * to authenticate in the audio websocket.
1129
1207
  */
1130
1208
  call_id: string;
1131
1209
 
@@ -1133,12 +1211,9 @@ export interface WebCallResponse {
1133
1211
  * Status of call.
1134
1212
  *
1135
1213
  * - `registered`: Call id issued, starting to make a call using this id.
1136
- *
1137
1214
  * - `ongoing`: Call connected and ongoing.
1138
- *
1139
1215
  * - `ended`: The underlying websocket has ended for the call. Either user or agent
1140
- * hanged up, or call transferred.
1141
- *
1216
+ * hung up, or call transferred.
1142
1217
  * - `error`: Call encountered error.
1143
1218
  */
1144
1219
  call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error';
@@ -1192,6 +1267,7 @@ export interface WebCallResponse {
1192
1267
  | 'agent_hangup'
1193
1268
  | 'call_transfer'
1194
1269
  | 'voicemail_reached'
1270
+ | 'ivr_reached'
1195
1271
  | 'inactivity'
1196
1272
  | 'max_duration_reached'
1197
1273
  | 'concurrency_limit_reached'
@@ -1307,6 +1383,7 @@ export interface WebCallResponse {
1307
1383
  | WebCallResponse.Utterance
1308
1384
  | WebCallResponse.ToolCallInvocationUtterance
1309
1385
  | WebCallResponse.ToolCallResultUtterance
1386
+ | WebCallResponse.NodeTransitionUtterance
1310
1387
  | WebCallResponse.DtmfUtterance
1311
1388
  >;
1312
1389
 
@@ -1336,6 +1413,7 @@ export interface WebCallResponse {
1336
1413
  | WebCallResponse.Utterance
1337
1414
  | WebCallResponse.ToolCallInvocationUtterance
1338
1415
  | WebCallResponse.ToolCallResultUtterance
1416
+ | WebCallResponse.NodeTransitionUtterance
1339
1417
  | WebCallResponse.DtmfUtterance
1340
1418
  >;
1341
1419
 
@@ -1344,9 +1422,15 @@ export interface WebCallResponse {
1344
1422
  * populated when the disconnection reason was `call_transfer`. Can be a phone
1345
1423
  * number or a SIP URI. SIP URIs are prefixed with "sip:" and may include a
1346
1424
  * ";transport=..." portion (if transport is known) where the transport type can be
1347
- * "tls", "tcp", "udp", or "auto".
1425
+ * "tls", "tcp" or "udp".
1348
1426
  */
1349
1427
  transfer_destination?: string | null;
1428
+
1429
+ /**
1430
+ * Transfer end timestamp (milliseconds since epoch) of the call. Available after
1431
+ * transfer call ends.
1432
+ */
1433
+ transfer_end_timestamp?: number;
1350
1434
  }
1351
1435
 
1352
1436
  export namespace WebCallResponse {
@@ -1421,6 +1505,11 @@ export namespace WebCallResponse {
1421
1505
  */
1422
1506
  product: string;
1423
1507
 
1508
+ /**
1509
+ * True if this cost item is for a transfer segment.
1510
+ */
1511
+ is_transfer_leg_cost?: boolean;
1512
+
1424
1513
  /**
1425
1514
  * Unit price of the product in cents per second.
1426
1515
  */
@@ -1891,6 +1980,12 @@ export namespace WebCallResponse {
1891
1980
  * Tool call id, globally unique.
1892
1981
  */
1893
1982
  tool_call_id: string;
1983
+
1984
+ /**
1985
+ * Optional thought signature from Google Gemini thinking models. This is used
1986
+ * internally to maintain reasoning chain in multi-turn function calling.
1987
+ */
1988
+ thought_signature?: string;
1894
1989
  }
1895
1990
 
1896
1991
  export interface ToolCallResultUtterance {
@@ -1900,7 +1995,7 @@ export namespace WebCallResponse {
1900
1995
  content: string;
1901
1996
 
1902
1997
  /**
1903
- * This is result of a tool call.
1998
+ * This is the result of a tool call.
1904
1999
  */
1905
2000
  role: 'tool_call_result';
1906
2001
 
@@ -1910,6 +2005,33 @@ export namespace WebCallResponse {
1910
2005
  tool_call_id: string;
1911
2006
  }
1912
2007
 
2008
+ export interface NodeTransitionUtterance {
2009
+ /**
2010
+ * Former node id
2011
+ */
2012
+ former_node_id: string;
2013
+
2014
+ /**
2015
+ * Former node name
2016
+ */
2017
+ former_node_name: string;
2018
+
2019
+ /**
2020
+ * New node id
2021
+ */
2022
+ new_node_id: string;
2023
+
2024
+ /**
2025
+ * New node name
2026
+ */
2027
+ new_node_name: string;
2028
+
2029
+ /**
2030
+ * This is result of a node transition
2031
+ */
2032
+ role: 'node_transition';
2033
+ }
2034
+
1913
2035
  export interface DtmfUtterance {
1914
2036
  /**
1915
2037
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -1918,7 +2040,7 @@ export namespace WebCallResponse {
1918
2040
  digit: string;
1919
2041
 
1920
2042
  /**
1921
- * This is user pressed digit from their phone keypad.
2043
+ * Digit pressed by the user from their phone keypad.
1922
2044
  */
1923
2045
  role: 'dtmf';
1924
2046
  }
@@ -2023,6 +2145,12 @@ export namespace WebCallResponse {
2023
2145
  * Tool call id, globally unique.
2024
2146
  */
2025
2147
  tool_call_id: string;
2148
+
2149
+ /**
2150
+ * Optional thought signature from Google Gemini thinking models. This is used
2151
+ * internally to maintain reasoning chain in multi-turn function calling.
2152
+ */
2153
+ thought_signature?: string;
2026
2154
  }
2027
2155
 
2028
2156
  export interface ToolCallResultUtterance {
@@ -2032,7 +2160,7 @@ export namespace WebCallResponse {
2032
2160
  content: string;
2033
2161
 
2034
2162
  /**
2035
- * This is result of a tool call.
2163
+ * This is the result of a tool call.
2036
2164
  */
2037
2165
  role: 'tool_call_result';
2038
2166
 
@@ -2042,6 +2170,33 @@ export namespace WebCallResponse {
2042
2170
  tool_call_id: string;
2043
2171
  }
2044
2172
 
2173
+ export interface NodeTransitionUtterance {
2174
+ /**
2175
+ * Former node id
2176
+ */
2177
+ former_node_id: string;
2178
+
2179
+ /**
2180
+ * Former node name
2181
+ */
2182
+ former_node_name: string;
2183
+
2184
+ /**
2185
+ * New node id
2186
+ */
2187
+ new_node_id: string;
2188
+
2189
+ /**
2190
+ * New node name
2191
+ */
2192
+ new_node_name: string;
2193
+
2194
+ /**
2195
+ * This is result of a node transition
2196
+ */
2197
+ role: 'node_transition';
2198
+ }
2199
+
2045
2200
  export interface DtmfUtterance {
2046
2201
  /**
2047
2202
  * The digit pressed by the user. Will be a single digit string like "1", "2", "3",
@@ -2050,7 +2205,7 @@ export namespace WebCallResponse {
2050
2205
  digit: string;
2051
2206
 
2052
2207
  /**
2053
- * This is user pressed digit from their phone keypad.
2208
+ * Digit pressed by the user from their phone keypad.
2054
2209
  */
2055
2210
  role: 'dtmf';
2056
2211
  }
@@ -2059,6 +2214,11 @@ export namespace WebCallResponse {
2059
2214
  export type CallListResponse = Array<CallResponse>;
2060
2215
 
2061
2216
  export interface CallUpdateParams {
2217
+ /**
2218
+ * Custom attributes for the call
2219
+ */
2220
+ custom_attributes?: { [key: string]: string | number | boolean };
2221
+
2062
2222
  /**
2063
2223
  * Data storage setting for this call. Overrides the agent's default setting.
2064
2224
  * "everything" stores all data, "everything_except_pii" excludes PII when
@@ -2154,6 +2314,7 @@ export namespace CallListParams {
2154
2314
  | 'agent_hangup'
2155
2315
  | 'call_transfer'
2156
2316
  | 'voicemail_reached'
2317
+ | 'ivr_reached'
2157
2318
  | 'inactivity'
2158
2319
  | 'max_duration_reached'
2159
2320
  | 'concurrency_limit_reached'
@@ -2185,8 +2346,19 @@ export namespace CallListParams {
2185
2346
  */
2186
2347
  duration_ms?: FilterCriteria.DurationMs;
2187
2348
 
2349
+ /**
2350
+ * Filter by dynamic variables using dot notation (e.g., `dynamic_variables.name`).
2351
+ * Values are matched exactly as strings.
2352
+ */
2353
+ dynamic_variables?: { [key: string]: Array<string> };
2354
+
2188
2355
  e2e_latency_p50?: FilterCriteria.E2ELatencyP50;
2189
2356
 
2357
+ /**
2358
+ * Only retrieve calls with specific range of end timestamp(s).
2359
+ */
2360
+ end_timestamp?: FilterCriteria.EndTimestamp;
2361
+
2190
2362
  /**
2191
2363
  * Only retrieve calls with specific from number(s).
2192
2364
  */
@@ -2197,6 +2369,12 @@ export namespace CallListParams {
2197
2369
  */
2198
2370
  in_voicemail?: Array<boolean>;
2199
2371
 
2372
+ /**
2373
+ * Filter by metadata fields using dot notation (e.g., `metadata.customer_id`).
2374
+ * Values are matched exactly as strings.
2375
+ */
2376
+ metadata?: { [key: string]: Array<string> };
2377
+
2200
2378
  /**
2201
2379
  * Only retrieve calls with specific range of start timestamp(s).
2202
2380
  */
@@ -2234,6 +2412,15 @@ export namespace CallListParams {
2234
2412
  upper_threshold?: number;
2235
2413
  }
2236
2414
 
2415
+ /**
2416
+ * Only retrieve calls with specific range of end timestamp(s).
2417
+ */
2418
+ export interface EndTimestamp {
2419
+ lower_threshold?: number;
2420
+
2421
+ upper_threshold?: number;
2422
+ }
2423
+
2237
2424
  /**
2238
2425
  * Only retrieve calls with specific range of start timestamp(s).
2239
2426
  */
@@ -2360,24 +2547,18 @@ export namespace CallCreatePhoneCallParams {
2360
2547
  *
2361
2548
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
2362
2549
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
2363
- *
2364
2550
  * - `convention-hall`: Convention hall ambience, with some echo and people
2365
2551
  * chatting in background.
2366
2552
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
2367
- *
2368
2553
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
2369
2554
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
2370
- *
2371
2555
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
2372
2556
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
2373
- *
2374
2557
  * - `static-noise`: Constant static noise.
2375
2558
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
2376
- *
2377
2559
  * - `call-center`: Call center work noise.
2378
2560
  * [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.
2561
+ * Set to `null` to remove ambient sound from this agent.
2381
2562
  */
2382
2563
  ambient_sound?:
2383
2564
  | 'coffee-shop'
@@ -2441,6 +2622,11 @@ export namespace CallCreatePhoneCallParams {
2441
2622
  */
2442
2623
  boosted_keywords?: Array<string> | null;
2443
2624
 
2625
+ /**
2626
+ * Custom STT configuration. Only used when stt_mode is set to custom.
2627
+ */
2628
+ custom_stt_config?: Agent.CustomSttConfig;
2629
+
2444
2630
  /**
2445
2631
  * Granular setting to manage how Retell stores sensitive data (transcripts,
2446
2632
  * recordings, logs, etc.). This replaces the deprecated
@@ -2455,9 +2641,10 @@ export namespace CallCreatePhoneCallParams {
2455
2641
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
2456
2642
 
2457
2643
  /**
2458
- * If set, determines what denoising mode to use. Default to noise-cancellation.
2644
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
2645
+ * audio denoising. Default to noise-cancellation.
2459
2646
  */
2460
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
2647
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
2461
2648
 
2462
2649
  /**
2463
2650
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -2467,6 +2654,18 @@ export namespace CallCreatePhoneCallParams {
2467
2654
  */
2468
2655
  enable_backchannel?: boolean;
2469
2656
 
2657
+ /**
2658
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
2659
+ * speech rate and conversation context. If unset, default value false will apply.
2660
+ */
2661
+ enable_dynamic_voice_speed?: boolean;
2662
+
2663
+ /**
2664
+ * If set to true, will detect whether the call enters a voicemail. Note that this
2665
+ * feature is only available for phone calls.
2666
+ */
2667
+ enable_voicemail_detection?: boolean;
2668
+
2470
2669
  /**
2471
2670
  * If users stay silent for a period after agent speech, end the call. The minimum
2472
2671
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -2482,6 +2681,12 @@ export namespace CallCreatePhoneCallParams {
2482
2681
  */
2483
2682
  fallback_voice_ids?: Array<string> | null;
2484
2683
 
2684
+ /**
2685
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
2686
+ * agent output and user input.
2687
+ */
2688
+ guardrail_config?: Agent.GuardrailConfig;
2689
+
2485
2690
  /**
2486
2691
  * Controls how sensitive the agent is to user interruptions. Value ranging from
2487
2692
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -2491,6 +2696,19 @@ export namespace CallCreatePhoneCallParams {
2491
2696
  */
2492
2697
  interruption_sensitivity?: number;
2493
2698
 
2699
+ /**
2700
+ * Whether the agent is public. When set to true, the agent is available for public
2701
+ * agent preview link.
2702
+ */
2703
+ is_public?: boolean | null;
2704
+
2705
+ /**
2706
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
2707
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
2708
+ * null to disable IVR detection.
2709
+ */
2710
+ ivr_option?: Agent.IvrOption | null;
2711
+
2494
2712
  /**
2495
2713
  * Specifies what language (and dialect) the speech recognition will operate in.
2496
2714
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -2533,6 +2751,9 @@ export namespace CallCreatePhoneCallParams {
2533
2751
  | 'no-NO'
2534
2752
  | 'sk-SK'
2535
2753
  | 'sv-SE'
2754
+ | 'lt-LT'
2755
+ | 'lv-LV'
2756
+ | 'cs-CZ'
2536
2757
  | 'ms-MY'
2537
2758
  | 'af-ZA'
2538
2759
  | 'ar-SA'
@@ -2610,12 +2831,15 @@ export namespace CallCreatePhoneCallParams {
2610
2831
  | 'gpt-4.1-mini'
2611
2832
  | 'gpt-4.1-nano'
2612
2833
  | 'gpt-5'
2834
+ | 'gpt-5.1'
2835
+ | 'gpt-5.2'
2613
2836
  | 'gpt-5-mini'
2614
2837
  | 'gpt-5-nano'
2615
2838
  | 'claude-4.5-sonnet'
2616
2839
  | 'claude-4.5-haiku'
2617
2840
  | 'gemini-2.5-flash'
2618
2841
  | 'gemini-2.5-flash-lite'
2842
+ | 'gemini-3.0-flash'
2619
2843
  | null;
2620
2844
 
2621
2845
  /**
@@ -2673,12 +2897,18 @@ export namespace CallCreatePhoneCallParams {
2673
2897
 
2674
2898
  /**
2675
2899
  * If set, determines whether speech to text should focus on latency or accuracy.
2676
- * Default to fast mode.
2900
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
2677
2901
  */
2678
- stt_mode?: 'fast' | 'accurate';
2902
+ stt_mode?: 'fast' | 'accurate' | 'custom';
2679
2903
 
2680
2904
  user_dtmf_options?: Agent.UserDtmfOptions | null;
2681
2905
 
2906
+ /**
2907
+ * Optional description of the agent version. Used for your own reference and
2908
+ * documentation.
2909
+ */
2910
+ version_description?: string | null;
2911
+
2682
2912
  /**
2683
2913
  * If set, determines the vocabulary set to use for transcription. This setting
2684
2914
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -2686,6 +2916,12 @@ export namespace CallCreatePhoneCallParams {
2686
2916
  */
2687
2917
  vocab_specialization?: 'general' | 'medical';
2688
2918
 
2919
+ /**
2920
+ * Controls the emotional tone of the agent's voice. Currently supported for
2921
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
2922
+ */
2923
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
2924
+
2689
2925
  /**
2690
2926
  * Unique voice id used for the agent. Find list of available voices and their
2691
2927
  * preview in Dashboard.
@@ -2693,10 +2929,9 @@ export namespace CallCreatePhoneCallParams {
2693
2929
  voice_id?: string;
2694
2930
 
2695
2931
  /**
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.
2932
+ * Select the voice model used for the selected voice. Each provider has a set of
2933
+ * available voice models. Set to null to remove voice model selection, and default
2934
+ * ones will apply. Check out dashboard for more details of each voice model.
2700
2935
  */
2701
2936
  voice_model?:
2702
2937
  | 'eleven_turbo_v2'
@@ -2704,8 +2939,14 @@ export namespace CallCreatePhoneCallParams {
2704
2939
  | 'eleven_turbo_v2_5'
2705
2940
  | 'eleven_flash_v2_5'
2706
2941
  | 'eleven_multilingual_v2'
2942
+ | 'sonic-2'
2943
+ | 'sonic-3'
2944
+ | 'sonic-3-latest'
2945
+ | 'sonic-turbo'
2707
2946
  | 'tts-1'
2708
2947
  | 'gpt-4o-mini-tts'
2948
+ | 'speech-02-turbo'
2949
+ | 'speech-2.8-turbo'
2709
2950
  | null;
2710
2951
 
2711
2952
  /**
@@ -2723,6 +2964,21 @@ export namespace CallCreatePhoneCallParams {
2723
2964
  */
2724
2965
  voice_temperature?: number;
2725
2966
 
2967
+ /**
2968
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
2969
+ * hit voicemail after a couple minutes, and keep running it will only have
2970
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
2971
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
2972
+ */
2973
+ voicemail_detection_timeout_ms?: number;
2974
+
2975
+ /**
2976
+ * The message to be played when the call enters a voicemail. Note that this
2977
+ * feature is only available for phone calls. If you want to hangup after hitting
2978
+ * voicemail, set this to empty string.
2979
+ */
2980
+ voicemail_message?: string;
2981
+
2726
2982
  /**
2727
2983
  * If this option is set, the call will try to detect voicemail in the first 3
2728
2984
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -2738,6 +2994,21 @@ export namespace CallCreatePhoneCallParams {
2738
2994
  */
2739
2995
  volume?: number;
2740
2996
 
2997
+ /**
2998
+ * Which webhook events this agent should receive. If not set, defaults to
2999
+ * call_started, call_ended, call_analyzed.
3000
+ */
3001
+ webhook_events?: Array<
3002
+ | 'call_started'
3003
+ | 'call_ended'
3004
+ | 'call_analyzed'
3005
+ | 'transcript_updated'
3006
+ | 'transfer_started'
3007
+ | 'transfer_bridged'
3008
+ | 'transfer_cancelled'
3009
+ | 'transfer_ended'
3010
+ > | null;
3011
+
2741
3012
  /**
2742
3013
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
2743
3014
  * will apply.
@@ -2754,6 +3025,65 @@ export namespace CallCreatePhoneCallParams {
2754
3025
  }
2755
3026
 
2756
3027
  export namespace Agent {
3028
+ /**
3029
+ * Custom STT configuration. Only used when stt_mode is set to custom.
3030
+ */
3031
+ export interface CustomSttConfig {
3032
+ /**
3033
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
3034
+ */
3035
+ endpointing_ms: number;
3036
+
3037
+ /**
3038
+ * The STT provider to use.
3039
+ */
3040
+ provider: 'azure' | 'deepgram';
3041
+ }
3042
+
3043
+ /**
3044
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
3045
+ * agent output and user input.
3046
+ */
3047
+ export interface GuardrailConfig {
3048
+ /**
3049
+ * Selected prohibited user topic categories to check. When user messages contain
3050
+ * these topics, the agent will respond with a placeholder message instead of
3051
+ * processing the request.
3052
+ */
3053
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
3054
+
3055
+ /**
3056
+ * Selected prohibited agent topic categories to check. When agent messages contain
3057
+ * these topics, they will be replaced with a placeholder message.
3058
+ */
3059
+ output_topics?: Array<
3060
+ | 'harassment'
3061
+ | 'self_harm'
3062
+ | 'sexual_exploitation'
3063
+ | 'violence'
3064
+ | 'defense_and_national_security'
3065
+ | 'illicit_and_harmful_activity'
3066
+ | 'gambling'
3067
+ | 'regulated_professional_advice'
3068
+ | 'child_safety_and_exploitation'
3069
+ > | null;
3070
+ }
3071
+
3072
+ /**
3073
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
3074
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
3075
+ * null to disable IVR detection.
3076
+ */
3077
+ export interface IvrOption {
3078
+ action: IvrOption.Action;
3079
+ }
3080
+
3081
+ export namespace IvrOption {
3082
+ export interface Action {
3083
+ type: 'hangup';
3084
+ }
3085
+ }
3086
+
2757
3087
  /**
2758
3088
  * Configuration for PII scrubbing from transcripts and recordings.
2759
3089
  */
@@ -2775,6 +3105,7 @@ export namespace CallCreatePhoneCallParams {
2775
3105
  | 'pin'
2776
3106
  | 'medical_id'
2777
3107
  | 'date_of_birth'
3108
+ | 'customer_account_number'
2778
3109
  >;
2779
3110
 
2780
3111
  /**
@@ -2934,7 +3265,7 @@ export namespace CallCreatePhoneCallParams {
2934
3265
 
2935
3266
  /**
2936
3267
  * A single key that signals the end of DTMF input. Acceptable values include any
2937
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
3268
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
2938
3269
  */
2939
3270
  termination_key?: string | null;
2940
3271
 
@@ -2955,7 +3286,8 @@ export namespace CallCreatePhoneCallParams {
2955
3286
  action:
2956
3287
  | VoicemailOption.VoicemailActionPrompt
2957
3288
  | VoicemailOption.VoicemailActionStaticText
2958
- | VoicemailOption.VoicemailActionHangup;
3289
+ | VoicemailOption.VoicemailActionHangup
3290
+ | VoicemailOption.VoicemailActionBridgeTransfer;
2959
3291
  }
2960
3292
 
2961
3293
  export namespace VoicemailOption {
@@ -2981,6 +3313,10 @@ export namespace CallCreatePhoneCallParams {
2981
3313
  export interface VoicemailActionHangup {
2982
3314
  type: 'hangup';
2983
3315
  }
3316
+
3317
+ export interface VoicemailActionBridgeTransfer {
3318
+ type: 'bridge_transfer';
3319
+ }
2984
3320
  }
2985
3321
  }
2986
3322
 
@@ -3060,12 +3396,15 @@ export namespace CallCreatePhoneCallParams {
3060
3396
  | 'gpt-4.1-mini'
3061
3397
  | 'gpt-4.1-nano'
3062
3398
  | 'gpt-5'
3399
+ | 'gpt-5.1'
3400
+ | 'gpt-5.2'
3063
3401
  | 'gpt-5-mini'
3064
3402
  | 'gpt-5-nano'
3065
3403
  | 'claude-4.5-sonnet'
3066
3404
  | 'claude-4.5-haiku'
3067
3405
  | 'gemini-2.5-flash'
3068
- | 'gemini-2.5-flash-lite';
3406
+ | 'gemini-2.5-flash-lite'
3407
+ | 'gemini-3.0-flash';
3069
3408
 
3070
3409
  /**
3071
3410
  * Type of model choice
@@ -3119,12 +3458,15 @@ export namespace CallCreatePhoneCallParams {
3119
3458
  | 'gpt-4.1-mini'
3120
3459
  | 'gpt-4.1-nano'
3121
3460
  | 'gpt-5'
3461
+ | 'gpt-5.1'
3462
+ | 'gpt-5.2'
3122
3463
  | 'gpt-5-mini'
3123
3464
  | 'gpt-5-nano'
3124
3465
  | 'claude-4.5-sonnet'
3125
3466
  | 'claude-4.5-haiku'
3126
3467
  | 'gemini-2.5-flash'
3127
3468
  | 'gemini-2.5-flash-lite'
3469
+ | 'gemini-3.0-flash'
3128
3470
  | null;
3129
3471
 
3130
3472
  /**
@@ -3146,7 +3488,7 @@ export namespace CallCreatePhoneCallParams {
3146
3488
  * Select the underlying speech to speech model. Can only set this or model, not
3147
3489
  * both.
3148
3490
  */
3149
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
3491
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
3150
3492
 
3151
3493
  /**
3152
3494
  * The speaker who starts the conversation. Required. Must be either 'user' or
@@ -3268,24 +3610,18 @@ export namespace CallCreateWebCallParams {
3268
3610
  *
3269
3611
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
3270
3612
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
3271
- *
3272
3613
  * - `convention-hall`: Convention hall ambience, with some echo and people
3273
3614
  * chatting in background.
3274
3615
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
3275
- *
3276
3616
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
3277
3617
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
3278
- *
3279
3618
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
3280
3619
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
3281
- *
3282
3620
  * - `static-noise`: Constant static noise.
3283
3621
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
3284
- *
3285
3622
  * - `call-center`: Call center work noise.
3286
3623
  * [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.
3624
+ * Set to `null` to remove ambient sound from this agent.
3289
3625
  */
3290
3626
  ambient_sound?:
3291
3627
  | 'coffee-shop'
@@ -3349,6 +3685,11 @@ export namespace CallCreateWebCallParams {
3349
3685
  */
3350
3686
  boosted_keywords?: Array<string> | null;
3351
3687
 
3688
+ /**
3689
+ * Custom STT configuration. Only used when stt_mode is set to custom.
3690
+ */
3691
+ custom_stt_config?: Agent.CustomSttConfig;
3692
+
3352
3693
  /**
3353
3694
  * Granular setting to manage how Retell stores sensitive data (transcripts,
3354
3695
  * recordings, logs, etc.). This replaces the deprecated
@@ -3363,9 +3704,10 @@ export namespace CallCreateWebCallParams {
3363
3704
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
3364
3705
 
3365
3706
  /**
3366
- * If set, determines what denoising mode to use. Default to noise-cancellation.
3707
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
3708
+ * audio denoising. Default to noise-cancellation.
3367
3709
  */
3368
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
3710
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
3369
3711
 
3370
3712
  /**
3371
3713
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -3375,6 +3717,18 @@ export namespace CallCreateWebCallParams {
3375
3717
  */
3376
3718
  enable_backchannel?: boolean;
3377
3719
 
3720
+ /**
3721
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
3722
+ * speech rate and conversation context. If unset, default value false will apply.
3723
+ */
3724
+ enable_dynamic_voice_speed?: boolean;
3725
+
3726
+ /**
3727
+ * If set to true, will detect whether the call enters a voicemail. Note that this
3728
+ * feature is only available for phone calls.
3729
+ */
3730
+ enable_voicemail_detection?: boolean;
3731
+
3378
3732
  /**
3379
3733
  * If users stay silent for a period after agent speech, end the call. The minimum
3380
3734
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -3390,6 +3744,12 @@ export namespace CallCreateWebCallParams {
3390
3744
  */
3391
3745
  fallback_voice_ids?: Array<string> | null;
3392
3746
 
3747
+ /**
3748
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
3749
+ * agent output and user input.
3750
+ */
3751
+ guardrail_config?: Agent.GuardrailConfig;
3752
+
3393
3753
  /**
3394
3754
  * Controls how sensitive the agent is to user interruptions. Value ranging from
3395
3755
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -3399,6 +3759,19 @@ export namespace CallCreateWebCallParams {
3399
3759
  */
3400
3760
  interruption_sensitivity?: number;
3401
3761
 
3762
+ /**
3763
+ * Whether the agent is public. When set to true, the agent is available for public
3764
+ * agent preview link.
3765
+ */
3766
+ is_public?: boolean | null;
3767
+
3768
+ /**
3769
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
3770
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
3771
+ * null to disable IVR detection.
3772
+ */
3773
+ ivr_option?: Agent.IvrOption | null;
3774
+
3402
3775
  /**
3403
3776
  * Specifies what language (and dialect) the speech recognition will operate in.
3404
3777
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -3441,6 +3814,9 @@ export namespace CallCreateWebCallParams {
3441
3814
  | 'no-NO'
3442
3815
  | 'sk-SK'
3443
3816
  | 'sv-SE'
3817
+ | 'lt-LT'
3818
+ | 'lv-LV'
3819
+ | 'cs-CZ'
3444
3820
  | 'ms-MY'
3445
3821
  | 'af-ZA'
3446
3822
  | 'ar-SA'
@@ -3518,12 +3894,15 @@ export namespace CallCreateWebCallParams {
3518
3894
  | 'gpt-4.1-mini'
3519
3895
  | 'gpt-4.1-nano'
3520
3896
  | 'gpt-5'
3897
+ | 'gpt-5.1'
3898
+ | 'gpt-5.2'
3521
3899
  | 'gpt-5-mini'
3522
3900
  | 'gpt-5-nano'
3523
3901
  | 'claude-4.5-sonnet'
3524
3902
  | 'claude-4.5-haiku'
3525
3903
  | 'gemini-2.5-flash'
3526
3904
  | 'gemini-2.5-flash-lite'
3905
+ | 'gemini-3.0-flash'
3527
3906
  | null;
3528
3907
 
3529
3908
  /**
@@ -3581,12 +3960,18 @@ export namespace CallCreateWebCallParams {
3581
3960
 
3582
3961
  /**
3583
3962
  * If set, determines whether speech to text should focus on latency or accuracy.
3584
- * Default to fast mode.
3963
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
3585
3964
  */
3586
- stt_mode?: 'fast' | 'accurate';
3965
+ stt_mode?: 'fast' | 'accurate' | 'custom';
3587
3966
 
3588
3967
  user_dtmf_options?: Agent.UserDtmfOptions | null;
3589
3968
 
3969
+ /**
3970
+ * Optional description of the agent version. Used for your own reference and
3971
+ * documentation.
3972
+ */
3973
+ version_description?: string | null;
3974
+
3590
3975
  /**
3591
3976
  * If set, determines the vocabulary set to use for transcription. This setting
3592
3977
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -3594,6 +3979,12 @@ export namespace CallCreateWebCallParams {
3594
3979
  */
3595
3980
  vocab_specialization?: 'general' | 'medical';
3596
3981
 
3982
+ /**
3983
+ * Controls the emotional tone of the agent's voice. Currently supported for
3984
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
3985
+ */
3986
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
3987
+
3597
3988
  /**
3598
3989
  * Unique voice id used for the agent. Find list of available voices and their
3599
3990
  * preview in Dashboard.
@@ -3601,10 +3992,9 @@ export namespace CallCreateWebCallParams {
3601
3992
  voice_id?: string;
3602
3993
 
3603
3994
  /**
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.
3995
+ * Select the voice model used for the selected voice. Each provider has a set of
3996
+ * available voice models. Set to null to remove voice model selection, and default
3997
+ * ones will apply. Check out dashboard for more details of each voice model.
3608
3998
  */
3609
3999
  voice_model?:
3610
4000
  | 'eleven_turbo_v2'
@@ -3612,8 +4002,14 @@ export namespace CallCreateWebCallParams {
3612
4002
  | 'eleven_turbo_v2_5'
3613
4003
  | 'eleven_flash_v2_5'
3614
4004
  | 'eleven_multilingual_v2'
4005
+ | 'sonic-2'
4006
+ | 'sonic-3'
4007
+ | 'sonic-3-latest'
4008
+ | 'sonic-turbo'
3615
4009
  | 'tts-1'
3616
4010
  | 'gpt-4o-mini-tts'
4011
+ | 'speech-02-turbo'
4012
+ | 'speech-2.8-turbo'
3617
4013
  | null;
3618
4014
 
3619
4015
  /**
@@ -3631,6 +4027,21 @@ export namespace CallCreateWebCallParams {
3631
4027
  */
3632
4028
  voice_temperature?: number;
3633
4029
 
4030
+ /**
4031
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
4032
+ * hit voicemail after a couple minutes, and keep running it will only have
4033
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
4034
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
4035
+ */
4036
+ voicemail_detection_timeout_ms?: number;
4037
+
4038
+ /**
4039
+ * The message to be played when the call enters a voicemail. Note that this
4040
+ * feature is only available for phone calls. If you want to hangup after hitting
4041
+ * voicemail, set this to empty string.
4042
+ */
4043
+ voicemail_message?: string;
4044
+
3634
4045
  /**
3635
4046
  * If this option is set, the call will try to detect voicemail in the first 3
3636
4047
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -3646,6 +4057,21 @@ export namespace CallCreateWebCallParams {
3646
4057
  */
3647
4058
  volume?: number;
3648
4059
 
4060
+ /**
4061
+ * Which webhook events this agent should receive. If not set, defaults to
4062
+ * call_started, call_ended, call_analyzed.
4063
+ */
4064
+ webhook_events?: Array<
4065
+ | 'call_started'
4066
+ | 'call_ended'
4067
+ | 'call_analyzed'
4068
+ | 'transcript_updated'
4069
+ | 'transfer_started'
4070
+ | 'transfer_bridged'
4071
+ | 'transfer_cancelled'
4072
+ | 'transfer_ended'
4073
+ > | null;
4074
+
3649
4075
  /**
3650
4076
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
3651
4077
  * will apply.
@@ -3662,6 +4088,65 @@ export namespace CallCreateWebCallParams {
3662
4088
  }
3663
4089
 
3664
4090
  export namespace Agent {
4091
+ /**
4092
+ * Custom STT configuration. Only used when stt_mode is set to custom.
4093
+ */
4094
+ export interface CustomSttConfig {
4095
+ /**
4096
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
4097
+ */
4098
+ endpointing_ms: number;
4099
+
4100
+ /**
4101
+ * The STT provider to use.
4102
+ */
4103
+ provider: 'azure' | 'deepgram';
4104
+ }
4105
+
4106
+ /**
4107
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
4108
+ * agent output and user input.
4109
+ */
4110
+ export interface GuardrailConfig {
4111
+ /**
4112
+ * Selected prohibited user topic categories to check. When user messages contain
4113
+ * these topics, the agent will respond with a placeholder message instead of
4114
+ * processing the request.
4115
+ */
4116
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
4117
+
4118
+ /**
4119
+ * Selected prohibited agent topic categories to check. When agent messages contain
4120
+ * these topics, they will be replaced with a placeholder message.
4121
+ */
4122
+ output_topics?: Array<
4123
+ | 'harassment'
4124
+ | 'self_harm'
4125
+ | 'sexual_exploitation'
4126
+ | 'violence'
4127
+ | 'defense_and_national_security'
4128
+ | 'illicit_and_harmful_activity'
4129
+ | 'gambling'
4130
+ | 'regulated_professional_advice'
4131
+ | 'child_safety_and_exploitation'
4132
+ > | null;
4133
+ }
4134
+
4135
+ /**
4136
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
4137
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
4138
+ * null to disable IVR detection.
4139
+ */
4140
+ export interface IvrOption {
4141
+ action: IvrOption.Action;
4142
+ }
4143
+
4144
+ export namespace IvrOption {
4145
+ export interface Action {
4146
+ type: 'hangup';
4147
+ }
4148
+ }
4149
+
3665
4150
  /**
3666
4151
  * Configuration for PII scrubbing from transcripts and recordings.
3667
4152
  */
@@ -3683,6 +4168,7 @@ export namespace CallCreateWebCallParams {
3683
4168
  | 'pin'
3684
4169
  | 'medical_id'
3685
4170
  | 'date_of_birth'
4171
+ | 'customer_account_number'
3686
4172
  >;
3687
4173
 
3688
4174
  /**
@@ -3842,7 +4328,7 @@ export namespace CallCreateWebCallParams {
3842
4328
 
3843
4329
  /**
3844
4330
  * A single key that signals the end of DTMF input. Acceptable values include any
3845
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
4331
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
3846
4332
  */
3847
4333
  termination_key?: string | null;
3848
4334
 
@@ -3863,7 +4349,8 @@ export namespace CallCreateWebCallParams {
3863
4349
  action:
3864
4350
  | VoicemailOption.VoicemailActionPrompt
3865
4351
  | VoicemailOption.VoicemailActionStaticText
3866
- | VoicemailOption.VoicemailActionHangup;
4352
+ | VoicemailOption.VoicemailActionHangup
4353
+ | VoicemailOption.VoicemailActionBridgeTransfer;
3867
4354
  }
3868
4355
 
3869
4356
  export namespace VoicemailOption {
@@ -3889,6 +4376,10 @@ export namespace CallCreateWebCallParams {
3889
4376
  export interface VoicemailActionHangup {
3890
4377
  type: 'hangup';
3891
4378
  }
4379
+
4380
+ export interface VoicemailActionBridgeTransfer {
4381
+ type: 'bridge_transfer';
4382
+ }
3892
4383
  }
3893
4384
  }
3894
4385
 
@@ -3968,12 +4459,15 @@ export namespace CallCreateWebCallParams {
3968
4459
  | 'gpt-4.1-mini'
3969
4460
  | 'gpt-4.1-nano'
3970
4461
  | 'gpt-5'
4462
+ | 'gpt-5.1'
4463
+ | 'gpt-5.2'
3971
4464
  | 'gpt-5-mini'
3972
4465
  | 'gpt-5-nano'
3973
4466
  | 'claude-4.5-sonnet'
3974
4467
  | 'claude-4.5-haiku'
3975
4468
  | 'gemini-2.5-flash'
3976
- | 'gemini-2.5-flash-lite';
4469
+ | 'gemini-2.5-flash-lite'
4470
+ | 'gemini-3.0-flash';
3977
4471
 
3978
4472
  /**
3979
4473
  * Type of model choice
@@ -4027,12 +4521,15 @@ export namespace CallCreateWebCallParams {
4027
4521
  | 'gpt-4.1-mini'
4028
4522
  | 'gpt-4.1-nano'
4029
4523
  | 'gpt-5'
4524
+ | 'gpt-5.1'
4525
+ | 'gpt-5.2'
4030
4526
  | 'gpt-5-mini'
4031
4527
  | 'gpt-5-nano'
4032
4528
  | 'claude-4.5-sonnet'
4033
4529
  | 'claude-4.5-haiku'
4034
4530
  | 'gemini-2.5-flash'
4035
4531
  | 'gemini-2.5-flash-lite'
4532
+ | 'gemini-3.0-flash'
4036
4533
  | null;
4037
4534
 
4038
4535
  /**
@@ -4054,7 +4551,7 @@ export namespace CallCreateWebCallParams {
4054
4551
  * Select the underlying speech to speech model. Can only set this or model, not
4055
4552
  * both.
4056
4553
  */
4057
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
4554
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
4058
4555
 
4059
4556
  /**
4060
4557
  * The speaker who starts the conversation. Required. Must be either 'user' or
@@ -4190,24 +4687,18 @@ export namespace CallRegisterPhoneCallParams {
4190
4687
  *
4191
4688
  * - `coffee-shop`: Coffee shop ambience with people chatting in background.
4192
4689
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/coffee-shop.wav)
4193
- *
4194
4690
  * - `convention-hall`: Convention hall ambience, with some echo and people
4195
4691
  * chatting in background.
4196
4692
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/convention-hall.wav)
4197
- *
4198
4693
  * - `summer-outdoor`: Summer outdoor ambience with cicada chirping.
4199
4694
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/summer-outdoor.wav)
4200
- *
4201
4695
  * - `mountain-outdoor`: Mountain outdoor ambience with birds singing.
4202
4696
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/mountain-outdoor.wav)
4203
- *
4204
4697
  * - `static-noise`: Constant static noise.
4205
4698
  * [Listen to Ambience](https://retell-utils-public.s3.us-west-2.amazonaws.com/static-noise.wav)
4206
- *
4207
4699
  * - `call-center`: Call center work noise.
4208
4700
  * [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.
4701
+ * Set to `null` to remove ambient sound from this agent.
4211
4702
  */
4212
4703
  ambient_sound?:
4213
4704
  | 'coffee-shop'
@@ -4271,6 +4762,11 @@ export namespace CallRegisterPhoneCallParams {
4271
4762
  */
4272
4763
  boosted_keywords?: Array<string> | null;
4273
4764
 
4765
+ /**
4766
+ * Custom STT configuration. Only used when stt_mode is set to custom.
4767
+ */
4768
+ custom_stt_config?: Agent.CustomSttConfig;
4769
+
4274
4770
  /**
4275
4771
  * Granular setting to manage how Retell stores sensitive data (transcripts,
4276
4772
  * recordings, logs, etc.). This replaces the deprecated
@@ -4285,9 +4781,10 @@ export namespace CallRegisterPhoneCallParams {
4285
4781
  data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only';
4286
4782
 
4287
4783
  /**
4288
- * If set, determines what denoising mode to use. Default to noise-cancellation.
4784
+ * If set, determines what denoising mode to use. Use "no-denoise" to bypass all
4785
+ * audio denoising. Default to noise-cancellation.
4289
4786
  */
4290
- denoising_mode?: 'noise-cancellation' | 'noise-and-background-speech-cancellation';
4787
+ denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation';
4291
4788
 
4292
4789
  /**
4293
4790
  * Controls whether the agent would backchannel (agent interjects the speaker with
@@ -4297,6 +4794,18 @@ export namespace CallRegisterPhoneCallParams {
4297
4794
  */
4298
4795
  enable_backchannel?: boolean;
4299
4796
 
4797
+ /**
4798
+ * If set to true, will enable dynamic voice speed adjustment based on the user's
4799
+ * speech rate and conversation context. If unset, default value false will apply.
4800
+ */
4801
+ enable_dynamic_voice_speed?: boolean;
4802
+
4803
+ /**
4804
+ * If set to true, will detect whether the call enters a voicemail. Note that this
4805
+ * feature is only available for phone calls.
4806
+ */
4807
+ enable_voicemail_detection?: boolean;
4808
+
4300
4809
  /**
4301
4810
  * If users stay silent for a period after agent speech, end the call. The minimum
4302
4811
  * value allowed is 10,000 ms (10 s). By default, this is set to 600000 (10 min).
@@ -4312,6 +4821,12 @@ export namespace CallRegisterPhoneCallParams {
4312
4821
  */
4313
4822
  fallback_voice_ids?: Array<string> | null;
4314
4823
 
4824
+ /**
4825
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
4826
+ * agent output and user input.
4827
+ */
4828
+ guardrail_config?: Agent.GuardrailConfig;
4829
+
4315
4830
  /**
4316
4831
  * Controls how sensitive the agent is to user interruptions. Value ranging from
4317
4832
  * [0,1]. Lower value means it will take longer / more words for user to interrupt
@@ -4321,6 +4836,19 @@ export namespace CallRegisterPhoneCallParams {
4321
4836
  */
4322
4837
  interruption_sensitivity?: number;
4323
4838
 
4839
+ /**
4840
+ * Whether the agent is public. When set to true, the agent is available for public
4841
+ * agent preview link.
4842
+ */
4843
+ is_public?: boolean | null;
4844
+
4845
+ /**
4846
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
4847
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
4848
+ * null to disable IVR detection.
4849
+ */
4850
+ ivr_option?: Agent.IvrOption | null;
4851
+
4324
4852
  /**
4325
4853
  * Specifies what language (and dialect) the speech recognition will operate in.
4326
4854
  * For instance, selecting `en-GB` optimizes speech recognition for British
@@ -4363,6 +4891,9 @@ export namespace CallRegisterPhoneCallParams {
4363
4891
  | 'no-NO'
4364
4892
  | 'sk-SK'
4365
4893
  | 'sv-SE'
4894
+ | 'lt-LT'
4895
+ | 'lv-LV'
4896
+ | 'cs-CZ'
4366
4897
  | 'ms-MY'
4367
4898
  | 'af-ZA'
4368
4899
  | 'ar-SA'
@@ -4440,12 +4971,15 @@ export namespace CallRegisterPhoneCallParams {
4440
4971
  | 'gpt-4.1-mini'
4441
4972
  | 'gpt-4.1-nano'
4442
4973
  | 'gpt-5'
4974
+ | 'gpt-5.1'
4975
+ | 'gpt-5.2'
4443
4976
  | 'gpt-5-mini'
4444
4977
  | 'gpt-5-nano'
4445
4978
  | 'claude-4.5-sonnet'
4446
4979
  | 'claude-4.5-haiku'
4447
4980
  | 'gemini-2.5-flash'
4448
4981
  | 'gemini-2.5-flash-lite'
4982
+ | 'gemini-3.0-flash'
4449
4983
  | null;
4450
4984
 
4451
4985
  /**
@@ -4503,12 +5037,18 @@ export namespace CallRegisterPhoneCallParams {
4503
5037
 
4504
5038
  /**
4505
5039
  * If set, determines whether speech to text should focus on latency or accuracy.
4506
- * Default to fast mode.
5040
+ * Default to fast mode. When set to custom, custom_stt_config must be provided.
4507
5041
  */
4508
- stt_mode?: 'fast' | 'accurate';
5042
+ stt_mode?: 'fast' | 'accurate' | 'custom';
4509
5043
 
4510
5044
  user_dtmf_options?: Agent.UserDtmfOptions | null;
4511
5045
 
5046
+ /**
5047
+ * Optional description of the agent version. Used for your own reference and
5048
+ * documentation.
5049
+ */
5050
+ version_description?: string | null;
5051
+
4512
5052
  /**
4513
5053
  * If set, determines the vocabulary set to use for transcription. This setting
4514
5054
  * only applies for English agents, for non English agent, this setting is a no-op.
@@ -4516,6 +5056,12 @@ export namespace CallRegisterPhoneCallParams {
4516
5056
  */
4517
5057
  vocab_specialization?: 'general' | 'medical';
4518
5058
 
5059
+ /**
5060
+ * Controls the emotional tone of the agent's voice. Currently supported for
5061
+ * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
5062
+ */
5063
+ voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
5064
+
4519
5065
  /**
4520
5066
  * Unique voice id used for the agent. Find list of available voices and their
4521
5067
  * preview in Dashboard.
@@ -4523,10 +5069,9 @@ export namespace CallRegisterPhoneCallParams {
4523
5069
  voice_id?: string;
4524
5070
 
4525
5071
  /**
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.
5072
+ * Select the voice model used for the selected voice. Each provider has a set of
5073
+ * available voice models. Set to null to remove voice model selection, and default
5074
+ * ones will apply. Check out dashboard for more details of each voice model.
4530
5075
  */
4531
5076
  voice_model?:
4532
5077
  | 'eleven_turbo_v2'
@@ -4534,8 +5079,14 @@ export namespace CallRegisterPhoneCallParams {
4534
5079
  | 'eleven_turbo_v2_5'
4535
5080
  | 'eleven_flash_v2_5'
4536
5081
  | 'eleven_multilingual_v2'
5082
+ | 'sonic-2'
5083
+ | 'sonic-3'
5084
+ | 'sonic-3-latest'
5085
+ | 'sonic-turbo'
4537
5086
  | 'tts-1'
4538
5087
  | 'gpt-4o-mini-tts'
5088
+ | 'speech-02-turbo'
5089
+ | 'speech-2.8-turbo'
4539
5090
  | null;
4540
5091
 
4541
5092
  /**
@@ -4553,6 +5104,21 @@ export namespace CallRegisterPhoneCallParams {
4553
5104
  */
4554
5105
  voice_temperature?: number;
4555
5106
 
5107
+ /**
5108
+ * Configures when to stop running voicemail detection, as it becomes unlikely to
5109
+ * hit voicemail after a couple minutes, and keep running it will only have
5110
+ * negative impact. The minimum value allowed is 5,000 ms (5 s), and maximum value
5111
+ * allowed is 180,000 (3 minutes). By default, this is set to 30,000 (30 s).
5112
+ */
5113
+ voicemail_detection_timeout_ms?: number;
5114
+
5115
+ /**
5116
+ * The message to be played when the call enters a voicemail. Note that this
5117
+ * feature is only available for phone calls. If you want to hangup after hitting
5118
+ * voicemail, set this to empty string.
5119
+ */
5120
+ voicemail_message?: string;
5121
+
4556
5122
  /**
4557
5123
  * If this option is set, the call will try to detect voicemail in the first 3
4558
5124
  * minutes of the call. Actions defined (hangup, or leave a message) will be
@@ -4568,6 +5134,21 @@ export namespace CallRegisterPhoneCallParams {
4568
5134
  */
4569
5135
  volume?: number;
4570
5136
 
5137
+ /**
5138
+ * Which webhook events this agent should receive. If not set, defaults to
5139
+ * call_started, call_ended, call_analyzed.
5140
+ */
5141
+ webhook_events?: Array<
5142
+ | 'call_started'
5143
+ | 'call_ended'
5144
+ | 'call_analyzed'
5145
+ | 'transcript_updated'
5146
+ | 'transfer_started'
5147
+ | 'transfer_bridged'
5148
+ | 'transfer_cancelled'
5149
+ | 'transfer_ended'
5150
+ > | null;
5151
+
4571
5152
  /**
4572
5153
  * The timeout for the webhook in milliseconds. If not set, default value of 10000
4573
5154
  * will apply.
@@ -4584,6 +5165,65 @@ export namespace CallRegisterPhoneCallParams {
4584
5165
  }
4585
5166
 
4586
5167
  export namespace Agent {
5168
+ /**
5169
+ * Custom STT configuration. Only used when stt_mode is set to custom.
5170
+ */
5171
+ export interface CustomSttConfig {
5172
+ /**
5173
+ * Endpointing timeout in milliseconds. Minimum is 100 for azure, 10 for deepgram.
5174
+ */
5175
+ endpointing_ms: number;
5176
+
5177
+ /**
5178
+ * The STT provider to use.
5179
+ */
5180
+ provider: 'azure' | 'deepgram';
5181
+ }
5182
+
5183
+ /**
5184
+ * Configuration for guardrail checks to detect and prevent prohibited topics in
5185
+ * agent output and user input.
5186
+ */
5187
+ export interface GuardrailConfig {
5188
+ /**
5189
+ * Selected prohibited user topic categories to check. When user messages contain
5190
+ * these topics, the agent will respond with a placeholder message instead of
5191
+ * processing the request.
5192
+ */
5193
+ input_topics?: Array<'platform_integrity_jailbreaking'> | null;
5194
+
5195
+ /**
5196
+ * Selected prohibited agent topic categories to check. When agent messages contain
5197
+ * these topics, they will be replaced with a placeholder message.
5198
+ */
5199
+ output_topics?: Array<
5200
+ | 'harassment'
5201
+ | 'self_harm'
5202
+ | 'sexual_exploitation'
5203
+ | 'violence'
5204
+ | 'defense_and_national_security'
5205
+ | 'illicit_and_harmful_activity'
5206
+ | 'gambling'
5207
+ | 'regulated_professional_advice'
5208
+ | 'child_safety_and_exploitation'
5209
+ > | null;
5210
+ }
5211
+
5212
+ /**
5213
+ * If this option is set, the call will try to detect IVR in the first 3 minutes of
5214
+ * the call. Actions defined will be applied when the IVR is detected. Set this to
5215
+ * null to disable IVR detection.
5216
+ */
5217
+ export interface IvrOption {
5218
+ action: IvrOption.Action;
5219
+ }
5220
+
5221
+ export namespace IvrOption {
5222
+ export interface Action {
5223
+ type: 'hangup';
5224
+ }
5225
+ }
5226
+
4587
5227
  /**
4588
5228
  * Configuration for PII scrubbing from transcripts and recordings.
4589
5229
  */
@@ -4605,6 +5245,7 @@ export namespace CallRegisterPhoneCallParams {
4605
5245
  | 'pin'
4606
5246
  | 'medical_id'
4607
5247
  | 'date_of_birth'
5248
+ | 'customer_account_number'
4608
5249
  >;
4609
5250
 
4610
5251
  /**
@@ -4764,7 +5405,7 @@ export namespace CallRegisterPhoneCallParams {
4764
5405
 
4765
5406
  /**
4766
5407
  * A single key that signals the end of DTMF input. Acceptable values include any
4767
- * digit (09), the pound/hash symbol (#), or the asterisk (\*).
5408
+ * digit (0-9), the pound/hash symbol (#), or the asterisk (\*).
4768
5409
  */
4769
5410
  termination_key?: string | null;
4770
5411
 
@@ -4785,7 +5426,8 @@ export namespace CallRegisterPhoneCallParams {
4785
5426
  action:
4786
5427
  | VoicemailOption.VoicemailActionPrompt
4787
5428
  | VoicemailOption.VoicemailActionStaticText
4788
- | VoicemailOption.VoicemailActionHangup;
5429
+ | VoicemailOption.VoicemailActionHangup
5430
+ | VoicemailOption.VoicemailActionBridgeTransfer;
4789
5431
  }
4790
5432
 
4791
5433
  export namespace VoicemailOption {
@@ -4811,6 +5453,10 @@ export namespace CallRegisterPhoneCallParams {
4811
5453
  export interface VoicemailActionHangup {
4812
5454
  type: 'hangup';
4813
5455
  }
5456
+
5457
+ export interface VoicemailActionBridgeTransfer {
5458
+ type: 'bridge_transfer';
5459
+ }
4814
5460
  }
4815
5461
  }
4816
5462
 
@@ -4890,12 +5536,15 @@ export namespace CallRegisterPhoneCallParams {
4890
5536
  | 'gpt-4.1-mini'
4891
5537
  | 'gpt-4.1-nano'
4892
5538
  | 'gpt-5'
5539
+ | 'gpt-5.1'
5540
+ | 'gpt-5.2'
4893
5541
  | 'gpt-5-mini'
4894
5542
  | 'gpt-5-nano'
4895
5543
  | 'claude-4.5-sonnet'
4896
5544
  | 'claude-4.5-haiku'
4897
5545
  | 'gemini-2.5-flash'
4898
- | 'gemini-2.5-flash-lite';
5546
+ | 'gemini-2.5-flash-lite'
5547
+ | 'gemini-3.0-flash';
4899
5548
 
4900
5549
  /**
4901
5550
  * Type of model choice
@@ -4949,12 +5598,15 @@ export namespace CallRegisterPhoneCallParams {
4949
5598
  | 'gpt-4.1-mini'
4950
5599
  | 'gpt-4.1-nano'
4951
5600
  | 'gpt-5'
5601
+ | 'gpt-5.1'
5602
+ | 'gpt-5.2'
4952
5603
  | 'gpt-5-mini'
4953
5604
  | 'gpt-5-nano'
4954
5605
  | 'claude-4.5-sonnet'
4955
5606
  | 'claude-4.5-haiku'
4956
5607
  | 'gemini-2.5-flash'
4957
5608
  | 'gemini-2.5-flash-lite'
5609
+ | 'gemini-3.0-flash'
4958
5610
  | null;
4959
5611
 
4960
5612
  /**
@@ -4976,7 +5628,7 @@ export namespace CallRegisterPhoneCallParams {
4976
5628
  * Select the underlying speech to speech model. Can only set this or model, not
4977
5629
  * both.
4978
5630
  */
4979
- s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
5631
+ s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | 'gpt-realtime-mini' | null;
4980
5632
 
4981
5633
  /**
4982
5634
  * The speaker who starts the conversation. Required. Must be either 'user' or