telnyx 5.170.0 → 5.171.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 (604) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +39 -0
  5. data/lib/telnyx/models/ai/assistant_create_params.rb +36 -1
  6. data/lib/telnyx/models/ai/assistant_delete_params.rb +14 -1
  7. data/lib/telnyx/models/ai/assistant_restore_params.rb +22 -0
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +36 -1
  9. data/lib/telnyx/models/ai/assistant_whatsapp_params.rb +83 -0
  10. data/lib/telnyx/models/ai/assistant_whatsapp_response.rb +27 -0
  11. data/lib/telnyx/models/ai/assistants/deleted_assistant.rb +38 -0
  12. data/lib/telnyx/models/ai/assistants/deleted_get_params.rb +24 -0
  13. data/lib/telnyx/models/ai/assistants/deleted_list_params.rb +34 -0
  14. data/lib/telnyx/models/ai/assistants/update_assistant.rb +36 -1
  15. data/lib/telnyx/models/ai/avatar_settings_request.rb +93 -0
  16. data/lib/telnyx/models/ai/chat_completion_request.rb +22 -3
  17. data/lib/telnyx/models/ai/conversation_flow_req.rb +5 -2
  18. data/lib/telnyx/models/ai/conversation_list_params.rb +13 -1
  19. data/lib/telnyx/models/ai/delegation_settings.rb +118 -0
  20. data/lib/telnyx/models/ai/flow_edge.rb +35 -13
  21. data/lib/telnyx/models/ai/flow_node_req.rb +9 -3
  22. data/lib/telnyx/models/ai/inference_embedding.rb +36 -1
  23. data/lib/telnyx/models/ai/inference_embedding_voice_settings.rb +126 -5
  24. data/lib/telnyx/models/ai/memory/namespace.rb +33 -0
  25. data/lib/telnyx/models/ai/memory/namespace_create_params.rb +26 -0
  26. data/lib/telnyx/models/ai/memory/namespace_create_response.rb +21 -0
  27. data/lib/telnyx/models/ai/memory/namespace_delete_params.rb +26 -0
  28. data/lib/telnyx/models/ai/memory/namespace_list_params.rb +18 -0
  29. data/lib/telnyx/models/ai/memory/namespace_list_response.rb +20 -0
  30. data/lib/telnyx/models/ai/memory/namespaces/profile_preview_params.rb +49 -0
  31. data/lib/telnyx/models/ai/memory/namespaces/profile_preview_response.rb +47 -0
  32. data/lib/telnyx/models/ai/pay_tool_params.rb +43 -3
  33. data/lib/telnyx/models/ai/telephony_settings.rb +14 -1
  34. data/lib/telnyx/models/ai/telnyx_avatar_settings.rb +93 -0
  35. data/lib/telnyx/models/ai/tool_node.rb +19 -5
  36. data/lib/telnyx/models/ai/tool_node_req.rb +23 -7
  37. data/lib/telnyx/models/ai/transcription_settings.rb +239 -1
  38. data/lib/telnyx/models/ai/voice_settings.rb +4 -4
  39. data/lib/telnyx/models/ai/websocket_settings.rb +48 -0
  40. data/lib/telnyx/models/billing_contact.rb +15 -5
  41. data/lib/telnyx/models/bpo_authorization_input.rb +33 -0
  42. data/lib/telnyx/models/call_assistant_request.rb +21 -5
  43. data/lib/telnyx/models/call_conversation_created_webhook_event.rb +188 -0
  44. data/lib/telnyx/models/call_conversation_ended.rb +152 -1
  45. data/lib/telnyx/models/call_conversation_start_failed_webhook_event.rb +221 -0
  46. data/lib/telnyx/models/call_dial_params.rb +43 -9
  47. data/lib/telnyx/models/call_machine_premium_call_screening_detected_webhook_event.rb +175 -0
  48. data/lib/telnyx/models/call_machine_premium_detection_started_webhook_event.rb +149 -0
  49. data/lib/telnyx/models/call_machine_premium_greeting_ended.rb +8 -3
  50. data/lib/telnyx/models/calls/action_answer_params.rb +10 -6
  51. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +4 -4
  52. data/lib/telnyx/models/calls/action_pay_params.rb +47 -1
  53. data/lib/telnyx/models/calls/action_reject_params.rb +11 -3
  54. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +6 -4
  55. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +11 -8
  56. data/lib/telnyx/models/calls/action_transfer_params.rb +37 -5
  57. data/lib/telnyx/models/calls/conversation_relay_transcription_engine_config.rb +48 -0
  58. data/lib/telnyx/models/calls/telnyx_voice_settings.rb +5 -4
  59. data/lib/telnyx/models/conversation_relay_embedded_config.rb +11 -8
  60. data/lib/telnyx/models/conversation_relay_language.rb +7 -4
  61. data/lib/telnyx/models/dir/phone_number_list_params.rb +1 -9
  62. data/lib/telnyx/models/dir/phone_number_remove_params.rb +8 -1
  63. data/lib/telnyx/models/dir/reference_update_params.rb +18 -12
  64. data/lib/telnyx/models/dir.rb +23 -1
  65. data/lib/telnyx/models/dir_bpo_loa_params.rb +43 -0
  66. data/lib/telnyx/models/dir_delete_response.rb +51 -0
  67. data/lib/telnyx/models/dir_new_loa_params.rb +7 -33
  68. data/lib/telnyx/models/dir_retrieve_bpo_authorizations_params.rb +40 -0
  69. data/lib/telnyx/models/dir_retrieve_bpo_authorizations_response.rb +121 -0
  70. data/lib/telnyx/models/dir_status.rb +5 -0
  71. data/lib/telnyx/models/dir_update_infringement_params.rb +8 -4
  72. data/lib/telnyx/models/dir_update_params.rb +24 -1
  73. data/lib/telnyx/models/doc_reqs_requirement.rb +3 -0
  74. data/lib/telnyx/models/document.rb +2 -1
  75. data/lib/telnyx/models/email_template.rb +2 -126
  76. data/lib/telnyx/models/email_template_common.rb +157 -0
  77. data/lib/telnyx/models/email_template_create_params.rb +35 -4
  78. data/lib/telnyx/models/email_template_list_params.rb +84 -1
  79. data/lib/telnyx/models/email_template_render_response.rb +13 -6
  80. data/lib/telnyx/models/enterprise_create_params.rb +53 -24
  81. data/lib/telnyx/models/enterprise_list_params.rb +22 -1
  82. data/lib/telnyx/models/enterprise_public.rb +103 -21
  83. data/lib/telnyx/models/enterprise_update_params.rb +54 -15
  84. data/lib/telnyx/models/enterprises/dir_create_params.rb +29 -4
  85. data/lib/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rb +101 -0
  86. data/lib/telnyx/models/enterprises/enterprise_reputation_public.rb +20 -1
  87. data/lib/telnyx/models/enterprises/reputation/agent_input.rb +48 -15
  88. data/lib/telnyx/models/enterprises/reputation/external_verification_create_params.rb +50 -0
  89. data/lib/telnyx/models/enterprises/reputation/external_verification_list_params.rb +24 -0
  90. data/lib/telnyx/models/enterprises/reputation/external_verification_status.rb +22 -0
  91. data/lib/telnyx/models/enterprises/reputation/external_verification_wrapped.rb +84 -0
  92. data/lib/telnyx/models/enterprises/reputation/loa_render_params.rb +82 -3
  93. data/lib/telnyx/models/enterprises/reputation/number_list_params.rb +19 -1
  94. data/lib/telnyx/models/enterprises/reputation/number_ownership_confirm_params.rb +53 -0
  95. data/lib/telnyx/models/enterprises/reputation/number_retrieve_ownership_params.rb +30 -0
  96. data/lib/telnyx/models/enterprises/reputation/number_retrieve_ownership_response.rb +133 -0
  97. data/lib/telnyx/models/enterprises/reputation/remediation_request.rb +4 -3
  98. data/lib/telnyx/models/enterprises/reputation/reputation_number_source.rb +23 -0
  99. data/lib/telnyx/models/enterprises/reputation/reputation_ownership_status.rb +32 -0
  100. data/lib/telnyx/models/enterprises/reputation/reputation_phone_number.rb +93 -3
  101. data/lib/telnyx/models/enterprises/reputation_update_webhook_params.rb +35 -0
  102. data/lib/telnyx/models/enterprises/verify_email_confirm_params.rb +31 -0
  103. data/lib/telnyx/models/enterprises/verify_email_create_params.rb +22 -0
  104. data/lib/telnyx/models/infringement_claim.rb +4 -0
  105. data/lib/telnyx/models/llm_token_gateway/ai_gateway_resources_page_meta.rb +35 -0
  106. data/lib/telnyx/models/llm_token_gateway/budget_duration.rb +18 -0
  107. data/lib/telnyx/models/llm_token_gateway/guardrail_finding.rb +58 -0
  108. data/lib/telnyx/models/llm_token_gateway/spend_group_by.rb +40 -0
  109. data/lib/telnyx/models/llm_token_gateway/spend_retrieve_events_params.rb +96 -0
  110. data/lib/telnyx/models/llm_token_gateway/spend_retrieve_events_response.rb +282 -0
  111. data/lib/telnyx/models/llm_token_gateway/spend_retrieve_summary_params.rb +105 -0
  112. data/lib/telnyx/models/llm_token_gateway/spend_retrieve_summary_response.rb +189 -0
  113. data/lib/telnyx/models/llm_token_gateway/token_group.rb +413 -0
  114. data/lib/telnyx/models/llm_token_gateway/token_group_create_params.rb +359 -0
  115. data/lib/telnyx/models/llm_token_gateway/token_group_delete_params.rb +34 -0
  116. data/lib/telnyx/models/llm_token_gateway/token_group_list_params.rb +42 -0
  117. data/lib/telnyx/models/llm_token_gateway/token_group_response.rb +18 -0
  118. data/lib/telnyx/models/llm_token_gateway/token_group_retrieve_params.rb +22 -0
  119. data/lib/telnyx/models/llm_token_gateway/token_group_update_params.rb +373 -0
  120. data/lib/telnyx/models/llm_token_gateway/token_key.rb +208 -0
  121. data/lib/telnyx/models/llm_token_gateway/token_key_create_params.rb +126 -0
  122. data/lib/telnyx/models/llm_token_gateway/token_key_delete_params.rb +34 -0
  123. data/lib/telnyx/models/llm_token_gateway/token_key_list_params.rb +56 -0
  124. data/lib/telnyx/models/llm_token_gateway/token_key_response.rb +18 -0
  125. data/lib/telnyx/models/llm_token_gateway/token_key_retrieve_params.rb +22 -0
  126. data/lib/telnyx/models/llm_token_gateway/token_key_update_params.rb +127 -0
  127. data/lib/telnyx/models/llm_token_gateway/usage_retrieve_export_params.rb +52 -0
  128. data/lib/telnyx/models/llm_token_gateway/usage_retrieve_export_response.rb +585 -0
  129. data/lib/telnyx/models/llm_token_gateway/usage_retrieve_summary_params.rb +52 -0
  130. data/lib/telnyx/models/llm_token_gateway/usage_retrieve_summary_response.rb +534 -0
  131. data/lib/telnyx/models/meeting_session_delete_recording_media_response.rb +4 -4
  132. data/lib/telnyx/models/meeting_session_retrieve_recordings_response.rb +2 -3
  133. data/lib/telnyx/models/model_metadata.rb +9 -3
  134. data/lib/telnyx/models/number_reputation_external_verification_status_changed_webhook_event.rb +176 -0
  135. data/lib/telnyx/models/number_reputation_number_flagged_webhook_event.rb +198 -0
  136. data/lib/telnyx/models/number_reputation_number_removed_webhook_event.rb +204 -0
  137. data/lib/telnyx/models/organization_contact.rb +15 -6
  138. data/lib/telnyx/models/phone_numbers/job_list_params.rb +18 -3
  139. data/lib/telnyx/models/physical_address.rb +13 -4
  140. data/lib/telnyx/models/porting_order.rb +2 -0
  141. data/lib/telnyx/models/porting_orders/porting_phone_number_block.rb +2 -0
  142. data/lib/telnyx/models/porting_phone_number.rb +2 -0
  143. data/lib/telnyx/models/reputation/number_list_params.rb +19 -1
  144. data/lib/telnyx/models/requirement_list_params.rb +3 -0
  145. data/lib/telnyx/models/signature_payload.rb +28 -0
  146. data/lib/telnyx/models/sip_registration_status_list_params.rb +59 -0
  147. data/lib/telnyx/models/sip_registration_status_list_response.rb +220 -0
  148. data/lib/telnyx/models/spend_limit.rb +289 -0
  149. data/lib/telnyx/models/spend_limit_create_params.rb +144 -0
  150. data/lib/telnyx/models/spend_limit_delete_params.rb +37 -0
  151. data/lib/telnyx/models/spend_limit_list_params.rb +14 -0
  152. data/lib/telnyx/models/spend_limit_list_response.rb +51 -0
  153. data/lib/telnyx/models/spend_limit_period.rb +16 -0
  154. data/lib/telnyx/models/spend_limit_response.rb +17 -0
  155. data/lib/telnyx/models/spend_limit_update_params.rb +127 -0
  156. data/lib/telnyx/models/terms_of_service/tos_agreement.rb +8 -4
  157. data/lib/telnyx/models/terms_of_service_retrieve_info_response.rb +8 -4
  158. data/lib/telnyx/models/terms_of_service_retrieve_status_response.rb +2 -1
  159. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +4 -2
  160. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +5 -3
  161. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +17 -1
  162. data/lib/telnyx/models/unwrap_webhook_event.rb +17 -1
  163. data/lib/telnyx/models/update_email_template_request.rb +37 -3
  164. data/lib/telnyx/models/whatsapp/phone_numbers/calling_routing_list_params.rb +24 -0
  165. data/lib/telnyx/models/whatsapp/phone_numbers/calling_routing_list_response.rb +20 -0
  166. data/lib/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_params.rb +59 -0
  167. data/lib/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_response.rb +20 -0
  168. data/lib/telnyx/models/whatsapp/phone_numbers/whatsapp_calling_routing_data.rb +48 -0
  169. data/lib/telnyx/models/whatsapp/signup_list_params.rb +62 -0
  170. data/lib/telnyx/models/whatsapp/signup_list_response.rb +138 -0
  171. data/lib/telnyx/models/whatsapp/signup_retrieve_status_params.rb +22 -0
  172. data/lib/telnyx/models/whatsapp/signup_retrieve_status_response.rb +150 -0
  173. data/lib/telnyx/models/whatsapp_waba_added_webhook_event.rb +148 -0
  174. data/lib/telnyx/models.rb +47 -0
  175. data/lib/telnyx/resources/ai/assistants/deleted.rb +71 -0
  176. data/lib/telnyx/resources/ai/assistants/versions.rb +7 -1
  177. data/lib/telnyx/resources/ai/assistants.rb +118 -4
  178. data/lib/telnyx/resources/ai/conversations.rb +4 -1
  179. data/lib/telnyx/resources/ai/memory/namespaces/profiles.rb +41 -0
  180. data/lib/telnyx/resources/ai/memory/namespaces.rb +62 -1
  181. data/lib/telnyx/resources/ai/memory.rb +0 -1
  182. data/lib/telnyx/resources/ai/openai/chat.rb +1 -1
  183. data/lib/telnyx/resources/ai/tools.rb +2 -2
  184. data/lib/telnyx/resources/calls/actions.rb +41 -6
  185. data/lib/telnyx/resources/calls.rb +12 -1
  186. data/lib/telnyx/resources/dir/phone_numbers.rb +9 -8
  187. data/lib/telnyx/resources/dir/references.rb +6 -6
  188. data/lib/telnyx/resources/dir.rb +109 -16
  189. data/lib/telnyx/resources/email_templates.rb +32 -9
  190. data/lib/telnyx/resources/enterprises/dir.rb +14 -4
  191. data/lib/telnyx/resources/enterprises/reputation/external_verification.rb +74 -0
  192. data/lib/telnyx/resources/enterprises/reputation/loa.rb +1 -1
  193. data/lib/telnyx/resources/enterprises/reputation/numbers.rb +99 -3
  194. data/lib/telnyx/resources/enterprises/reputation.rb +36 -0
  195. data/lib/telnyx/resources/enterprises/verify_email.rb +75 -0
  196. data/lib/telnyx/resources/enterprises.rb +64 -32
  197. data/lib/telnyx/resources/llm_token_gateway/spend.rb +131 -0
  198. data/lib/telnyx/resources/llm_token_gateway/token_groups.rb +217 -0
  199. data/lib/telnyx/resources/llm_token_gateway/token_keys.rb +217 -0
  200. data/lib/telnyx/resources/llm_token_gateway/usage.rb +104 -0
  201. data/lib/telnyx/resources/llm_token_gateway.rb +34 -0
  202. data/lib/telnyx/resources/meeting_sessions.rb +6 -6
  203. data/lib/telnyx/resources/phone_numbers/jobs.rb +4 -3
  204. data/lib/telnyx/resources/reputation/numbers.rb +7 -1
  205. data/lib/telnyx/resources/sip_registration_status.rb +59 -0
  206. data/lib/telnyx/resources/spend_limits.rb +154 -0
  207. data/lib/telnyx/resources/texml.rb +5 -3
  208. data/lib/telnyx/resources/webhooks.rb +2 -2
  209. data/lib/telnyx/resources/whatsapp/phone_numbers/calling_routing.rb +91 -0
  210. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +5 -0
  211. data/lib/telnyx/resources/whatsapp/signup.rb +79 -0
  212. data/lib/telnyx/resources/whatsapp.rb +4 -0
  213. data/lib/telnyx/version.rb +1 -1
  214. data/lib/telnyx.rb +106 -3
  215. data/rbi/telnyx/client.rbi +36 -0
  216. data/rbi/telnyx/models/ai/assistant_create_params.rbi +67 -0
  217. data/rbi/telnyx/models/ai/assistant_delete_params.rbi +21 -2
  218. data/rbi/telnyx/models/ai/assistant_restore_params.rbi +37 -0
  219. data/rbi/telnyx/models/ai/assistant_update_params.rbi +67 -0
  220. data/rbi/telnyx/models/ai/assistant_whatsapp_params.rbi +139 -0
  221. data/rbi/telnyx/models/ai/assistant_whatsapp_response.rbi +44 -0
  222. data/rbi/telnyx/models/ai/assistants/deleted_assistant.rbi +52 -0
  223. data/rbi/telnyx/models/ai/assistants/deleted_get_params.rbi +42 -0
  224. data/rbi/telnyx/models/ai/assistants/deleted_list_params.rbi +64 -0
  225. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +69 -0
  226. data/rbi/telnyx/models/ai/avatar_settings_request.rbi +186 -0
  227. data/rbi/telnyx/models/ai/chat_completion_request.rbi +43 -8
  228. data/rbi/telnyx/models/ai/conversation_flow_req.rbi +2 -2
  229. data/rbi/telnyx/models/ai/conversation_list_params.rbi +19 -0
  230. data/rbi/telnyx/models/ai/delegation_settings.rbi +190 -0
  231. data/rbi/telnyx/models/ai/external_llm.rbi +2 -5
  232. data/rbi/telnyx/models/ai/flow_edge.rbi +23 -9
  233. data/rbi/telnyx/models/ai/flow_node_req.rbi +16 -5
  234. data/rbi/telnyx/models/ai/inference_embedding.rbi +66 -0
  235. data/rbi/telnyx/models/ai/inference_embedding_voice_settings.rbi +276 -6
  236. data/rbi/telnyx/models/ai/memory/namespace.rbi +38 -0
  237. data/rbi/telnyx/models/ai/memory/namespace_create_params.rbi +47 -0
  238. data/rbi/telnyx/models/ai/memory/namespace_create_response.rbi +41 -0
  239. data/rbi/telnyx/models/ai/memory/namespace_delete_params.rbi +47 -0
  240. data/rbi/telnyx/models/ai/memory/namespace_list_params.rbi +34 -0
  241. data/rbi/telnyx/models/ai/memory/namespace_list_response.rbi +36 -0
  242. data/rbi/telnyx/models/ai/memory/namespaces/profile_preview_params.rbi +72 -0
  243. data/rbi/telnyx/models/ai/memory/namespaces/profile_preview_response.rbi +97 -0
  244. data/rbi/telnyx/models/ai/pay_tool_params.rbi +107 -5
  245. data/rbi/telnyx/models/ai/telephony_settings.rbi +21 -0
  246. data/rbi/telnyx/models/ai/telnyx_avatar_settings.rbi +187 -0
  247. data/rbi/telnyx/models/ai/tool_node.rbi +31 -8
  248. data/rbi/telnyx/models/ai/tool_node_req.rbi +35 -10
  249. data/rbi/telnyx/models/ai/transcription_settings.rbi +564 -0
  250. data/rbi/telnyx/models/ai/voice_settings.rbi +6 -6
  251. data/rbi/telnyx/models/ai/websocket_settings.rbi +73 -0
  252. data/rbi/telnyx/models/billing_contact.rbi +16 -2
  253. data/rbi/telnyx/models/bpo_authorization_input.rbi +46 -0
  254. data/rbi/telnyx/models/call_assistant_request.rbi +30 -3
  255. data/rbi/telnyx/models/call_conversation_created_webhook_event.rbi +415 -0
  256. data/rbi/telnyx/models/call_conversation_ended.rbi +373 -0
  257. data/rbi/telnyx/models/call_conversation_start_failed_webhook_event.rbi +488 -0
  258. data/rbi/telnyx/models/call_dial_params.rbi +68 -12
  259. data/rbi/telnyx/models/call_machine_premium_call_screening_detected_webhook_event.rbi +399 -0
  260. data/rbi/telnyx/models/call_machine_premium_detection_started_webhook_event.rbi +336 -0
  261. data/rbi/telnyx/models/call_machine_premium_greeting_ended.rbi +14 -3
  262. data/rbi/telnyx/models/calls/action_answer_params.rbi +16 -8
  263. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +8 -8
  264. data/rbi/telnyx/models/calls/action_pay_params.rbi +74 -0
  265. data/rbi/telnyx/models/calls/action_reject_params.rbi +22 -3
  266. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +10 -6
  267. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +29 -14
  268. data/rbi/telnyx/models/calls/action_transfer_params.rbi +58 -6
  269. data/rbi/telnyx/models/calls/conversation_relay_transcription_engine_config.rbi +78 -0
  270. data/rbi/telnyx/models/calls/telnyx_voice_settings.rbi +8 -6
  271. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +29 -14
  272. data/rbi/telnyx/models/conversation_relay_language.rbi +21 -6
  273. data/rbi/telnyx/models/dir/phone_number_list_params.rbi +0 -11
  274. data/rbi/telnyx/models/dir/phone_number_remove_params.rbi +9 -1
  275. data/rbi/telnyx/models/dir/reference_update_params.rbi +18 -12
  276. data/rbi/telnyx/models/dir.rbi +31 -3
  277. data/rbi/telnyx/models/dir_bpo_loa_params.rbi +66 -0
  278. data/rbi/telnyx/models/dir_delete_response.rbi +105 -0
  279. data/rbi/telnyx/models/dir_new_loa_params.rbi +10 -49
  280. data/rbi/telnyx/models/dir_retrieve_bpo_authorizations_params.rbi +66 -0
  281. data/rbi/telnyx/models/dir_retrieve_bpo_authorizations_response.rbi +235 -0
  282. data/rbi/telnyx/models/dir_status.rbi +6 -0
  283. data/rbi/telnyx/models/dir_update_infringement_params.rbi +10 -3
  284. data/rbi/telnyx/models/dir_update_params.rbi +37 -0
  285. data/rbi/telnyx/models/doc_reqs_requirement.rbi +15 -0
  286. data/rbi/telnyx/models/document.rbi +2 -0
  287. data/rbi/telnyx/models/email_template.rbi +4 -170
  288. data/rbi/telnyx/models/email_template_common.rbi +238 -0
  289. data/rbi/telnyx/models/email_template_create_params.rbi +77 -7
  290. data/rbi/telnyx/models/email_template_list_params.rbi +215 -0
  291. data/rbi/telnyx/models/email_template_render_response.rbi +13 -10
  292. data/rbi/telnyx/models/enterprise_create_params.rbi +74 -23
  293. data/rbi/telnyx/models/enterprise_list_params.rbi +55 -0
  294. data/rbi/telnyx/models/enterprise_public.rbi +176 -12
  295. data/rbi/telnyx/models/enterprise_update_params.rbi +74 -4
  296. data/rbi/telnyx/models/enterprises/dir_create_params.rbi +43 -3
  297. data/rbi/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rbi +208 -0
  298. data/rbi/telnyx/models/enterprises/enterprise_reputation_public.rbi +33 -3
  299. data/rbi/telnyx/models/enterprises/reputation/agent_input.rbi +39 -2
  300. data/rbi/telnyx/models/enterprises/reputation/external_verification_create_params.rbi +77 -0
  301. data/rbi/telnyx/models/enterprises/reputation/external_verification_list_params.rbi +42 -0
  302. data/rbi/telnyx/models/enterprises/reputation/external_verification_status.rbi +50 -0
  303. data/rbi/telnyx/models/enterprises/reputation/external_verification_wrapped.rbi +158 -0
  304. data/rbi/telnyx/models/enterprises/reputation/loa_render_params.rbi +109 -4
  305. data/rbi/telnyx/models/enterprises/reputation/number_list_params.rbi +52 -0
  306. data/rbi/telnyx/models/enterprises/reputation/number_ownership_confirm_params.rbi +75 -0
  307. data/rbi/telnyx/models/enterprises/reputation/number_retrieve_ownership_params.rbi +50 -0
  308. data/rbi/telnyx/models/enterprises/reputation/number_retrieve_ownership_response.rbi +279 -0
  309. data/rbi/telnyx/models/enterprises/reputation/remediation_request.rbi +6 -4
  310. data/rbi/telnyx/models/enterprises/reputation/reputation_number_source.rbi +47 -0
  311. data/rbi/telnyx/models/enterprises/reputation/reputation_ownership_status.rbi +64 -0
  312. data/rbi/telnyx/models/enterprises/reputation/reputation_phone_number.rbi +180 -2
  313. data/rbi/telnyx/models/enterprises/reputation_update_webhook_params.rbi +56 -0
  314. data/rbi/telnyx/models/enterprises/verify_email_confirm_params.rbi +54 -0
  315. data/rbi/telnyx/models/enterprises/verify_email_create_params.rbi +40 -0
  316. data/rbi/telnyx/models/infringement_claim.rbi +8 -0
  317. data/rbi/telnyx/models/llm_token_gateway/ai_gateway_resources_page_meta.rbi +53 -0
  318. data/rbi/telnyx/models/llm_token_gateway/budget_duration.rbi +32 -0
  319. data/rbi/telnyx/models/llm_token_gateway/guardrail_finding.rbi +131 -0
  320. data/rbi/telnyx/models/llm_token_gateway/spend_group_by.rbi +45 -0
  321. data/rbi/telnyx/models/llm_token_gateway/spend_retrieve_events_params.rbi +144 -0
  322. data/rbi/telnyx/models/llm_token_gateway/spend_retrieve_events_response.rbi +475 -0
  323. data/rbi/telnyx/models/llm_token_gateway/spend_retrieve_summary_params.rbi +154 -0
  324. data/rbi/telnyx/models/llm_token_gateway/spend_retrieve_summary_response.rbi +265 -0
  325. data/rbi/telnyx/models/llm_token_gateway/token_group.rbi +891 -0
  326. data/rbi/telnyx/models/llm_token_gateway/token_group_create_params.rbi +867 -0
  327. data/rbi/telnyx/models/llm_token_gateway/token_group_delete_params.rbi +53 -0
  328. data/rbi/telnyx/models/llm_token_gateway/token_group_list_params.rbi +71 -0
  329. data/rbi/telnyx/models/llm_token_gateway/token_group_response.rbi +35 -0
  330. data/rbi/telnyx/models/llm_token_gateway/token_group_retrieve_params.rbi +40 -0
  331. data/rbi/telnyx/models/llm_token_gateway/token_group_update_params.rbi +885 -0
  332. data/rbi/telnyx/models/llm_token_gateway/token_key.rbi +281 -0
  333. data/rbi/telnyx/models/llm_token_gateway/token_key_create_params.rbi +160 -0
  334. data/rbi/telnyx/models/llm_token_gateway/token_key_delete_params.rbi +53 -0
  335. data/rbi/telnyx/models/llm_token_gateway/token_key_list_params.rbi +89 -0
  336. data/rbi/telnyx/models/llm_token_gateway/token_key_response.rbi +35 -0
  337. data/rbi/telnyx/models/llm_token_gateway/token_key_retrieve_params.rbi +40 -0
  338. data/rbi/telnyx/models/llm_token_gateway/token_key_update_params.rbi +165 -0
  339. data/rbi/telnyx/models/llm_token_gateway/usage_retrieve_export_params.rbi +86 -0
  340. data/rbi/telnyx/models/llm_token_gateway/usage_retrieve_export_response.rbi +991 -0
  341. data/rbi/telnyx/models/llm_token_gateway/usage_retrieve_summary_params.rbi +77 -0
  342. data/rbi/telnyx/models/llm_token_gateway/usage_retrieve_summary_response.rbi +828 -0
  343. data/rbi/telnyx/models/meeting_session_delete_recording_media_response.rbi +1 -1
  344. data/rbi/telnyx/models/meeting_session_retrieve_recordings_response.rbi +2 -4
  345. data/rbi/telnyx/models/model_metadata.rbi +16 -4
  346. data/rbi/telnyx/models/number_reputation_external_verification_status_changed_webhook_event.rbi +384 -0
  347. data/rbi/telnyx/models/number_reputation_number_flagged_webhook_event.rbi +425 -0
  348. data/rbi/telnyx/models/number_reputation_number_removed_webhook_event.rbi +440 -0
  349. data/rbi/telnyx/models/organization_contact.rbi +14 -2
  350. data/rbi/telnyx/models/phone_numbers/job_list_params.rbi +27 -3
  351. data/rbi/telnyx/models/physical_address.rbi +12 -0
  352. data/rbi/telnyx/models/porting_order.rbi +7 -0
  353. data/rbi/telnyx/models/porting_orders/porting_phone_number_block.rbi +10 -0
  354. data/rbi/telnyx/models/porting_phone_number.rbi +10 -0
  355. data/rbi/telnyx/models/reputation/number_list_params.rbi +52 -0
  356. data/rbi/telnyx/models/requirement_list_params.rbi +15 -0
  357. data/rbi/telnyx/models/signature_payload.rbi +43 -0
  358. data/rbi/telnyx/models/sip_registration_status_list_params.rbi +124 -0
  359. data/rbi/telnyx/models/sip_registration_status_list_response.rbi +429 -0
  360. data/rbi/telnyx/models/spend_limit.rbi +385 -0
  361. data/rbi/telnyx/models/spend_limit_create_params.rbi +301 -0
  362. data/rbi/telnyx/models/spend_limit_delete_params.rbi +63 -0
  363. data/rbi/telnyx/models/spend_limit_list_params.rbi +27 -0
  364. data/rbi/telnyx/models/spend_limit_list_response.rbi +109 -0
  365. data/rbi/telnyx/models/spend_limit_period.rbi +20 -0
  366. data/rbi/telnyx/models/spend_limit_response.rbi +30 -0
  367. data/rbi/telnyx/models/spend_limit_update_params.rbi +280 -0
  368. data/rbi/telnyx/models/terms_of_service/tos_agreement.rbi +8 -0
  369. data/rbi/telnyx/models/terms_of_service_retrieve_info_response.rbi +8 -0
  370. data/rbi/telnyx/models/terms_of_service_retrieve_status_response.rbi +2 -0
  371. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +6 -2
  372. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +8 -4
  373. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +9 -1
  374. data/rbi/telnyx/models/unwrap_webhook_event.rbi +9 -1
  375. data/rbi/telnyx/models/update_email_template_request.rbi +78 -6
  376. data/rbi/telnyx/models/whatsapp/phone_numbers/calling_routing_list_params.rbi +42 -0
  377. data/rbi/telnyx/models/whatsapp/phone_numbers/calling_routing_list_response.rbi +51 -0
  378. data/rbi/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_params.rbi +94 -0
  379. data/rbi/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_response.rbi +51 -0
  380. data/rbi/telnyx/models/whatsapp/phone_numbers/whatsapp_calling_routing_data.rbi +96 -0
  381. data/rbi/telnyx/models/whatsapp/signup_list_params.rbi +99 -0
  382. data/rbi/telnyx/models/whatsapp/signup_list_response.rbi +313 -0
  383. data/rbi/telnyx/models/whatsapp/signup_retrieve_status_params.rbi +40 -0
  384. data/rbi/telnyx/models/whatsapp/signup_retrieve_status_response.rbi +363 -0
  385. data/rbi/telnyx/models/whatsapp_waba_added_webhook_event.rbi +324 -0
  386. data/rbi/telnyx/models.rbi +53 -0
  387. data/rbi/telnyx/resources/ai/assistants/deleted.rbi +58 -0
  388. data/rbi/telnyx/resources/ai/assistants/versions.rbi +22 -0
  389. data/rbi/telnyx/resources/ai/assistants.rbi +142 -0
  390. data/rbi/telnyx/resources/ai/conversations.rbi +7 -0
  391. data/rbi/telnyx/resources/ai/memory/namespaces/profiles.rbi +35 -0
  392. data/rbi/telnyx/resources/ai/memory/namespaces.rbi +39 -1
  393. data/rbi/telnyx/resources/ai/memory.rbi +0 -1
  394. data/rbi/telnyx/resources/ai/openai/chat.rbi +21 -2
  395. data/rbi/telnyx/resources/ai/tools.rbi +1 -1
  396. data/rbi/telnyx/resources/calls/actions.rbi +91 -20
  397. data/rbi/telnyx/resources/calls.rbi +28 -5
  398. data/rbi/telnyx/resources/dir/phone_numbers.rbi +6 -7
  399. data/rbi/telnyx/resources/dir/references.rbi +9 -6
  400. data/rbi/telnyx/resources/dir.rbi +103 -14
  401. data/rbi/telnyx/resources/email_templates.rbi +68 -6
  402. data/rbi/telnyx/resources/enterprises/dir.rbi +23 -3
  403. data/rbi/telnyx/resources/enterprises/reputation/external_verification.rbi +65 -0
  404. data/rbi/telnyx/resources/enterprises/reputation/loa.rbi +2 -1
  405. data/rbi/telnyx/resources/enterprises/reputation/numbers.rbi +78 -2
  406. data/rbi/telnyx/resources/enterprises/reputation.rbi +29 -0
  407. data/rbi/telnyx/resources/enterprises/verify_email.rbi +64 -0
  408. data/rbi/telnyx/resources/enterprises.rbi +105 -19
  409. data/rbi/telnyx/resources/llm_token_gateway/spend.rbi +116 -0
  410. data/rbi/telnyx/resources/llm_token_gateway/token_groups.rbi +278 -0
  411. data/rbi/telnyx/resources/llm_token_gateway/token_keys.rbi +220 -0
  412. data/rbi/telnyx/resources/llm_token_gateway/usage.rbi +90 -0
  413. data/rbi/telnyx/resources/llm_token_gateway.rbi +28 -0
  414. data/rbi/telnyx/resources/meeting_sessions.rbi +6 -6
  415. data/rbi/telnyx/resources/phone_numbers/jobs.rbi +6 -4
  416. data/rbi/telnyx/resources/reputation/numbers.rbi +10 -0
  417. data/rbi/telnyx/resources/sip_registration_status.rbi +52 -0
  418. data/rbi/telnyx/resources/spend_limits.rbi +126 -0
  419. data/rbi/telnyx/resources/texml.rbi +7 -3
  420. data/rbi/telnyx/resources/webhooks.rbi +18 -2
  421. data/rbi/telnyx/resources/whatsapp/phone_numbers/calling_routing.rbi +82 -0
  422. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +6 -0
  423. data/rbi/telnyx/resources/whatsapp/signup.rbi +61 -0
  424. data/rbi/telnyx/resources/whatsapp.rbi +3 -0
  425. data/sig/telnyx/client.rbs +6 -0
  426. data/sig/telnyx/models/ai/assistant_create_params.rbs +23 -0
  427. data/sig/telnyx/models/ai/assistant_delete_params.rbs +8 -1
  428. data/sig/telnyx/models/ai/assistant_restore_params.rbs +25 -0
  429. data/sig/telnyx/models/ai/assistant_update_params.rbs +23 -0
  430. data/sig/telnyx/models/ai/assistant_whatsapp_params.rbs +67 -0
  431. data/sig/telnyx/models/ai/assistant_whatsapp_response.rbs +18 -0
  432. data/sig/telnyx/models/ai/assistants/deleted_assistant.rbs +29 -0
  433. data/sig/telnyx/models/ai/assistants/deleted_get_params.rbs +27 -0
  434. data/sig/telnyx/models/ai/assistants/deleted_list_params.rbs +36 -0
  435. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +23 -0
  436. data/sig/telnyx/models/ai/avatar_settings_request.rbs +74 -0
  437. data/sig/telnyx/models/ai/chat_completion_request.rbs +4 -6
  438. data/sig/telnyx/models/ai/conversation_list_params.rbs +7 -0
  439. data/sig/telnyx/models/ai/delegation_settings.rbs +79 -0
  440. data/sig/telnyx/models/ai/inference_embedding.rbs +23 -0
  441. data/sig/telnyx/models/ai/inference_embedding_voice_settings.rbs +96 -0
  442. data/sig/telnyx/models/ai/memory/namespace.rbs +19 -0
  443. data/sig/telnyx/models/ai/memory/namespace_create_params.rbs +27 -0
  444. data/sig/telnyx/models/ai/memory/namespace_create_response.rbs +17 -0
  445. data/sig/telnyx/models/ai/memory/namespace_delete_params.rbs +27 -0
  446. data/sig/telnyx/models/ai/memory/namespace_list_params.rbs +19 -0
  447. data/sig/telnyx/models/ai/memory/namespace_list_response.rbs +18 -0
  448. data/sig/telnyx/models/ai/memory/namespaces/profile_preview_params.rbs +38 -0
  449. data/sig/telnyx/models/ai/memory/namespaces/profile_preview_response.rbs +38 -0
  450. data/sig/telnyx/models/ai/pay_tool_params.rbs +46 -3
  451. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  452. data/sig/telnyx/models/ai/telnyx_avatar_settings.rbs +74 -0
  453. data/sig/telnyx/models/ai/tool_node.rbs +7 -0
  454. data/sig/telnyx/models/ai/tool_node_req.rbs +7 -0
  455. data/sig/telnyx/models/ai/transcription_settings.rbs +159 -0
  456. data/sig/telnyx/models/ai/websocket_settings.rbs +29 -0
  457. data/sig/telnyx/models/bpo_authorization_input.rbs +19 -0
  458. data/sig/telnyx/models/call_assistant_request.rbs +9 -0
  459. data/sig/telnyx/models/call_conversation_created_webhook_event.rbs +190 -0
  460. data/sig/telnyx/models/call_conversation_ended.rbs +137 -0
  461. data/sig/telnyx/models/call_conversation_start_failed_webhook_event.rbs +210 -0
  462. data/sig/telnyx/models/call_dial_params.rbs +9 -0
  463. data/sig/telnyx/models/call_machine_premium_call_screening_detected_webhook_event.rbs +177 -0
  464. data/sig/telnyx/models/call_machine_premium_detection_started_webhook_event.rbs +156 -0
  465. data/sig/telnyx/models/call_machine_premium_greeting_ended.rbs +2 -1
  466. data/sig/telnyx/models/calls/action_pay_params.rbs +24 -0
  467. data/sig/telnyx/models/calls/action_reject_params.rbs +4 -1
  468. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +6 -6
  469. data/sig/telnyx/models/calls/action_transfer_params.rbs +9 -0
  470. data/sig/telnyx/models/calls/conversation_relay_transcription_engine_config.rbs +38 -0
  471. data/sig/telnyx/models/conversation_relay_embedded_config.rbs +6 -6
  472. data/sig/telnyx/models/conversation_relay_language.rbs +6 -6
  473. data/sig/telnyx/models/dir/phone_number_list_params.rbs +1 -14
  474. data/sig/telnyx/models/dir.rbs +13 -3
  475. data/sig/telnyx/models/dir_bpo_loa_params.rbs +38 -0
  476. data/sig/telnyx/models/dir_delete_response.rbs +42 -0
  477. data/sig/telnyx/models/dir_new_loa_params.rbs +5 -19
  478. data/sig/telnyx/models/dir_retrieve_bpo_authorizations_params.rbs +36 -0
  479. data/sig/telnyx/models/dir_retrieve_bpo_authorizations_response.rbs +84 -0
  480. data/sig/telnyx/models/dir_status.rbs +2 -0
  481. data/sig/telnyx/models/dir_update_params.rbs +15 -1
  482. data/sig/telnyx/models/doc_reqs_requirement.rbs +5 -1
  483. data/sig/telnyx/models/email_template.rbs +6 -90
  484. data/sig/telnyx/models/email_template_common.rbs +110 -0
  485. data/sig/telnyx/models/email_template_create_params.rbs +23 -5
  486. data/sig/telnyx/models/email_template_list_params.rbs +74 -1
  487. data/sig/telnyx/models/email_template_render_response.rbs +8 -4
  488. data/sig/telnyx/models/enterprise_list_params.rbs +20 -0
  489. data/sig/telnyx/models/enterprise_public.rbs +40 -5
  490. data/sig/telnyx/models/enterprises/dir_create_params.rbs +15 -1
  491. data/sig/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rbs +82 -0
  492. data/sig/telnyx/models/enterprises/enterprise_reputation_public.rbs +13 -3
  493. data/sig/telnyx/models/enterprises/reputation/external_verification_create_params.rbs +42 -0
  494. data/sig/telnyx/models/enterprises/reputation/external_verification_list_params.rbs +27 -0
  495. data/sig/telnyx/models/enterprises/reputation/external_verification_status.rbs +19 -0
  496. data/sig/telnyx/models/enterprises/reputation/external_verification_wrapped.rbs +81 -0
  497. data/sig/telnyx/models/enterprises/reputation/loa_render_params.rbs +78 -6
  498. data/sig/telnyx/models/enterprises/reputation/number_list_params.rbs +18 -0
  499. data/sig/telnyx/models/enterprises/reputation/number_ownership_confirm_params.rbs +47 -0
  500. data/sig/telnyx/models/enterprises/reputation/number_retrieve_ownership_params.rbs +32 -0
  501. data/sig/telnyx/models/enterprises/reputation/number_retrieve_ownership_response.rbs +122 -0
  502. data/sig/telnyx/models/enterprises/reputation/reputation_number_source.rbs +20 -0
  503. data/sig/telnyx/models/enterprises/reputation/reputation_ownership_status.rbs +23 -0
  504. data/sig/telnyx/models/enterprises/reputation/reputation_phone_number.rbs +57 -0
  505. data/sig/telnyx/models/enterprises/reputation_update_webhook_params.rbs +30 -0
  506. data/sig/telnyx/models/enterprises/verify_email_confirm_params.rbs +30 -0
  507. data/sig/telnyx/models/enterprises/verify_email_create_params.rbs +25 -0
  508. data/sig/telnyx/models/llm_token_gateway/ai_gateway_resources_page_meta.rbs +37 -0
  509. data/sig/telnyx/models/llm_token_gateway/budget_duration.rbs +17 -0
  510. data/sig/telnyx/models/llm_token_gateway/guardrail_finding.rbs +60 -0
  511. data/sig/telnyx/models/llm_token_gateway/spend_group_by.rbs +19 -0
  512. data/sig/telnyx/models/llm_token_gateway/spend_retrieve_events_params.rbs +93 -0
  513. data/sig/telnyx/models/llm_token_gateway/spend_retrieve_events_response.rbs +226 -0
  514. data/sig/telnyx/models/llm_token_gateway/spend_retrieve_summary_params.rbs +94 -0
  515. data/sig/telnyx/models/llm_token_gateway/spend_retrieve_summary_response.rbs +153 -0
  516. data/sig/telnyx/models/llm_token_gateway/token_group.rbs +356 -0
  517. data/sig/telnyx/models/llm_token_gateway/token_group_create_params.rbs +326 -0
  518. data/sig/telnyx/models/llm_token_gateway/token_group_delete_params.rbs +34 -0
  519. data/sig/telnyx/models/llm_token_gateway/token_group_list_params.rbs +40 -0
  520. data/sig/telnyx/models/llm_token_gateway/token_group_response.rbs +15 -0
  521. data/sig/telnyx/models/llm_token_gateway/token_group_retrieve_params.rbs +22 -0
  522. data/sig/telnyx/models/llm_token_gateway/token_group_update_params.rbs +340 -0
  523. data/sig/telnyx/models/llm_token_gateway/token_key.rbs +147 -0
  524. data/sig/telnyx/models/llm_token_gateway/token_key_create_params.rbs +92 -0
  525. data/sig/telnyx/models/llm_token_gateway/token_key_delete_params.rbs +34 -0
  526. data/sig/telnyx/models/llm_token_gateway/token_key_list_params.rbs +58 -0
  527. data/sig/telnyx/models/llm_token_gateway/token_key_response.rbs +15 -0
  528. data/sig/telnyx/models/llm_token_gateway/token_key_retrieve_params.rbs +22 -0
  529. data/sig/telnyx/models/llm_token_gateway/token_key_update_params.rbs +94 -0
  530. data/sig/telnyx/models/llm_token_gateway/usage_retrieve_export_params.rbs +46 -0
  531. data/sig/telnyx/models/llm_token_gateway/usage_retrieve_export_response.rbs +463 -0
  532. data/sig/telnyx/models/llm_token_gateway/usage_retrieve_summary_params.rbs +45 -0
  533. data/sig/telnyx/models/llm_token_gateway/usage_retrieve_summary_response.rbs +433 -0
  534. data/sig/telnyx/models/meeting_session_delete_recording_media_response.rbs +4 -4
  535. data/sig/telnyx/models/number_reputation_external_verification_status_changed_webhook_event.rbs +153 -0
  536. data/sig/telnyx/models/number_reputation_number_flagged_webhook_event.rbs +172 -0
  537. data/sig/telnyx/models/number_reputation_number_removed_webhook_event.rbs +178 -0
  538. data/sig/telnyx/models/phone_numbers/job_list_params.rbs +7 -0
  539. data/sig/telnyx/models/porting_order.rbs +10 -1
  540. data/sig/telnyx/models/porting_orders/porting_phone_number_block.rbs +10 -1
  541. data/sig/telnyx/models/porting_phone_number.rbs +10 -1
  542. data/sig/telnyx/models/reputation/number_list_params.rbs +18 -0
  543. data/sig/telnyx/models/requirement_list_params.rbs +10 -1
  544. data/sig/telnyx/models/signature_payload.rbs +15 -0
  545. data/sig/telnyx/models/sip_registration_status_list_params.rbs +55 -0
  546. data/sig/telnyx/models/sip_registration_status_list_response.rbs +195 -0
  547. data/sig/telnyx/models/spend_limit.rbs +208 -0
  548. data/sig/telnyx/models/spend_limit_create_params.rbs +139 -0
  549. data/sig/telnyx/models/spend_limit_delete_params.rbs +42 -0
  550. data/sig/telnyx/models/spend_limit_list_params.rbs +15 -0
  551. data/sig/telnyx/models/spend_limit_list_response.rbs +69 -0
  552. data/sig/telnyx/models/spend_limit_period.rbs +14 -0
  553. data/sig/telnyx/models/spend_limit_response.rbs +13 -0
  554. data/sig/telnyx/models/spend_limit_update_params.rbs +127 -0
  555. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +8 -0
  556. data/sig/telnyx/models/unwrap_webhook_event.rbs +8 -0
  557. data/sig/telnyx/models/update_email_template_request.rbs +23 -5
  558. data/sig/telnyx/models/whatsapp/phone_numbers/calling_routing_list_params.rbs +27 -0
  559. data/sig/telnyx/models/whatsapp/phone_numbers/calling_routing_list_response.rbs +22 -0
  560. data/sig/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_params.rbs +43 -0
  561. data/sig/telnyx/models/whatsapp/phone_numbers/calling_routing_patch_all_response.rbs +22 -0
  562. data/sig/telnyx/models/whatsapp/phone_numbers/whatsapp_calling_routing_data.rbs +44 -0
  563. data/sig/telnyx/models/whatsapp/signup_list_params.rbs +65 -0
  564. data/sig/telnyx/models/whatsapp/signup_list_response.rbs +139 -0
  565. data/sig/telnyx/models/whatsapp/signup_retrieve_status_params.rbs +22 -0
  566. data/sig/telnyx/models/whatsapp/signup_retrieve_status_response.rbs +158 -0
  567. data/sig/telnyx/models/whatsapp_waba_added_webhook_event.rbs +140 -0
  568. data/sig/telnyx/models.rbs +44 -0
  569. data/sig/telnyx/resources/ai/assistants/deleted.rbs +22 -0
  570. data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -0
  571. data/sig/telnyx/resources/ai/assistants.rbs +24 -0
  572. data/sig/telnyx/resources/ai/conversations.rbs +1 -0
  573. data/sig/telnyx/resources/ai/memory/namespaces/profiles.rbs +7 -0
  574. data/sig/telnyx/resources/ai/memory/namespaces.rbs +14 -0
  575. data/sig/telnyx/resources/ai/openai/chat.rbs +1 -1
  576. data/sig/telnyx/resources/ai/tools.rbs +1 -1
  577. data/sig/telnyx/resources/calls/actions.rbs +3 -1
  578. data/sig/telnyx/resources/dir/phone_numbers.rbs +0 -1
  579. data/sig/telnyx/resources/dir.rbs +21 -2
  580. data/sig/telnyx/resources/email_templates.rbs +10 -3
  581. data/sig/telnyx/resources/enterprises/dir.rbs +2 -0
  582. data/sig/telnyx/resources/enterprises/reputation/external_verification.rbs +23 -0
  583. data/sig/telnyx/resources/enterprises/reputation/loa.rbs +1 -1
  584. data/sig/telnyx/resources/enterprises/reputation/numbers.rbs +16 -0
  585. data/sig/telnyx/resources/enterprises/reputation.rbs +8 -0
  586. data/sig/telnyx/resources/enterprises/verify_email.rbs +20 -0
  587. data/sig/telnyx/resources/enterprises.rbs +3 -0
  588. data/sig/telnyx/resources/llm_token_gateway/spend.rbs +38 -0
  589. data/sig/telnyx/resources/llm_token_gateway/token_groups.rbs +66 -0
  590. data/sig/telnyx/resources/llm_token_gateway/token_keys.rbs +64 -0
  591. data/sig/telnyx/resources/llm_token_gateway/usage.rbs +25 -0
  592. data/sig/telnyx/resources/llm_token_gateway.rbs +15 -0
  593. data/sig/telnyx/resources/reputation/numbers.rbs +2 -0
  594. data/sig/telnyx/resources/sip_registration_status.rbs +14 -0
  595. data/sig/telnyx/resources/spend_limits.rbs +30 -0
  596. data/sig/telnyx/resources/webhooks.rbs +18 -2
  597. data/sig/telnyx/resources/whatsapp/phone_numbers/calling_routing.rbs +22 -0
  598. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +2 -0
  599. data/sig/telnyx/resources/whatsapp/signup.rbs +24 -0
  600. data/sig/telnyx/resources/whatsapp.rbs +2 -0
  601. metadata +314 -5
  602. data/lib/telnyx/models/ai/tool_delete_response.rb +0 -10
  603. data/rbi/telnyx/models/ai/tool_delete_response.rbi +0 -9
  604. data/sig/telnyx/models/ai/tool_delete_response.rbs +0 -7
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AI
6
+ class Assistants
7
+ # Configure AI assistant specifications
8
+ class Deleted
9
+ # List the organization's soft-deleted assistants in the Recently Deleted list.
10
+ #
11
+ # Each entry includes `deleted_at` and `permanently_deleted_at`, the point after
12
+ # which the assistant is erased automatically and can no longer be restored.
13
+ #
14
+ # @overload list(page_number: nil, page_size: nil, request_options: {})
15
+ #
16
+ # @param page_number [Integer] Page number to retrieve (1-based).
17
+ #
18
+ # @param page_size [Integer] Number of items to return per page.
19
+ #
20
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
21
+ #
22
+ # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::AI::Assistants::DeletedAssistant>]
23
+ #
24
+ # @see Telnyx::Models::AI::Assistants::DeletedListParams
25
+ def list(params = {})
26
+ parsed, options = Telnyx::AI::Assistants::DeletedListParams.dump_request(params)
27
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
28
+ @client.request(
29
+ method: :get,
30
+ path: "ai/assistants/deleted",
31
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
32
+ page: Telnyx::Internal::DefaultFlatPagination,
33
+ model: Telnyx::AI::Assistants::DeletedAssistant,
34
+ options: options
35
+ )
36
+ end
37
+
38
+ # Retrieve a soft-deleted assistant from the Recently Deleted list by
39
+ # `assistant_id`, including its `deleted_at` and `permanently_deleted_at`
40
+ # timestamps. This is a read-only view; the assistant cannot be modified while it
41
+ # remains deleted.
42
+ #
43
+ # @overload get(assistant_id, request_options: {})
44
+ #
45
+ # @param assistant_id [String] Unique identifier of the assistant.
46
+ #
47
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
48
+ #
49
+ # @return [Telnyx::Models::AI::Assistants::DeletedAssistant]
50
+ #
51
+ # @see Telnyx::Models::AI::Assistants::DeletedGetParams
52
+ def get(assistant_id, params = {})
53
+ @client.request(
54
+ method: :get,
55
+ path: ["ai/assistants/%1$s/deleted", assistant_id],
56
+ model: Telnyx::AI::Assistants::DeletedAssistant,
57
+ options: params[:request_options]
58
+ )
59
+ end
60
+
61
+ # @api private
62
+ #
63
+ # @param client [Telnyx::Client]
64
+ def initialize(client:)
65
+ @client = client
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -43,7 +43,7 @@ module Telnyx
43
43
  # Updates the configuration of a specific assistant version. Can not update main
44
44
  # version
45
45
  #
46
- # @overload update(version_id, assistant_id:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
46
+ # @overload update(version_id, assistant_id:, a2a_agents: nil, avatar_settings: nil, conversation_flow: nil, delegation_settings: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, websocket_settings: nil, widget_settings: nil, request_options: {})
47
47
  #
48
48
  # @param version_id [String] Path param: Unique identifier of the version.
49
49
  #
@@ -51,8 +51,12 @@ module Telnyx
51
51
  #
52
52
  # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] Body param: A2A agents this assistant can delegate to. Tools are not stored here
53
53
  #
54
+ # @param avatar_settings [Telnyx::Models::AI::AvatarSettingsRequest, nil] Body param: **Beta:** Configuration for the Telnyx open-source avatar provider.
55
+ #
54
56
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Body param: Conversation flow as supplied by API clients (create / update).
55
57
  #
58
+ # @param delegation_settings [Telnyx::Models::AI::DelegationSettings] Body param: Splits the conversation between a frontend model that talks to the c
59
+ #
56
60
  # @param description [String] Body param
57
61
  #
58
62
  # @param dynamic_variables [Hash{Symbol=>Object}] Body param: Map of dynamic variables and their default values
@@ -107,6 +111,8 @@ module Telnyx
107
111
  #
108
112
  # @param voice_settings [Telnyx::Models::AI::InferenceEmbeddingVoiceSettings] Body param
109
113
  #
114
+ # @param websocket_settings [Telnyx::Models::AI::WebsocketSettings] Body param: Streams conversation and telephony events to a WebSocket server you
115
+ #
110
116
  # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Body param: Configuration settings for the assistant's web widget.
111
117
  #
112
118
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -33,13 +33,17 @@ module Telnyx
33
33
  # @return [Telnyx::Resources::AI::Assistants::Instructions]
34
34
  attr_reader :instructions
35
35
 
36
+ # Configure AI assistant specifications
37
+ # @return [Telnyx::Resources::AI::Assistants::Deleted]
38
+ attr_reader :deleted
39
+
36
40
  # Some parameter documentations has been truncated, see
37
41
  # {Telnyx::Models::AI::AssistantCreateParams} for more details.
38
42
  #
39
43
  # Creates a new AI assistant from the provided configuration, including its model,
40
44
  # instructions, and attached tools, and returns the created assistant.
41
45
  #
42
- # @overload create(instructions:, name:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
46
+ # @overload create(instructions:, name:, a2a_agents: nil, avatar_settings: nil, conversation_flow: nil, delegation_settings: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, websocket_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
43
47
  #
44
48
  # @param instructions [String] Body param: System instructions for the assistant. These may be templated with [
45
49
  #
@@ -47,8 +51,12 @@ module Telnyx
47
51
  #
48
52
  # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] Body param: A2A agents this assistant can delegate to. Tools are not stored here
49
53
  #
54
+ # @param avatar_settings [Telnyx::Models::AI::AvatarSettingsRequest, nil] Body param: **Beta:** Configuration for the Telnyx open-source avatar provider.
55
+ #
50
56
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Body param: Conversation flow as supplied by API clients (create / update).
51
57
  #
58
+ # @param delegation_settings [Telnyx::Models::AI::DelegationSettings] Body param: Splits the conversation between a frontend model that talks to the c
59
+ #
52
60
  # @param description [String] Body param
53
61
  #
54
62
  # @param dynamic_variables [Hash{Symbol=>Object}] Body param: Map of dynamic variables and their default values
@@ -97,6 +105,8 @@ module Telnyx
97
105
  #
98
106
  # @param voice_settings [Telnyx::Models::AI::InferenceEmbeddingVoiceSettings] Body param
99
107
  #
108
+ # @param websocket_settings [Telnyx::Models::AI::WebsocketSettings] Body param: Streams conversation and telephony events to a WebSocket server you
109
+ #
100
110
  # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Body param: Configuration settings for the assistant's web widget.
101
111
  #
102
112
  # @param idempotency_key [String] Header param: Optional opaque, unquoted key for safely retrying the same logical
@@ -157,14 +167,18 @@ module Telnyx
157
167
  # assistant. The request can also control how the change is promoted across
158
168
  # assistant versions.
159
169
  #
160
- # @overload update(assistant_id, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
170
+ # @overload update(assistant_id, a2a_agents: nil, avatar_settings: nil, conversation_flow: nil, delegation_settings: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, websocket_settings: nil, widget_settings: nil, request_options: {})
161
171
  #
162
172
  # @param assistant_id [String] Unique identifier of the assistant.
163
173
  #
164
174
  # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] A2A agents this assistant can delegate to. Tools are not stored here: at the sta
165
175
  #
176
+ # @param avatar_settings [Telnyx::Models::AI::AvatarSettingsRequest, nil] **Beta:** Configuration for the Telnyx open-source avatar provider. The launch c
177
+ #
166
178
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Conversation flow as supplied by API clients (create / update).
167
179
  #
180
+ # @param delegation_settings [Telnyx::Models::AI::DelegationSettings] Splits the conversation between a frontend model that talks to the caller and a
181
+ #
168
182
  # @param description [String]
169
183
  #
170
184
  # @param dynamic_variables [Hash{Symbol=>Object}] Map of dynamic variables and their default values
@@ -221,6 +235,8 @@ module Telnyx
221
235
  #
222
236
  # @param voice_settings [Telnyx::Models::AI::InferenceEmbeddingVoiceSettings]
223
237
  #
238
+ # @param websocket_settings [Telnyx::Models::AI::WebsocketSettings] Streams conversation and telephony events to a WebSocket server you host, and ac
239
+ #
224
240
  # @param widget_settings [Telnyx::Models::AI::WidgetSettings] Configuration settings for the assistant's web widget.
225
241
  #
226
242
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -257,23 +273,45 @@ module Telnyx
257
273
  )
258
274
  end
259
275
 
276
+ # Some parameter documentations has been truncated, see
277
+ # {Telnyx::Models::AI::AssistantDeleteParams} for more details.
278
+ #
260
279
  # Delete an AI Assistant by `assistant_id`.
261
280
  #
262
- # @overload delete(assistant_id, request_options: {})
281
+ # By default this performs a soft delete: the assistant moves to the Recently
282
+ # Deleted list and stays restorable for 30 days, after which it is permanently
283
+ # deleted automatically. The assistant's versions and TeXML application are
284
+ # preserved during the retention window.
285
+ #
286
+ # Pass `hard_delete=true` to skip the retention window and permanently delete the
287
+ # assistant immediately. A hard delete erases the assistant and all of its
288
+ # versions, and deletes its TeXML application unless phone numbers are still
289
+ # assigned to it. It does not delete conversations, recordings, shared tools the
290
+ # assistant referenced, or knowledge-base embeddings.
291
+ #
292
+ # Deletion fails with `400` if other assistants reference this one through a
293
+ # handoff tool or a conversation-flow edge — remove those references first.
294
+ #
295
+ # @overload delete(assistant_id, hard_delete: nil, request_options: {})
263
296
  #
264
297
  # @param assistant_id [String] Unique identifier of the assistant.
265
298
  #
299
+ # @param hard_delete [Boolean] Permanently delete the assistant immediately instead of soft-deleting it to the
300
+ #
266
301
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
267
302
  #
268
303
  # @return [Telnyx::Models::AI::AssistantDeleteResponse]
269
304
  #
270
305
  # @see Telnyx::Models::AI::AssistantDeleteParams
271
306
  def delete(assistant_id, params = {})
307
+ parsed, options = Telnyx::AI::AssistantDeleteParams.dump_request(params)
308
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
272
309
  @client.request(
273
310
  method: :delete,
274
311
  path: ["ai/assistants/%1$s", assistant_id],
312
+ query: query,
275
313
  model: Telnyx::Models::AI::AssistantDeleteResponse,
276
- options: params[:request_options]
314
+ options: options
277
315
  )
278
316
  end
279
317
 
@@ -399,6 +437,30 @@ module Telnyx
399
437
  )
400
438
  end
401
439
 
440
+ # Restore a soft-deleted assistant from the Recently Deleted list.
441
+ #
442
+ # The assistant becomes fully active again with its versions and TeXML application
443
+ # as they were at deletion time. Restoring does not re-enable numbers or
444
+ # connections that were released separately after the deletion.
445
+ #
446
+ # @overload restore(assistant_id, request_options: {})
447
+ #
448
+ # @param assistant_id [String] Unique identifier of the assistant.
449
+ #
450
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
451
+ #
452
+ # @return [Telnyx::Models::AI::InferenceEmbedding]
453
+ #
454
+ # @see Telnyx::Models::AI::AssistantRestoreParams
455
+ def restore(assistant_id, params = {})
456
+ @client.request(
457
+ method: :post,
458
+ path: ["ai/assistants/%1$s/restore", assistant_id],
459
+ model: Telnyx::AI::InferenceEmbedding,
460
+ options: params[:request_options]
461
+ )
462
+ end
463
+
402
464
  # Some parameter documentations has been truncated, see
403
465
  # {Telnyx::Models::AI::AssistantSendSMSParams} for more details.
404
466
  #
@@ -448,6 +510,57 @@ module Telnyx
448
510
  )
449
511
  end
450
512
 
513
+ # Some parameter documentations has been truncated, see
514
+ # {Telnyx::Models::AI::AssistantWhatsappParams} for more details.
515
+ #
516
+ # Start a WhatsApp conversation with a customer from the business side. This
517
+ # endpoint:
518
+ #
519
+ # 1. Validates that `from` is a WhatsApp number on your account whose messaging
520
+ # profile has this assistant configured
521
+ # 2. Creates a new `whatsapp_chat` conversation with the provided metadata
522
+ # 3. Asks the assistant to pick one of its approved WhatsApp templates and fill
523
+ # its variables from `content`
524
+ # 4. Sends the template from `from` to `to`
525
+ # 5. Returns the conversation ID and the message ID
526
+ #
527
+ # When the customer replies, the reply is routed to the same conversation and the
528
+ # assistant answers within the 24-hour customer service window. The assistant
529
+ # needs a `whatsapp_template` tool with at least one approved template, data
530
+ # retention enabled and PII redaction disabled.
531
+ #
532
+ # @overload whatsapp(assistant_id, content:, from:, to:, conversation_metadata: nil, idempotency_key: nil, request_options: {})
533
+ #
534
+ # @param assistant_id [String] Path param: Unique identifier of the assistant. Must be the assistant configured
535
+ #
536
+ # @param content [String] Body param: Instruction for the assistant, including the values for the template
537
+ #
538
+ # @param from [String] Body param: WhatsApp number on your account to send from, in E.164 format. Its m
539
+ #
540
+ # @param to [String] Body param: Customer to message, as an E.164 phone number or a WhatsApp business
541
+ #
542
+ # @param conversation_metadata [Hash{Symbol=>String, Integer, Boolean}] Body param: Metadata stored on the conversation. Keys starting with `telnyx_` an
543
+ #
544
+ # @param idempotency_key [String] Header param: Optional opaque, unquoted key for safely retrying the same logical
545
+ #
546
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
547
+ #
548
+ # @return [Telnyx::Models::AI::AssistantWhatsappResponse]
549
+ #
550
+ # @see Telnyx::Models::AI::AssistantWhatsappParams
551
+ def whatsapp(assistant_id, params)
552
+ parsed, options = Telnyx::AI::AssistantWhatsappParams.dump_request(params)
553
+ header_params = {idempotency_key: "idempotency-key"}
554
+ @client.request(
555
+ method: :post,
556
+ path: ["ai/assistants/%1$s/chat/whatsapp", assistant_id],
557
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
558
+ body: parsed.except(*header_params.keys),
559
+ model: Telnyx::Models::AI::AssistantWhatsappResponse,
560
+ options: options
561
+ )
562
+ end
563
+
451
564
  # @api private
452
565
  #
453
566
  # @param client [Telnyx::Client]
@@ -460,6 +573,7 @@ module Telnyx
460
573
  @versions = Telnyx::Resources::AI::Assistants::Versions.new(client: client)
461
574
  @tags = Telnyx::Resources::AI::Assistants::Tags.new(client: client)
462
575
  @instructions = Telnyx::Resources::AI::Assistants::Instructions.new(client: client)
576
+ @deleted = Telnyx::Resources::AI::Assistants::Deleted.new(client: client)
463
577
  end
464
578
  end
465
579
  end
@@ -109,7 +109,7 @@ module Telnyx
109
109
  # can filter on any field in the metadata JSON object. For example, to filter by a
110
110
  # custom field `metadata->custom_field`, use `metadata->custom_field=eq.value`.
111
111
  #
112
- # @overload list(id: nil, created_at: nil, last_message_at: nil, limit: nil, metadata_assistant_id: nil, metadata_call_control_id: nil, metadata_telnyx_agent_target: nil, metadata_telnyx_conversation_channel: nil, metadata_telnyx_end_user_target: nil, name: nil, or_: nil, order: nil, request_options: {})
112
+ # @overload list(id: nil, created_at: nil, last_message_at: nil, limit: nil, metadata_assistant_id: nil, metadata_assistant_version_id: nil, metadata_call_control_id: nil, metadata_telnyx_agent_target: nil, metadata_telnyx_conversation_channel: nil, metadata_telnyx_end_user_target: nil, name: nil, or_: nil, order: nil, request_options: {})
113
113
  #
114
114
  # @param id [String] Filter by conversation ID (e.g. id=eq.123)
115
115
  #
@@ -121,6 +121,8 @@ module Telnyx
121
121
  #
122
122
  # @param metadata_assistant_id [String] Filter by assistant ID (e.g., `metadata->assistant_id=eq.assistant-123`)
123
123
  #
124
+ # @param metadata_assistant_version_id [String] Filter by assistant version ID (e.g., `metadata->assistant_version_id=eq.2025081
125
+ #
124
126
  # @param metadata_call_control_id [String] Filter by call control ID (e.g., `metadata->call_control_id=eq.v3:123`)
125
127
  #
126
128
  # @param metadata_telnyx_agent_target [String] Filter by the phone number, SIP URI, or other identifier for the agent (e.g., `m
@@ -148,6 +150,7 @@ module Telnyx
148
150
  path: "ai/conversations",
149
151
  query: query.transform_keys(
150
152
  metadata_assistant_id: "metadata->assistant_id",
153
+ metadata_assistant_version_id: "metadata->assistant_version_id",
151
154
  metadata_call_control_id: "metadata->call_control_id",
152
155
  metadata_telnyx_agent_target: "metadata->telnyx_agent_target",
153
156
  metadata_telnyx_conversation_channel: "metadata->telnyx_conversation_channel",
@@ -123,6 +123,47 @@ module Telnyx
123
123
  )
124
124
  end
125
125
 
126
+ # Some parameter documentations has been truncated, see
127
+ # {Telnyx::Models::AI::Memory::Namespaces::ProfilePreviewParams} for more details.
128
+ #
129
+ # Try a candidate note on one profile and see how that profile's summary would
130
+ # read under it, without saving the note and without touching the stored summary.
131
+ # Composes the same source query the apply path
132
+ # (`PATCH /ai/memory/namespaces/{namespace}/settings`) would use, so a preview
133
+ # cannot drift from what saving the note would produce. Reads the candidate alone
134
+ # -- the namespace's current instructions and the profile's stored summary are
135
+ # neither read nor replaced. Bounded at 120 seconds: the summary is generated on
136
+ # the spot rather than read from a stored one. Nothing about the request is
137
+ # stored.
138
+ #
139
+ # @overload preview(profile_id, namespace:, instructions: nil, request_options: {})
140
+ #
141
+ # @param profile_id [String] Path param: The profile: your identifier for the user, caller or agent this memo
142
+ #
143
+ # @param namespace [String] Path param: The namespace. `default` exists for every organization.
144
+ #
145
+ # @param instructions [String, nil] Body param: The candidate note to try. `null`, empty, or whitespace-only preview
146
+ #
147
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
148
+ #
149
+ # @return [Telnyx::Models::AI::Memory::Namespaces::ProfilePreviewResponse]
150
+ #
151
+ # @see Telnyx::Models::AI::Memory::Namespaces::ProfilePreviewParams
152
+ def preview(profile_id, params)
153
+ parsed, options = Telnyx::AI::Memory::Namespaces::ProfilePreviewParams.dump_request(params)
154
+ namespace =
155
+ parsed.delete(:namespace) do
156
+ raise ArgumentError.new("missing required path argument #{_1}")
157
+ end
158
+ @client.request(
159
+ method: :post,
160
+ path: ["ai/memory/namespaces/%1$s/profiles/%2$s/summary/preview", namespace, profile_id],
161
+ body: parsed,
162
+ model: Telnyx::Models::AI::Memory::Namespaces::ProfilePreviewResponse,
163
+ options: options
164
+ )
165
+ end
166
+
126
167
  # Ranked memories for a question. Matching runs over the profile's memories and
127
168
  # returns them in rank order with a relevance `score`; the score is null where the
128
169
  # deployment's reranker is a passthrough, in which case order is the only signal.
@@ -4,7 +4,6 @@ module Telnyx
4
4
  module Resources
5
5
  class AI
6
6
  class Memory
7
- # Whether a write has finished.
8
7
  class Namespaces
9
8
  # @return [Telnyx::Resources::AI::Memory::Namespaces::Profiles]
10
9
  attr_reader :profiles
@@ -13,6 +12,29 @@ module Telnyx
13
12
  # @return [Telnyx::Resources::AI::Memory::Namespaces::Settings]
14
13
  attr_reader :settings
15
14
 
15
+ # Create a namespace. An organization can have at most five, `default` among them
16
+ # — a sixth returns `403`.
17
+ #
18
+ # @overload create(name:, request_options: {})
19
+ #
20
+ # @param name [String] A name for the new namespace, unique within your organization.
21
+ #
22
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
23
+ #
24
+ # @return [Telnyx::Models::AI::Memory::NamespaceCreateResponse]
25
+ #
26
+ # @see Telnyx::Models::AI::Memory::NamespaceCreateParams
27
+ def create(params)
28
+ parsed, options = Telnyx::AI::Memory::NamespaceCreateParams.dump_request(params)
29
+ @client.request(
30
+ method: :post,
31
+ path: "ai/memory/namespaces",
32
+ body: parsed,
33
+ model: Telnyx::Models::AI::Memory::NamespaceCreateResponse,
34
+ options: options
35
+ )
36
+ end
37
+
16
38
  # Whether a write has finished. Both `ingest` and `remember` return an
17
39
  # `operation_id`, and a memory is not recallable until its operation completes —
18
40
  # extraction, embedding and consolidation all run first.
@@ -40,6 +62,45 @@ module Telnyx
40
62
  )
41
63
  end
42
64
 
65
+ # Every namespace in your organization, `default` among them.
66
+ #
67
+ # @overload list(request_options: {})
68
+ #
69
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
70
+ #
71
+ # @return [Telnyx::Models::AI::Memory::NamespaceListResponse]
72
+ #
73
+ # @see Telnyx::Models::AI::Memory::NamespaceListParams
74
+ def list(params = {})
75
+ @client.request(
76
+ method: :get,
77
+ path: "ai/memory/namespaces",
78
+ model: Telnyx::Models::AI::Memory::NamespaceListResponse,
79
+ options: params[:request_options]
80
+ )
81
+ end
82
+
83
+ # Delete a namespace and every profile and memory in it. `default` cannot be
84
+ # deleted. This cannot be undone.
85
+ #
86
+ # @overload delete(namespace, request_options: {})
87
+ #
88
+ # @param namespace [String] The namespace to delete. `default` cannot be deleted.
89
+ #
90
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
91
+ #
92
+ # @return [nil]
93
+ #
94
+ # @see Telnyx::Models::AI::Memory::NamespaceDeleteParams
95
+ def delete(namespace, params = {})
96
+ @client.request(
97
+ method: :delete,
98
+ path: ["ai/memory/namespaces/%1$s", namespace],
99
+ model: NilClass,
100
+ options: params[:request_options]
101
+ )
102
+ end
103
+
43
104
  # @api private
44
105
  #
45
106
  # @param client [Telnyx::Client]
@@ -4,7 +4,6 @@ module Telnyx
4
4
  module Resources
5
5
  class AI
6
6
  class Memory
7
- # Whether a write has finished.
8
7
  # @return [Telnyx::Resources::AI::Memory::Namespaces]
9
8
  attr_reader :namespaces
10
9
 
@@ -31,7 +31,7 @@ module Telnyx
31
31
  #
32
32
  # @param logprobs [Boolean] Whether to return log probabilities of the output tokens or not. If true, return
33
33
  #
34
- # @param max_tokens [Integer] Maximum number of completion tokens the model should generate.
34
+ # @param max_tokens [Integer, nil] Maximum number of completion (output) tokens, including reasoning and answer tok
35
35
  #
36
36
  # @param min_p [Float] This is an alternative to `top_p` that [many prefer](https://github.com/huggingf
37
37
  #
@@ -161,14 +161,14 @@ module Telnyx
161
161
  #
162
162
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
163
163
  #
164
- # @return [Object]
164
+ # @return [nil]
165
165
  #
166
166
  # @see Telnyx::Models::AI::ToolDeleteParams
167
167
  def delete(tool_id, params = {})
168
168
  @client.request(
169
169
  method: :delete,
170
170
  path: ["ai/tools/%1$s", tool_id],
171
- model: Telnyx::Internal::Type::Unknown,
171
+ model: NilClass,
172
172
  options: params[:request_options]
173
173
  )
174
174
  end
@@ -44,9 +44,33 @@ module Telnyx
44
44
  # Answer an incoming call. You must issue this command before executing subsequent
45
45
  # commands on an incoming call.
46
46
  #
47
+ # To answer with an AI assistant, include `assistant.id` and any per-call
48
+ # overrides in the `assistant` object. Telnyx attempts to warm up the assistant
49
+ # before answering the call, then starts the assistant automatically when the call
50
+ # is answered. Do not also send `ai_assistant_start` for this flow. The HTTP
51
+ # success response can arrive before the call is answered; use the `call.answered`
52
+ # webhook to track the answer. If warm-up fails, Telnyx falls back to starting the
53
+ # assistant after answering.
54
+ #
55
+ # When `assistant.id` is supplied, obtain the conversation ID from
56
+ # `data.payload.conversation_id` in the
57
+ # [call.conversation.created](/api-reference/callbacks/call-conversation-created)
58
+ # webhook and correlate it using `data.payload.call_control_id`. The `answer` HTTP
59
+ # response does not include `conversation_id`. The created event is emitted during
60
+ # assistant startup and does not indicate that the assistant is ready to speak.
61
+ #
62
+ # Set the assistant voice with `assistant.voice_settings.voice` and speech-to-text
63
+ # settings with `assistant.transcription`. You can reuse one stored assistant with
64
+ # different per-call settings. Warm-up prepares assistant configuration and
65
+ # dependencies; it does not wait for the greeting audio to be ready or guarantee
66
+ # zero silence after answer. A plain `answer` followed by `ai_assistant_start`
67
+ # performs assistant startup after the call has already been answered.
68
+ #
47
69
  # **Expected Webhooks:**
48
70
  #
49
71
  # - `call.answered`
72
+ # - `call.conversation.created` when the requested assistant conversation is
73
+ # created
50
74
  # - `call.hold` and `call.unhold` if the call is held/unheld
51
75
  # - `call.deepfake_detection.result` if `deepfake_detection` was enabled
52
76
  # - `call.deepfake_detection.error` if `deepfake_detection` was enabled and an
@@ -61,7 +85,7 @@ module Telnyx
61
85
  #
62
86
  # @param call_control_id [String] Unique identifier and token for controlling the call
63
87
  #
64
- # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration. All fields except `id` are optional — the assistant'
88
+ # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration and per-call overrides. All fields except `id` are op
65
89
  #
66
90
  # @param billing_group_id [String] Use this field to set the Billing Group ID for the call. Must be a valid and exi
67
91
  #
@@ -112,7 +136,7 @@ module Telnyx
112
136
  #
113
137
  # @param stream_url [String] The destination WebSocket address where the stream is going to be delivered.
114
138
  #
115
- # @param transcription [Boolean] Enable transcription upon call answer. The default value is false.
139
+ # @param transcription [Boolean] Enable standalone call transcription upon call answer. The default value is fals
116
140
  #
117
141
  # @param transcription_config [Telnyx::Models::Calls::TranscriptionStartRequest]
118
142
  #
@@ -314,6 +338,8 @@ module Telnyx
314
338
  #
315
339
  # **Expected Webhooks:**
316
340
  #
341
+ # - [`call.conversation.created`](/api-reference/callbacks/call-conversation-created)
342
+ # includes `conversation_id` during startup
317
343
  # - `call.ai_gather.ended`
318
344
  # - `call.conversation.ended`
319
345
  # - `call.ai_gather.partial_results` (if `send_partial_results` is set to `true`)
@@ -661,7 +687,7 @@ module Telnyx
661
687
  # The UnionPay and Maestro numbers are accepted for processor testing, but Pay
662
688
  # currently does not emit a card type for them.
663
689
  #
664
- # @overload pay(call_control_id, amount: nil, client_state: nil, command_id: nil, connector_name: nil, currency: nil, description: nil, inter_digit_timeout_millis: nil, language: nil, max_attempts: nil, metadata: nil, parameters: nil, payment_method: nil, payment_token: nil, prompts: nil, service_level: nil, timeout_millis: nil, transaction_type: nil, valid_card_types: nil, voice: nil, request_options: {})
690
+ # @overload pay(call_control_id, amount: nil, client_state: nil, command_id: nil, connector_name: nil, currency: nil, description: nil, inter_digit_timeout_millis: nil, language: nil, max_attempts: nil, metadata: nil, min_postal_code_length: nil, parameters: nil, payment_method: nil, payment_token: nil, postal_code: nil, prompts: nil, service_level: nil, timeout_millis: nil, transaction_type: nil, valid_card_types: nil, voice: nil, request_options: {})
665
691
  #
666
692
  # @param call_control_id [String] Unique identifier and token for controlling the call
667
693
  #
@@ -685,12 +711,16 @@ module Telnyx
685
711
  #
686
712
  # @param metadata [Hash{Symbol=>Object}] Metadata forwarded to the Pay connector.
687
713
  #
714
+ # @param min_postal_code_length [Integer] Minimum number of digits the caller must enter when collecting a credit-card bil
715
+ #
688
716
  # @param parameters [Hash{Symbol=>Object}] Additional parameters forwarded to the Pay connector.
689
717
  #
690
718
  # @param payment_method [Symbol, Telnyx::Models::Calls::ActionPayParams::PaymentMethod] Payment method to collect.
691
719
  #
692
720
  # @param payment_token [String] Existing payment token. When supplied, payment-detail collection is skipped.
693
721
  #
722
+ # @param postal_code [String, Boolean] Controls billing postal code collection for credit-card payments when no `paymen
723
+ #
694
724
  # @param prompts [Telnyx::Models::Calls::ActionPayParams::Prompts] Custom text-to-speech prompts keyed by payment collection step.
695
725
  #
696
726
  # @param service_level [String] Speech synthesis service level used for payment prompts. Pay defaults to `premiu
@@ -778,7 +808,7 @@ module Telnyx
778
808
  #
779
809
  # @param call_control_id [String] Unique identifier and token for controlling the call
780
810
  #
781
- # @param cause [Symbol, Telnyx::Models::Calls::ActionRejectParams::Cause] Cause for call rejection.
811
+ # @param cause [Symbol, Telnyx::Models::Calls::ActionRejectParams::Cause] Cause for call rejection. The cause sets the SIP response the caller receives: `
782
812
  #
783
813
  # @param client_state [String] Use this field to add state to every subsequent webhook. It must be a valid Base
784
814
  #
@@ -972,6 +1002,8 @@ module Telnyx
972
1002
  #
973
1003
  # **Expected Webhooks:**
974
1004
  #
1005
+ # - [`call.conversation.created`](/api-reference/callbacks/call-conversation-created)
1006
+ # includes `conversation_id` during startup
975
1007
  # - `call.conversation.ended`
976
1008
  # - `call.conversation_insights.generated`
977
1009
  #
@@ -979,7 +1011,7 @@ module Telnyx
979
1011
  #
980
1012
  # @param call_control_id [String] Unique identifier and token for controlling the call
981
1013
  #
982
- # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration. All fields except `id` are optional — the assistant'
1014
+ # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration and per-call overrides. All fields except `id` are op
983
1015
  #
984
1016
  # @param client_state [String] Use this field to add state to every subsequent webhook. It must be a valid Base
985
1017
  #
@@ -1068,7 +1100,7 @@ module Telnyx
1068
1100
  #
1069
1101
  # @param transcription_engine [Symbol, Telnyx::Models::Calls::ActionStartConversationRelayParams::TranscriptionEngine] Engine to use for speech recognition. Legacy values `A` - `Google`, `B` - `Telny
1070
1102
  #
1071
- # @param transcription_engine_config [Hash{Symbol=>Object}] Engine-specific transcription settings for Conversation Relay. This accepts the
1103
+ # @param transcription_engine_config [Telnyx::Models::Calls::ConversationRelayTranscriptionEngineConfig] Engine-specific transcription settings for Conversation Relay. This accepts the
1072
1104
  #
1073
1105
  # @param tts_provider [String] Text-to-speech provider. If omitted, Telnyx derives it from `voice` or `provider
1074
1106
  #
@@ -1817,6 +1849,9 @@ module Telnyx
1817
1849
  # `answering_machine_detection=premium` was requested
1818
1850
  # - `call.machine.premium.greeting.ended` if `answering_machine_detection=premium`
1819
1851
  # was requested and a beep was detected
1852
+ # - `call.machine.premium.call_screening.detected` if
1853
+ # `answering_machine_detection=premium_ios_call_screening_detection` was
1854
+ # requested and an Apple Call Screening tone was detected
1820
1855
  #
1821
1856
  # @overload transfer(call_control_id, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, audio_url: nil, client_state: nil, command_id: nil, custom_headers: nil, diversion: nil, early_media: nil, from: nil, from_display_name: nil, media_encryption: nil, media_name: nil, mute_dtmf: nil, park_after_unbridge: nil, preferred_codecs: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, route_to_mobile: nil, send_digits_on_answer: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, target_leg_client_state: nil, time_limit_secs: nil, timeout_secs: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
1822
1857
  #