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
@@ -14,10 +14,18 @@ module Telnyx
14
14
  # include a `call_leg_id` which can be used to correlate the command with
15
15
  # subsequent webhooks.
16
16
  #
17
+ # To place the call with an AI assistant from the start, include `assistant.id`
18
+ # and any per-call overrides in the `assistant` object; Telnyx attempts to warm up
19
+ # the assistant before placing the call and starts it automatically when the
20
+ # called party answers.
21
+ #
17
22
  # **Expected Webhooks:**
18
23
  #
19
24
  # - `call.initiated`
20
25
  # - `call.answered` or `call.hangup`
26
+ # - `call.conversation.created` when the requested assistant conversation is
27
+ # created, or `call.conversation.start_failed` when it could not be started
28
+ # after the called party answered
21
29
  # - `call.hold` and `call.unhold` if the call is held/unheld
22
30
  # - `call.machine.detection.ended` if `answering_machine_detection` was requested
23
31
  # - `call.machine.greeting.ended` if `answering_machine_detection` was requested
@@ -26,6 +34,9 @@ module Telnyx
26
34
  # `answering_machine_detection=premium` was requested
27
35
  # - `call.machine.premium.greeting.ended` if `answering_machine_detection=premium`
28
36
  # was requested and a beep was detected
37
+ # - `call.machine.premium.call_screening.detected` if
38
+ # `answering_machine_detection=premium_ios_call_screening_detection` was
39
+ # requested and an Apple Call Screening tone was detected
29
40
  # - `call.deepfake_detection.result` if `deepfake_detection` was enabled
30
41
  # - `call.deepfake_detection.error` if `deepfake_detection` was enabled and an
31
42
  # error occurred
@@ -47,7 +58,7 @@ module Telnyx
47
58
  #
48
59
  # @param answering_machine_detection_config [Telnyx::Models::CallDialParams::AnsweringMachineDetectionConfig] Optional configuration parameters to modify 'answering_machine_detection' perfor
49
60
  #
50
- # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration. All fields except `id` are optional — the assistant'
61
+ # @param assistant [Telnyx::Models::CallAssistantRequest] AI Assistant configuration and per-call overrides. All fields except `id` are op
51
62
  #
52
63
  # @param audio_url [String] The URL of a file to be played back to the callee when the call is answered. The
53
64
  #
@@ -12,7 +12,7 @@ module Telnyx
12
12
  # List the phone numbers registered under a DIR. The enterprise is resolved
13
13
  # server-side from the DIR id.
14
14
  #
15
- # @overload list(dir_id, page_number: nil, page_size: nil, status: nil, request_options: {})
15
+ # @overload list(dir_id, page_number: nil, page_size: nil, request_options: {})
16
16
  #
17
17
  # @param dir_id [String] The DIR id. Lowercase UUID.
18
18
  #
@@ -20,8 +20,6 @@ module Telnyx
20
20
  #
21
21
  # @param page_size [Integer] Items per page. Maximum 250; values above are clamped to 250.
22
22
  #
23
- # @param status [Symbol, Telnyx::Models::Dir::DirPhoneNumberStatus] Filter by phone-number status.
24
- #
25
23
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
26
24
  #
27
25
  # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::Dir::DirPhoneNumber>]
@@ -44,11 +42,11 @@ module Telnyx
44
42
  # {Telnyx::Models::Dir::PhoneNumberAddParams} for more details.
45
43
  #
46
44
  # Register phone numbers under a DIR. The enterprise is resolved server-side from
47
- # the DIR id. Same body, failure modes, and batch semantics whichever path form
48
- # you use.
45
+ # the DIR id.
49
46
  #
50
- # **Pricing:** This is a billable action. See https://telnyx.com/pricing/numbers
51
- # for current pricing.
47
+ # **Pricing:** Adding phone numbers is free. Branded Calling fees are charged per
48
+ # DIR and per branded call. See https://telnyx.com/pricing/branded-calling for
49
+ # current pricing.
52
50
  #
53
51
  # @overload add(dir_id, documents:, phone_numbers:, request_options: {})
54
52
  #
@@ -74,6 +72,9 @@ module Telnyx
74
72
  )
75
73
  end
76
74
 
75
+ # Some parameter documentations has been truncated, see
76
+ # {Telnyx::Models::Dir::PhoneNumberRemoveParams} for more details.
77
+ #
77
78
  # Deregister phone numbers from a DIR. The enterprise is resolved server-side from
78
79
  # the DIR id. Returns a partial-success envelope.
79
80
  #
@@ -81,7 +82,7 @@ module Telnyx
81
82
  #
82
83
  # @param dir_id [String] The DIR id. Lowercase UUID.
83
84
  #
84
- # @param phone_numbers [Array<String>]
85
+ # @param phone_numbers [Array<String>] The phone numbers to remove from this brand, in E.164 format, up to 100 per requ
85
86
  #
86
87
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
87
88
  #
@@ -84,19 +84,19 @@ module Telnyx
84
84
  #
85
85
  # @param ref_type [Symbol, Telnyx::Models::Dir::ReferenceUpdateParams::RefType] Path param: Reference type to address.
86
86
  #
87
- # @param email [String] Body param: Reference contact email address.
87
+ # @param email [String] Body param: The reference's email address. We email them scheduling and dial-in
88
88
  #
89
- # @param full_name [String] Body param: Full name of the reference contact.
89
+ # @param full_name [String] Body param: The full name of the person we should contact as your reference.
90
90
  #
91
- # @param job_title [String, nil] Body param: Job title of the reference contact.
91
+ # @param job_title [String, nil] Body param: The reference contact's job title, for example CFO or Owner.
92
92
  #
93
- # @param organization [String, nil] Body param: Organization the reference contact belongs to.
93
+ # @param organization [String, nil] Body param: The name of the organization the reference contact works for.
94
94
  #
95
- # @param phone_e164 [String] Body param: Reference phone number in E.164 format.
95
+ # @param phone_e164 [String] Body param: The reference's phone number in E.164 format, for example +141555501
96
96
  #
97
97
  # @param relationship_to_registrant [String, nil] Body param: How the reference contact is related to the registering business.
98
98
  #
99
- # @param timezone [String] Body param: IANA timezone id for the reference.
99
+ # @param timezone [String] Body param: The reference's IANA time zone, for example America/New_York. We onl
100
100
  #
101
101
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
102
102
  #
@@ -56,14 +56,17 @@ module Telnyx
56
56
  # Edit a DIR. DIRs in `draft`, `rejected`, `unsuccessful`, or `suspended` can be
57
57
  # edited freely: PATCH is a pure edit, `status` is never changed, and you re-vet
58
58
  # by calling `POST /v2/dir/{dir_id}/submit` explicitly. A `verified` DIR can also
59
- # be edited in place: a PATCH that changes any value returns the DIR to `draft`
60
- # and branded delivery stops until you re-submit and the DIR is approved again,
61
- # while a PATCH that changes nothing (an empty body or values identical to the
62
- # current ones) leaves the DIR `verified`, so idempotent retries are safe. DIRs in
63
- # any other status (`submitted`, `in_review`, `expired`, `infringement_claimed`,
59
+ # be edited in place: a PATCH that changes any value returns the DIR to `draft`;
60
+ # the currently approved identity keeps displaying, and the edited content goes
61
+ # live only after you re-submit and the DIR is approved again. A PATCH that
62
+ # changes nothing (an empty body or values identical to the current ones) leaves
63
+ # the DIR `verified`, so idempotent retries are safe. Changing only
64
+ # `bpo_authorizations` or `webhook_url` is the exception: the DIR stays
65
+ # `verified`. Each BPO authorization is reviewed on its own instead. DIRs in any
66
+ # other status (`submitted`, `in_review`, `expired`, `infringement_claimed`,
64
67
  # `permanently_rejected`) cannot be edited.
65
68
  #
66
- # @overload update(dir_id, authorizer_email: nil, authorizer_name: nil, call_reasons: nil, certify_brand_is_accurate: nil, certify_ip_ownership: nil, certify_no_shaft_content: nil, display_name: nil, documents: nil, logo_url: nil, reselling: nil, request_options: {})
69
+ # @overload update(dir_id, authorizer_email: nil, authorizer_name: nil, bpo_authorizations: nil, call_reasons: nil, certify_brand_is_accurate: nil, certify_ip_ownership: nil, certify_no_shaft_content: nil, display_name: nil, documents: nil, logo_url: nil, reselling: nil, webhook_url: nil, request_options: {})
67
70
  #
68
71
  # @param dir_id [String] The DIR id. Lowercase UUID.
69
72
  #
@@ -71,6 +74,8 @@ module Telnyx
71
74
  #
72
75
  # @param authorizer_name [String] Name of the person at your enterprise authorizing this DIR. Must be a real indiv
73
76
  #
77
+ # @param bpo_authorizations [Array<Telnyx::Models::BpoAuthorizationInput>] Optional. Replace this DIR's authorized BPO (Business Process Outsourcer) accoun
78
+ #
74
79
  # @param call_reasons [Array<String>] 1–10 reasons your business calls customers. Validate phrasing against `POST /cal
75
80
  #
76
81
  # @param certify_brand_is_accurate [Boolean] Certification that the DIR information is accurate. Must be `true` for the DIR t
@@ -87,6 +92,8 @@ module Telnyx
87
92
  #
88
93
  # @param reselling [Boolean] Set to true if your organization places calls on behalf of other enterprises (BP
89
94
  #
95
+ # @param webhook_url [String, nil] Optional `https://` URL that receives webhook notifications when this DIR's comp
96
+ #
90
97
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
91
98
  #
92
99
  # @return [Telnyx::Models::DirWrapped]
@@ -162,9 +169,13 @@ module Telnyx
162
169
  )
163
170
  end
164
171
 
165
- # Delete a DIR. Failure modes: `400` if a child phone number is in a non-deletable
166
- # status, `409` if the DIR has an unresolved infringement claim, `404` if the DIR
167
- # is not yours.
172
+ # Request deletion of a DIR. This does not remove the DIR on this call: it records
173
+ # the request, moves the DIR to `delete_requested`, and Telnyx completes the
174
+ # removal (de-registration and cleanup) shortly after. A verified DIR keeps
175
+ # serving its branded identity, and keeps billing, until the removal is executed.
176
+ # Failure modes: `400` if a child phone number is still attached or the DIR is
177
+ # `in_review` (wait for the review to finish), `409` if the DIR has an unresolved
178
+ # infringement claim, `404` if the DIR is not yours.
168
179
  #
169
180
  # @overload delete(dir_id, request_options: {})
170
181
  #
@@ -172,18 +183,59 @@ module Telnyx
172
183
  #
173
184
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
174
185
  #
175
- # @return [nil]
186
+ # @return [Telnyx::Models::DirDeleteResponse]
176
187
  #
177
188
  # @see Telnyx::Models::DirDeleteParams
178
189
  def delete(dir_id, params = {})
179
190
  @client.request(
180
191
  method: :delete,
181
192
  path: ["dir/%1$s", dir_id],
182
- model: NilClass,
193
+ model: Telnyx::Models::DirDeleteResponse,
183
194
  options: params[:request_options]
184
195
  )
185
196
  end
186
197
 
198
+ # Some parameter documentations has been truncated, see
199
+ # {Telnyx::Models::DirBpoLoaParams} for more details.
200
+ #
201
+ # The Letter of Authorization in which a Brand Owner authorizes an approved BPO
202
+ # (Business Process Outsourcer) to place branded calls that display this DIR on
203
+ # the owner's behalf. Both parties are read from the caller's account: the Brand
204
+ # Owner is the enterprise that owns the DIR, and the BPO is `bpo_enterprise_id`.
205
+ # No business identity is accepted in the body.
206
+ #
207
+ # When `signature` is omitted the PDF is returned unsigned so the Brand Owner can
208
+ # sign it externally and the BPO can upload it via the Documents API. When
209
+ # `signature` is present the PDF embeds the supplied image, printed name, and
210
+ # signed-at date.
211
+ #
212
+ # Returns `application/pdf`.
213
+ #
214
+ # @overload bpo_loa(dir_id, bpo_enterprise_id:, signature: nil, request_options: {})
215
+ #
216
+ # @param dir_id [String] The DIR id.
217
+ #
218
+ # @param bpo_enterprise_id [String] The approved BPO enterprise the Brand Owner is authorizing. Must be a BPO accoun
219
+ #
220
+ # @param signature [Telnyx::Models::SignaturePayload] Optional. When provided the rendered PDF embeds the signature image, printed nam
221
+ #
222
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
223
+ #
224
+ # @return [StringIO]
225
+ #
226
+ # @see Telnyx::Models::DirBpoLoaParams
227
+ def bpo_loa(dir_id, params)
228
+ parsed, options = Telnyx::DirBpoLoaParams.dump_request(params)
229
+ @client.request(
230
+ method: :post,
231
+ path: ["dir/%1$s/bpo_loa", dir_id],
232
+ headers: {"accept" => "application/pdf"},
233
+ body: parsed,
234
+ model: StringIO,
235
+ options: options
236
+ )
237
+ end
238
+
187
239
  # Reference list of `document_type` values accepted by
188
240
  # `DirCreateRequest.documents[].document_type` and the infringement-contest
189
241
  # endpoint. Each entry has a stable `short_name` (used in API calls) and a
@@ -261,9 +313,9 @@ module Telnyx
261
313
  #
262
314
  # @param phone_numbers [Array<String>] Telephone numbers to authorize on the DIR, in `+E164` format (`+` followed by 10
263
315
  #
264
- # @param agent [Telnyx::Models::Enterprises::Reputation::AgentInput] Third-party reseller / partner managing the enterprise's phone numbers. Omit whe
316
+ # @param agent [Telnyx::Models::Enterprises::Reputation::AgentInput] Third-party reseller / partner managing the enterprise's phone numbers on its be
265
317
  #
266
- # @param signature [Telnyx::Models::DirNewLoaParams::Signature] Optional. When provided the rendered PDF embeds the signature image, printed nam
318
+ # @param signature [Telnyx::Models::SignaturePayload] Optional. When provided the rendered PDF embeds the signature image, printed nam
267
319
  #
268
320
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
269
321
  #
@@ -282,6 +334,47 @@ module Telnyx
282
334
  )
283
335
  end
284
336
 
337
+ # Some parameter documentations has been truncated, see
338
+ # {Telnyx::Models::DirRetrieveBpoAuthorizationsParams} for more details.
339
+ #
340
+ # List the BPO (Business Process Outsourcer) accounts a Brand Owner has authorized
341
+ # on this DIR, together with the review state of each authorization.
342
+ #
343
+ # Authorizations are supplied as the `bpo_authorizations` array when creating or
344
+ # updating a DIR, and each one is reviewed on its own. Only an `approved`
345
+ # authorization adds that BPO to this DIR's authorized callers in the branded
346
+ # calling registry; `pending` and `rejected` authorizations do not. Each entry
347
+ # includes the `loa_document_id` you submitted: because `bpo_authorizations`
348
+ # replaces the whole list on every DIR update, send each entry you want to keep
349
+ # back with its `loa_document_id` unchanged, and it keeps its review state. A
350
+ # rejected entry carries a `rejection_reason`. Returns an empty list when the DIR
351
+ # has authorized no BPOs.
352
+ #
353
+ # @overload retrieve_bpo_authorizations(dir_id, page_number: nil, page_size: nil, request_options: {})
354
+ #
355
+ # @param dir_id [String] The DIR id. Lowercase UUID.
356
+ #
357
+ # @param page_number [Integer] 1-based page number. Out-of-range values return an empty page with correct meta.
358
+ #
359
+ # @param page_size [Integer] Items per page. Maximum 250; values above are clamped to 250.
360
+ #
361
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
362
+ #
363
+ # @return [Telnyx::Models::DirRetrieveBpoAuthorizationsResponse]
364
+ #
365
+ # @see Telnyx::Models::DirRetrieveBpoAuthorizationsParams
366
+ def retrieve_bpo_authorizations(dir_id, params = {})
367
+ parsed, options = Telnyx::DirRetrieveBpoAuthorizationsParams.dump_request(params)
368
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
369
+ @client.request(
370
+ method: :get,
371
+ path: ["dir/%1$s/bpo_authorizations", dir_id],
372
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
373
+ model: Telnyx::Models::DirRetrieveBpoAuthorizationsResponse,
374
+ options: options
375
+ )
376
+ end
377
+
285
378
  # Submit a DIR for vetting. Sends the DIR back through the vetting cycle from any
286
379
  # non-terminal status. When re-submitting from `suspended` or `expired`, the DIR's
287
380
  # previous Branded Calling registration is torn down transactionally and its phone
@@ -290,7 +383,7 @@ module Telnyx
290
383
  #
291
384
  # Returns `400` from `submitted`/`in_review`/`permanently_rejected`. Returns `400`
292
385
  # if the DIR's business and financial references have not been submitted. Returns
293
- # `409` if the DIR has an unresolved infringement claim.
386
+ # `400` if the DIR has an unresolved infringement claim.
294
387
  #
295
388
  # @overload submit(dir_id, request_options: {})
296
389
  #
@@ -328,7 +421,7 @@ module Telnyx
328
421
  #
329
422
  # @param certify_ip_ownership [Boolean, Telnyx::Models::DirUpdateInfringementParams::CertifyIPOwnership] Must be `true`.
330
423
  #
331
- # @param certify_no_infringement [Boolean, Telnyx::Models::DirUpdateInfringementParams::CertifyNoInfringement] Must be `true`.
424
+ # @param certify_no_infringement [Boolean, Telnyx::Models::DirUpdateInfringementParams::CertifyNoInfringement] Check to certify that the brand no longer infringes anyone else's trademark or i
332
425
  #
333
426
  # @param certify_no_shaft_content [Boolean, Telnyx::Models::DirUpdateInfringementParams::CertifyNoShaftContent] Must be `true`.
334
427
  #
@@ -336,7 +429,7 @@ module Telnyx
336
429
  #
337
430
  # @param call_reasons [Array<String>, nil]
338
431
  #
339
- # @param display_name [String, nil]
432
+ # @param display_name [String, nil] The business name shown to call recipients, 1 to 35 characters, no emoji, not bl
340
433
  #
341
434
  # @param documents [Array<Telnyx::Models::Document>, nil] Append-only supporting documents to attach while resolving the claim (e.g. autho
342
435
  #
@@ -9,7 +9,7 @@ module Telnyx
9
9
  #
10
10
  # Creates a Liquid email template. Variables are auto-extracted when omitted.
11
11
  #
12
- # @overload create(name:, autoescape: nil, html_body: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, idempotency_key: nil, request_options: {})
12
+ # @overload create(name:, autoescape: nil, html_body: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, variables_mode: nil, idempotency_key: nil, request_options: {})
13
13
  #
14
14
  # @param name [String] Body param: Letters, numbers, spaces, hyphens, and underscores only.
15
15
  #
@@ -25,7 +25,9 @@ module Telnyx
25
25
  #
26
26
  # @param variable_schema [Hash{Symbol=>Telnyx::Models::EmailTemplateCreateParams::VariableSchema}, nil] Body param: Structured variable requirements. Required variables cannot define d
27
27
  #
28
- # @param variables [Array<String>] Body param: Template variables. Auto-extracted from subject/body fields when abs
28
+ # @param variables [Array<String>, nil] Body param: Persisted variable names. In `automatic` mode a non-null array is re
29
+ #
30
+ # @param variables_mode [Symbol, Telnyx::Models::EmailTemplateCreateParams::VariablesMode] Body param: Controls how `variables` is maintained. If both fields are omitted (
29
31
  #
30
32
  # @param idempotency_key [String] Header param: Optional opaque, unquoted key for safely retrying the same logical
31
33
  #
@@ -74,7 +76,7 @@ module Telnyx
74
76
  # Updates one or more fields of the specified email template and returns the
75
77
  # updated template.
76
78
  #
77
- # @overload update(id, autoescape: nil, html_body: nil, name: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, request_options: {})
79
+ # @overload update(id, autoescape: nil, html_body: nil, name: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, variables_mode: nil, request_options: {})
78
80
  #
79
81
  # @param id [String] Email template UUID.
80
82
  #
@@ -92,7 +94,9 @@ module Telnyx
92
94
  #
93
95
  # @param variable_schema [Hash{Symbol=>Telnyx::Models::UpdateEmailTemplateRequest::VariableSchema}, nil] Structured variable requirements. Required variables cannot define defaults; inv
94
96
  #
95
- # @param variables [Array<String>]
97
+ # @param variables [Array<String>, nil] Persisted variable names. In `automatic` mode a non-null array is rejected; in `
98
+ #
99
+ # @param variables_mode [Symbol, Telnyx::Models::UpdateEmailTemplateRequest::VariablesMode] Controls how `variables` is maintained. Setting `automatic` re-extracts immediat
96
100
  #
97
101
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
98
102
  #
@@ -113,9 +117,21 @@ module Telnyx
113
117
  # Some parameter documentations has been truncated, see
114
118
  # {Telnyx::Models::EmailTemplateListParams} for more details.
115
119
  #
116
- # Lists templates sorted newest first by `created_at desc, id desc`.
120
+ # Lists templates sorted newest first by `created_at desc, id desc`. Optional
121
+ # filters match a case-insensitive literal name/subject query, stored body
122
+ # presence, and the `strict_variables` and `autoescape` settings. Filters
123
+ # intersect, remain scoped to the authenticated account, and apply before cursor
124
+ # pagination. Invalid filter names or values return 400.
125
+ #
126
+ # @overload list(filter_autoescape: nil, filter_content_type: nil, filter_query: nil, filter_strict_variables: nil, page_cursor: nil, page_size: nil, request_options: {})
127
+ #
128
+ # @param filter_autoescape [Symbol, Telnyx::Models::EmailTemplateListParams::FilterAutoescape] Exact match on the template's `autoescape` option. Only the exact query strings
117
129
  #
118
- # @overload list(page_cursor: nil, page_size: nil, request_options: {})
130
+ # @param filter_content_type [Symbol, Telnyx::Models::EmailTemplateListParams::FilterContentType] Matches templates by stored body presence. `html_and_text` requires both an HTML
131
+ #
132
+ # @param filter_query [String] Case-insensitive literal substring match over the template `name` or stored `sub
133
+ #
134
+ # @param filter_strict_variables [Symbol, Telnyx::Models::EmailTemplateListParams::FilterStrictVariables] Exact match on the template's `strict_variables` option. Only the exact query st
119
135
  #
120
136
  # @param page_cursor [String] Opaque URL-safe Base64 cursor returned by a previous list response.
121
137
  #
@@ -132,7 +148,12 @@ module Telnyx
132
148
  @client.request(
133
149
  method: :get,
134
150
  path: "email_templates",
135
- query: query,
151
+ query: query.transform_keys(
152
+ filter_autoescape: "filter[autoescape]",
153
+ filter_content_type: "filter[content_type]",
154
+ filter_query: "filter[query]",
155
+ filter_strict_variables: "filter[strict_variables]"
156
+ ),
136
157
  page: Telnyx::Internal::EmailCursorPagination,
137
158
  model: Telnyx::EmailTemplate,
138
159
  options: options
@@ -200,7 +221,7 @@ module Telnyx
200
221
  # Replaces template fields. Behaves identically to PATCH; provided for
201
222
  # compatibility with Phoenix resource routes.
202
223
  #
203
- # @overload replace(id, autoescape: nil, html_body: nil, name: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, request_options: {})
224
+ # @overload replace(id, autoescape: nil, html_body: nil, name: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, variables_mode: nil, request_options: {})
204
225
  #
205
226
  # @param id [String] Email template UUID.
206
227
  #
@@ -218,7 +239,9 @@ module Telnyx
218
239
  #
219
240
  # @param variable_schema [Hash{Symbol=>Telnyx::Models::UpdateEmailTemplateRequest::VariableSchema}, nil] Structured variable requirements. Required variables cannot define defaults; inv
220
241
  #
221
- # @param variables [Array<String>]
242
+ # @param variables [Array<String>, nil] Persisted variable names. In `automatic` mode a non-null array is rejected; in `
243
+ #
244
+ # @param variables_mode [Symbol, Telnyx::Models::UpdateEmailTemplateRequest::VariablesMode] Controls how `variables` is maintained. Setting `automatic` re-extracts immediat
222
245
  #
223
246
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
224
247
  #
@@ -30,12 +30,18 @@ module Telnyx
30
30
  #
31
31
  # **Failure modes**
32
32
  #
33
- # - `422` - validation error; `errors[].source.pointer` names the offending field.
34
- # - `403` - Branded Calling not activated on this enterprise (see
33
+ # - `400` - validation error; `errors[].source.pointer` names the offending field.
34
+ # - `400` - a certification field is not `true`.
35
+ # - `400` - Branded Calling not activated on this enterprise (see
35
36
  # `POST /enterprises/{id}/branded_calling`).
37
+ # - `400` - the enterprise is a BPO enterprise (`role_type` `bpo`), which cannot
38
+ # own a DIR.
39
+ # - `400` - a `bpo_authorizations` entry is not an approved BPO enterprise in your
40
+ # account, or its `loa_document_id` could not be validated.
36
41
  # - `404` - enterprise does not exist or does not belong to your account.
42
+ # - `503` - the document check is temporarily unavailable; retry.
37
43
  #
38
- # @overload create(enterprise_id, authorizer_email:, authorizer_name:, call_reasons:, certify_brand_is_accurate:, certify_ip_ownership:, certify_no_shaft_content:, display_name:, documents: nil, logo_url: nil, reselling: nil, request_options: {})
44
+ # @overload create(enterprise_id, authorizer_email:, authorizer_name:, call_reasons:, certify_brand_is_accurate:, certify_ip_ownership:, certify_no_shaft_content:, display_name:, bpo_authorizations: nil, documents: nil, logo_url: nil, reselling: nil, webhook_url: nil, request_options: {})
39
45
  #
40
46
  # @param enterprise_id [String] The enterprise id. Lowercase UUID.
41
47
  #
@@ -45,7 +51,7 @@ module Telnyx
45
51
  #
46
52
  # @param call_reasons [Array<String>] 1–10 reasons your business calls customers. Validate phrasing against `POST /cal
47
53
  #
48
- # @param certify_brand_is_accurate [Boolean, Telnyx::Models::Enterprises::DirCreateParams::CertifyBrandIsAccurate] Must be `true`.
54
+ # @param certify_brand_is_accurate [Boolean, Telnyx::Models::Enterprises::DirCreateParams::CertifyBrandIsAccurate] Certification that the DIR information is accurate. Must be `true` for the DIR t
49
55
  #
50
56
  # @param certify_ip_ownership [Boolean, Telnyx::Models::Enterprises::DirCreateParams::CertifyIPOwnership] Must be `true`. Confirms ownership of any logos/trademarks shown.
51
57
  #
@@ -53,12 +59,16 @@ module Telnyx
53
59
  #
54
60
  # @param display_name [String] Name shown to call recipients. No emoji; not whitespace-only.
55
61
  #
62
+ # @param bpo_authorizations [Array<Telnyx::Models::BpoAuthorizationInput>] Optional. Approved BPO (Business Process Outsourcer) accounts on your organizati
63
+ #
56
64
  # @param documents [Array<Telnyx::Models::Document>] Supporting documents. Each `document_id` may appear at most once on a DIR.
57
65
  #
58
66
  # @param logo_url [String] Publicly accessible HTTPS URL (max 128 chars) to a 256x256 BMP logo (max 1 MB).
59
67
  #
60
68
  # @param reselling [Boolean] Set to true if your organization places calls on behalf of other enterprises (BP
61
69
  #
70
+ # @param webhook_url [String, nil] Optional `https://` URL that receives webhook notifications when this DIR's comp
71
+ #
62
72
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
63
73
  #
64
74
  # @return [Telnyx::Models::DirWrapped]
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Enterprises
6
+ class Reputation
7
+ # Phone-number reputation monitoring (spam-score lookup and tracking).
8
+ class ExternalVerification
9
+ # Some parameter documentations has been truncated, see
10
+ # {Telnyx::Models::Enterprises::Reputation::ExternalVerificationCreateParams} for
11
+ # more details.
12
+ #
13
+ # Request permission to add phone numbers that the enterprise owns but that are
14
+ # hosted with another provider. Submit one or more uploaded documents proving
15
+ # ownership, such as a carrier invoice or account statement. The request is
16
+ # reviewed once per enterprise. While it is `pending` or `rejected` you can submit
17
+ # again to replace the documents; once `approved` it cannot be changed.
18
+ #
19
+ # @overload create(enterprise_id, document_ids:, phone_numbers: nil, request_options: {})
20
+ #
21
+ # @param enterprise_id [String] The enterprise id. Lowercase UUID.
22
+ #
23
+ # @param document_ids [Array<String>] Ids of uploaded documents (Documents API) proving the enterprise owns its phone
24
+ #
25
+ # @param phone_numbers [Array<String>] Optional. The phone numbers hosted with another provider that the documents cove
26
+ #
27
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
28
+ #
29
+ # @return [Telnyx::Models::Enterprises::Reputation::ExternalVerificationWrapped]
30
+ #
31
+ # @see Telnyx::Models::Enterprises::Reputation::ExternalVerificationCreateParams
32
+ def create(enterprise_id, params)
33
+ parsed, options = Telnyx::Enterprises::Reputation::ExternalVerificationCreateParams.dump_request(params)
34
+ @client.request(
35
+ method: :post,
36
+ path: ["enterprises/%1$s/reputation/external_verification", enterprise_id],
37
+ body: parsed,
38
+ model: Telnyx::Enterprises::Reputation::ExternalVerificationWrapped,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # Get the review status of the enterprise's ownership proof for phone numbers
44
+ # hosted with another provider. Returns 404 when no proof has been submitted.
45
+ #
46
+ # @overload list(enterprise_id, request_options: {})
47
+ #
48
+ # @param enterprise_id [String] The enterprise id. Lowercase UUID.
49
+ #
50
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
51
+ #
52
+ # @return [Telnyx::Models::Enterprises::Reputation::ExternalVerificationWrapped]
53
+ #
54
+ # @see Telnyx::Models::Enterprises::Reputation::ExternalVerificationListParams
55
+ def list(enterprise_id, params = {})
56
+ @client.request(
57
+ method: :get,
58
+ path: ["enterprises/%1$s/reputation/external_verification", enterprise_id],
59
+ model: Telnyx::Enterprises::Reputation::ExternalVerificationWrapped,
60
+ options: params[:request_options]
61
+ )
62
+ end
63
+
64
+ # @api private
65
+ #
66
+ # @param client [Telnyx::Client]
67
+ def initialize(client:)
68
+ @client = client
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -50,7 +50,7 @@ module Telnyx
50
50
  #
51
51
  # @param enterprise_id [String] The enterprise id. Lowercase UUID.
52
52
  #
53
- # @param agent [Telnyx::Models::Enterprises::Reputation::AgentInput] Third-party reseller / partner managing the enterprise's phone numbers. Omit whe
53
+ # @param agent [Telnyx::Models::Enterprises::Reputation::LoaRenderParams::Agent] Third-party reseller / partner managing the enterprise's phone numbers. Omit whe
54
54
  #
55
55
  # @param signature [Telnyx::Models::Enterprises::Reputation::LoaRenderParams::Signature] Optional signature embedded in the rendered PDF. When omitted the PDF is returne
56
56
  #