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,891 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module LlmTokenGateway
6
+ class TokenGroup < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::LlmTokenGateway::TokenGroup,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ sig { returns(T::Array[String]) }
19
+ attr_accessor :allowed_models
20
+
21
+ sig { returns(T::Boolean) }
22
+ attr_accessor :blocked
23
+
24
+ sig do
25
+ returns(
26
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::TaggedSymbol)
27
+ )
28
+ end
29
+ attr_accessor :budget_duration
30
+
31
+ sig { returns(T.nilable(Time)) }
32
+ attr_accessor :budget_started_at
33
+
34
+ sig { returns(T.nilable(Integer)) }
35
+ attr_accessor :cache_ttl
36
+
37
+ sig { returns(Time) }
38
+ attr_accessor :created_at
39
+
40
+ # Per-group model fallbacks: primary alias -> ordered list of 1..3 other aliases.
41
+ # Every key and listed alias must be in allowed_models (a PATCH removing a
42
+ # referenced alias is 400); a chain never lists its own key; wildcards are
43
+ # rejected. Chains are one level deep (a step's own chain is not expanded).
44
+ # Fallback is attempted only for managed routes, only before the first provider
45
+ # event is forwarded, and only to steps the key may use; each attempt is reserved
46
+ # and recorded. {} and null both disable fallbacks.
47
+ sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
48
+ attr_accessor :fallbacks
49
+
50
+ # Per-group guardrail policy. Missing actions default to ignore. profiles may be
51
+ # listed with both dlp actions ignore (staged, inactive) but a non-ignore dlp
52
+ # action requires at least one profile. streaming defaults to buffered when any
53
+ # response action is block and passthrough otherwise; passthrough with a response
54
+ # block is 400. Findings are codes and counts only; content is never stored. The
55
+ # stored form is echoed back canonicalised (all actions explicit, profiles
56
+ # sorted); {} is stored as an all-ignore policy, null disables.
57
+ sig do
58
+ returns(T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Guardrails))
59
+ end
60
+ attr_reader :guardrails
61
+
62
+ sig do
63
+ params(
64
+ guardrails:
65
+ T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Guardrails::OrHash)
66
+ ).void
67
+ end
68
+ attr_writer :guardrails
69
+
70
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
71
+ # never binary float accounting.
72
+ sig { returns(T.nilable(Float)) }
73
+ attr_accessor :max_budget
74
+
75
+ sig { returns(String) }
76
+ attr_accessor :name
77
+
78
+ sig { returns(T::Array[String]) }
79
+ attr_accessor :provider_key_ids
80
+
81
+ sig { returns(Symbol) }
82
+ attr_accessor :record_type
83
+
84
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
85
+ # never binary float accounting.
86
+ sig { returns(Float) }
87
+ attr_accessor :reserved_spend
88
+
89
+ sig { returns(T.nilable(Time)) }
90
+ attr_accessor :resets_at
91
+
92
+ # Per-group same-route retries. max_attempts counts the first try of each step
93
+ # (the primary and each fallback) and is the ceiling for the x-ltg-max-attempts
94
+ # request header. A step is retried only when its attempt definitely did no
95
+ # provider work (connection failure before dispatch, or 429/529) before the first
96
+ # provider event; an uncertain failure (timeout, 408/500/502/503/504) moves to the
97
+ # next fallback step instead. max_attempts x (1 + the longest fallback chain) must
98
+ # not exceed 8, else 400. The n-th retry waits retry_delay_ms (constant),
99
+ # retry_delay_ms*n (linear) or retry_delay_ms*2^(n-1) (exponential), at most 5 s
100
+ # and never past the request deadline, then jittered uniformly down to half that
101
+ # value so concurrent retries spread out; a provider Retry-After of at most 5 s is
102
+ # honoured and a longer one moves to the next step. request_timeout_ms applies to
103
+ # streaming requests only: it bounds each attempt's time to its first provider
104
+ # event and never applies after it. Non-stream requests keep the per-attempt hop
105
+ # and idle bounds (their headers arrive only with the finished completion).
106
+ # retry_delay_ms and backoff are floors for the request knobs. Each planned
107
+ # attempt is reserved (at most 8 per request); unused reservation is released at
108
+ # settlement. Managed routes only. The stored form is echoed back with defaults
109
+ # filled in; null disables retries.
110
+ sig { returns(T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Retries)) }
111
+ attr_reader :retries
112
+
113
+ sig do
114
+ params(
115
+ retries:
116
+ T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Retries::OrHash)
117
+ ).void
118
+ end
119
+ attr_writer :retries
120
+
121
+ sig { returns(T.nilable(Integer)) }
122
+ attr_accessor :rpm_limit
123
+
124
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
125
+ # never binary float accounting.
126
+ sig { returns(Float) }
127
+ attr_accessor :spend
128
+
129
+ sig { returns(T.nilable(Integer)) }
130
+ attr_accessor :tpm_limit
131
+
132
+ sig { returns(Time) }
133
+ attr_accessor :updated_at
134
+
135
+ sig { returns(Integer) }
136
+ attr_accessor :version
137
+
138
+ # Optional maximum concurrent reserved/dispatched cache misses across replicas.
139
+ # Null means no concurrency cap. Cache hits do not consume slots; unknown usage
140
+ # retains its budget hold without a slot.
141
+ sig { returns(T.nilable(Integer)) }
142
+ attr_accessor :max_parallel_requests
143
+
144
+ sig do
145
+ params(
146
+ id: String,
147
+ allowed_models: T::Array[String],
148
+ blocked: T::Boolean,
149
+ budget_duration:
150
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::OrSymbol),
151
+ budget_started_at: T.nilable(Time),
152
+ cache_ttl: T.nilable(Integer),
153
+ created_at: Time,
154
+ fallbacks: T.nilable(T::Hash[Symbol, T::Array[String]]),
155
+ guardrails:
156
+ T.nilable(
157
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::OrHash
158
+ ),
159
+ max_budget: T.nilable(Float),
160
+ name: String,
161
+ provider_key_ids: T::Array[String],
162
+ reserved_spend: Float,
163
+ resets_at: T.nilable(Time),
164
+ retries:
165
+ T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Retries::OrHash),
166
+ rpm_limit: T.nilable(Integer),
167
+ spend: Float,
168
+ tpm_limit: T.nilable(Integer),
169
+ updated_at: Time,
170
+ version: Integer,
171
+ max_parallel_requests: T.nilable(Integer),
172
+ record_type: Symbol
173
+ ).returns(T.attached_class)
174
+ end
175
+ def self.new(
176
+ id:,
177
+ allowed_models:,
178
+ blocked:,
179
+ budget_duration:,
180
+ budget_started_at:,
181
+ cache_ttl:,
182
+ created_at:,
183
+ # Per-group model fallbacks: primary alias -> ordered list of 1..3 other aliases.
184
+ # Every key and listed alias must be in allowed_models (a PATCH removing a
185
+ # referenced alias is 400); a chain never lists its own key; wildcards are
186
+ # rejected. Chains are one level deep (a step's own chain is not expanded).
187
+ # Fallback is attempted only for managed routes, only before the first provider
188
+ # event is forwarded, and only to steps the key may use; each attempt is reserved
189
+ # and recorded. {} and null both disable fallbacks.
190
+ fallbacks:,
191
+ # Per-group guardrail policy. Missing actions default to ignore. profiles may be
192
+ # listed with both dlp actions ignore (staged, inactive) but a non-ignore dlp
193
+ # action requires at least one profile. streaming defaults to buffered when any
194
+ # response action is block and passthrough otherwise; passthrough with a response
195
+ # block is 400. Findings are codes and counts only; content is never stored. The
196
+ # stored form is echoed back canonicalised (all actions explicit, profiles
197
+ # sorted); {} is stored as an all-ignore policy, null disables.
198
+ guardrails:,
199
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
200
+ # never binary float accounting.
201
+ max_budget:,
202
+ name:,
203
+ provider_key_ids:,
204
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
205
+ # never binary float accounting.
206
+ reserved_spend:,
207
+ resets_at:,
208
+ # Per-group same-route retries. max_attempts counts the first try of each step
209
+ # (the primary and each fallback) and is the ceiling for the x-ltg-max-attempts
210
+ # request header. A step is retried only when its attempt definitely did no
211
+ # provider work (connection failure before dispatch, or 429/529) before the first
212
+ # provider event; an uncertain failure (timeout, 408/500/502/503/504) moves to the
213
+ # next fallback step instead. max_attempts x (1 + the longest fallback chain) must
214
+ # not exceed 8, else 400. The n-th retry waits retry_delay_ms (constant),
215
+ # retry_delay_ms*n (linear) or retry_delay_ms*2^(n-1) (exponential), at most 5 s
216
+ # and never past the request deadline, then jittered uniformly down to half that
217
+ # value so concurrent retries spread out; a provider Retry-After of at most 5 s is
218
+ # honoured and a longer one moves to the next step. request_timeout_ms applies to
219
+ # streaming requests only: it bounds each attempt's time to its first provider
220
+ # event and never applies after it. Non-stream requests keep the per-attempt hop
221
+ # and idle bounds (their headers arrive only with the finished completion).
222
+ # retry_delay_ms and backoff are floors for the request knobs. Each planned
223
+ # attempt is reserved (at most 8 per request); unused reservation is released at
224
+ # settlement. Managed routes only. The stored form is echoed back with defaults
225
+ # filled in; null disables retries.
226
+ retries:,
227
+ rpm_limit:,
228
+ # USD, decimal precision at most 6 places; parse exactly to integer micro-USD,
229
+ # never binary float accounting.
230
+ spend:,
231
+ tpm_limit:,
232
+ updated_at:,
233
+ version:,
234
+ # Optional maximum concurrent reserved/dispatched cache misses across replicas.
235
+ # Null means no concurrency cap. Cache hits do not consume slots; unknown usage
236
+ # retains its budget hold without a slot.
237
+ max_parallel_requests: nil,
238
+ record_type: :token_group
239
+ )
240
+ end
241
+
242
+ sig do
243
+ override.returns(
244
+ {
245
+ id: String,
246
+ allowed_models: T::Array[String],
247
+ blocked: T::Boolean,
248
+ budget_duration:
249
+ T.nilable(
250
+ Telnyx::LlmTokenGateway::BudgetDuration::TaggedSymbol
251
+ ),
252
+ budget_started_at: T.nilable(Time),
253
+ cache_ttl: T.nilable(Integer),
254
+ created_at: Time,
255
+ fallbacks: T.nilable(T::Hash[Symbol, T::Array[String]]),
256
+ guardrails:
257
+ T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Guardrails),
258
+ max_budget: T.nilable(Float),
259
+ name: String,
260
+ provider_key_ids: T::Array[String],
261
+ record_type: Symbol,
262
+ reserved_spend: Float,
263
+ resets_at: T.nilable(Time),
264
+ retries: T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Retries),
265
+ rpm_limit: T.nilable(Integer),
266
+ spend: Float,
267
+ tpm_limit: T.nilable(Integer),
268
+ updated_at: Time,
269
+ version: Integer,
270
+ max_parallel_requests: T.nilable(Integer)
271
+ }
272
+ )
273
+ end
274
+ def to_hash
275
+ end
276
+
277
+ class Guardrails < Telnyx::Internal::Type::BaseModel
278
+ OrHash =
279
+ T.type_alias do
280
+ T.any(
281
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails,
282
+ Telnyx::Internal::AnyHash
283
+ )
284
+ end
285
+
286
+ sig do
287
+ returns(
288
+ T.nilable(Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp)
289
+ )
290
+ end
291
+ attr_reader :dlp
292
+
293
+ sig do
294
+ params(
295
+ dlp: Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::OrHash
296
+ ).void
297
+ end
298
+ attr_writer :dlp
299
+
300
+ sig do
301
+ returns(
302
+ T.nilable(
303
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets
304
+ )
305
+ )
306
+ end
307
+ attr_reader :secrets
308
+
309
+ sig do
310
+ params(
311
+ secrets:
312
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::OrHash
313
+ ).void
314
+ end
315
+ attr_writer :secrets
316
+
317
+ sig do
318
+ returns(
319
+ T.nilable(
320
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::TaggedSymbol
321
+ )
322
+ )
323
+ end
324
+ attr_reader :streaming
325
+
326
+ sig do
327
+ params(
328
+ streaming:
329
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::OrSymbol
330
+ ).void
331
+ end
332
+ attr_writer :streaming
333
+
334
+ # Per-group guardrail policy. Missing actions default to ignore. profiles may be
335
+ # listed with both dlp actions ignore (staged, inactive) but a non-ignore dlp
336
+ # action requires at least one profile. streaming defaults to buffered when any
337
+ # response action is block and passthrough otherwise; passthrough with a response
338
+ # block is 400. Findings are codes and counts only; content is never stored. The
339
+ # stored form is echoed back canonicalised (all actions explicit, profiles
340
+ # sorted); {} is stored as an all-ignore policy, null disables.
341
+ sig do
342
+ params(
343
+ dlp: Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::OrHash,
344
+ secrets:
345
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::OrHash,
346
+ streaming:
347
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::OrSymbol
348
+ ).returns(T.attached_class)
349
+ end
350
+ def self.new(dlp: nil, secrets: nil, streaming: nil)
351
+ end
352
+
353
+ sig do
354
+ override.returns(
355
+ {
356
+ dlp: Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp,
357
+ secrets:
358
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets,
359
+ streaming:
360
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::TaggedSymbol
361
+ }
362
+ )
363
+ end
364
+ def to_hash
365
+ end
366
+
367
+ class Dlp < Telnyx::Internal::Type::BaseModel
368
+ OrHash =
369
+ T.type_alias do
370
+ T.any(
371
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp,
372
+ Telnyx::Internal::AnyHash
373
+ )
374
+ end
375
+
376
+ sig do
377
+ returns(
378
+ T.nilable(
379
+ T::Array[
380
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
381
+ ]
382
+ )
383
+ )
384
+ end
385
+ attr_reader :profiles
386
+
387
+ sig do
388
+ params(
389
+ profiles:
390
+ T::Array[
391
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::OrSymbol
392
+ ]
393
+ ).void
394
+ end
395
+ attr_writer :profiles
396
+
397
+ sig do
398
+ returns(
399
+ T.nilable(
400
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol
401
+ )
402
+ )
403
+ end
404
+ attr_reader :prompt
405
+
406
+ sig do
407
+ params(
408
+ prompt:
409
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::OrSymbol
410
+ ).void
411
+ end
412
+ attr_writer :prompt
413
+
414
+ sig do
415
+ returns(
416
+ T.nilable(
417
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
418
+ )
419
+ )
420
+ end
421
+ attr_reader :response
422
+
423
+ sig do
424
+ params(
425
+ response:
426
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::OrSymbol
427
+ ).void
428
+ end
429
+ attr_writer :response
430
+
431
+ sig do
432
+ params(
433
+ profiles:
434
+ T::Array[
435
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::OrSymbol
436
+ ],
437
+ prompt:
438
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::OrSymbol,
439
+ response:
440
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::OrSymbol
441
+ ).returns(T.attached_class)
442
+ end
443
+ def self.new(profiles: nil, prompt: nil, response: nil)
444
+ end
445
+
446
+ sig do
447
+ override.returns(
448
+ {
449
+ profiles:
450
+ T::Array[
451
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
452
+ ],
453
+ prompt:
454
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol,
455
+ response:
456
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
457
+ }
458
+ )
459
+ end
460
+ def to_hash
461
+ end
462
+
463
+ module Profile
464
+ extend Telnyx::Internal::Type::Enum
465
+
466
+ TaggedSymbol =
467
+ T.type_alias do
468
+ T.all(
469
+ Symbol,
470
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile
471
+ )
472
+ end
473
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
474
+
475
+ FINANCIAL =
476
+ T.let(
477
+ :financial,
478
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
479
+ )
480
+ GOVERNMENT_ID =
481
+ T.let(
482
+ :government_id,
483
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
484
+ )
485
+ CONTACT =
486
+ T.let(
487
+ :contact,
488
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
489
+ )
490
+
491
+ sig do
492
+ override.returns(
493
+ T::Array[
494
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Profile::TaggedSymbol
495
+ ]
496
+ )
497
+ end
498
+ def self.values
499
+ end
500
+ end
501
+
502
+ module Prompt
503
+ extend Telnyx::Internal::Type::Enum
504
+
505
+ TaggedSymbol =
506
+ T.type_alias do
507
+ T.all(
508
+ Symbol,
509
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt
510
+ )
511
+ end
512
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
513
+
514
+ IGNORE =
515
+ T.let(
516
+ :ignore,
517
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol
518
+ )
519
+ FLAG =
520
+ T.let(
521
+ :flag,
522
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol
523
+ )
524
+ BLOCK =
525
+ T.let(
526
+ :block,
527
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol
528
+ )
529
+
530
+ sig do
531
+ override.returns(
532
+ T::Array[
533
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Prompt::TaggedSymbol
534
+ ]
535
+ )
536
+ end
537
+ def self.values
538
+ end
539
+ end
540
+
541
+ module Response
542
+ extend Telnyx::Internal::Type::Enum
543
+
544
+ TaggedSymbol =
545
+ T.type_alias do
546
+ T.all(
547
+ Symbol,
548
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response
549
+ )
550
+ end
551
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
552
+
553
+ IGNORE =
554
+ T.let(
555
+ :ignore,
556
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
557
+ )
558
+ FLAG =
559
+ T.let(
560
+ :flag,
561
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
562
+ )
563
+ BLOCK =
564
+ T.let(
565
+ :block,
566
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
567
+ )
568
+
569
+ sig do
570
+ override.returns(
571
+ T::Array[
572
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Dlp::Response::TaggedSymbol
573
+ ]
574
+ )
575
+ end
576
+ def self.values
577
+ end
578
+ end
579
+ end
580
+
581
+ class Secrets < Telnyx::Internal::Type::BaseModel
582
+ OrHash =
583
+ T.type_alias do
584
+ T.any(
585
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets,
586
+ Telnyx::Internal::AnyHash
587
+ )
588
+ end
589
+
590
+ sig do
591
+ returns(
592
+ T.nilable(
593
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol
594
+ )
595
+ )
596
+ end
597
+ attr_reader :prompt
598
+
599
+ sig do
600
+ params(
601
+ prompt:
602
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::OrSymbol
603
+ ).void
604
+ end
605
+ attr_writer :prompt
606
+
607
+ sig do
608
+ returns(
609
+ T.nilable(
610
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
611
+ )
612
+ )
613
+ end
614
+ attr_reader :response
615
+
616
+ sig do
617
+ params(
618
+ response:
619
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::OrSymbol
620
+ ).void
621
+ end
622
+ attr_writer :response
623
+
624
+ sig do
625
+ params(
626
+ prompt:
627
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::OrSymbol,
628
+ response:
629
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::OrSymbol
630
+ ).returns(T.attached_class)
631
+ end
632
+ def self.new(prompt: nil, response: nil)
633
+ end
634
+
635
+ sig do
636
+ override.returns(
637
+ {
638
+ prompt:
639
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol,
640
+ response:
641
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
642
+ }
643
+ )
644
+ end
645
+ def to_hash
646
+ end
647
+
648
+ module Prompt
649
+ extend Telnyx::Internal::Type::Enum
650
+
651
+ TaggedSymbol =
652
+ T.type_alias do
653
+ T.all(
654
+ Symbol,
655
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt
656
+ )
657
+ end
658
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
659
+
660
+ IGNORE =
661
+ T.let(
662
+ :ignore,
663
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol
664
+ )
665
+ FLAG =
666
+ T.let(
667
+ :flag,
668
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol
669
+ )
670
+ BLOCK =
671
+ T.let(
672
+ :block,
673
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol
674
+ )
675
+
676
+ sig do
677
+ override.returns(
678
+ T::Array[
679
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Prompt::TaggedSymbol
680
+ ]
681
+ )
682
+ end
683
+ def self.values
684
+ end
685
+ end
686
+
687
+ module Response
688
+ extend Telnyx::Internal::Type::Enum
689
+
690
+ TaggedSymbol =
691
+ T.type_alias do
692
+ T.all(
693
+ Symbol,
694
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response
695
+ )
696
+ end
697
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
698
+
699
+ IGNORE =
700
+ T.let(
701
+ :ignore,
702
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
703
+ )
704
+ FLAG =
705
+ T.let(
706
+ :flag,
707
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
708
+ )
709
+ BLOCK =
710
+ T.let(
711
+ :block,
712
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
713
+ )
714
+
715
+ sig do
716
+ override.returns(
717
+ T::Array[
718
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Secrets::Response::TaggedSymbol
719
+ ]
720
+ )
721
+ end
722
+ def self.values
723
+ end
724
+ end
725
+ end
726
+
727
+ module Streaming
728
+ extend Telnyx::Internal::Type::Enum
729
+
730
+ TaggedSymbol =
731
+ T.type_alias do
732
+ T.all(
733
+ Symbol,
734
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming
735
+ )
736
+ end
737
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
738
+
739
+ BUFFERED =
740
+ T.let(
741
+ :buffered,
742
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::TaggedSymbol
743
+ )
744
+ PASSTHROUGH =
745
+ T.let(
746
+ :passthrough,
747
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::TaggedSymbol
748
+ )
749
+
750
+ sig do
751
+ override.returns(
752
+ T::Array[
753
+ Telnyx::LlmTokenGateway::TokenGroup::Guardrails::Streaming::TaggedSymbol
754
+ ]
755
+ )
756
+ end
757
+ def self.values
758
+ end
759
+ end
760
+ end
761
+
762
+ class Retries < Telnyx::Internal::Type::BaseModel
763
+ OrHash =
764
+ T.type_alias do
765
+ T.any(
766
+ Telnyx::LlmTokenGateway::TokenGroup::Retries,
767
+ Telnyx::Internal::AnyHash
768
+ )
769
+ end
770
+
771
+ sig { returns(Integer) }
772
+ attr_accessor :max_attempts
773
+
774
+ sig do
775
+ returns(
776
+ T.nilable(
777
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol
778
+ )
779
+ )
780
+ end
781
+ attr_reader :backoff
782
+
783
+ sig do
784
+ params(
785
+ backoff:
786
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::OrSymbol
787
+ ).void
788
+ end
789
+ attr_writer :backoff
790
+
791
+ sig { returns(T.nilable(Integer)) }
792
+ attr_accessor :request_timeout_ms
793
+
794
+ sig { returns(T.nilable(Integer)) }
795
+ attr_reader :retry_delay_ms
796
+
797
+ sig { params(retry_delay_ms: Integer).void }
798
+ attr_writer :retry_delay_ms
799
+
800
+ # Per-group same-route retries. max_attempts counts the first try of each step
801
+ # (the primary and each fallback) and is the ceiling for the x-ltg-max-attempts
802
+ # request header. A step is retried only when its attempt definitely did no
803
+ # provider work (connection failure before dispatch, or 429/529) before the first
804
+ # provider event; an uncertain failure (timeout, 408/500/502/503/504) moves to the
805
+ # next fallback step instead. max_attempts x (1 + the longest fallback chain) must
806
+ # not exceed 8, else 400. The n-th retry waits retry_delay_ms (constant),
807
+ # retry_delay_ms*n (linear) or retry_delay_ms*2^(n-1) (exponential), at most 5 s
808
+ # and never past the request deadline, then jittered uniformly down to half that
809
+ # value so concurrent retries spread out; a provider Retry-After of at most 5 s is
810
+ # honoured and a longer one moves to the next step. request_timeout_ms applies to
811
+ # streaming requests only: it bounds each attempt's time to its first provider
812
+ # event and never applies after it. Non-stream requests keep the per-attempt hop
813
+ # and idle bounds (their headers arrive only with the finished completion).
814
+ # retry_delay_ms and backoff are floors for the request knobs. Each planned
815
+ # attempt is reserved (at most 8 per request); unused reservation is released at
816
+ # settlement. Managed routes only. The stored form is echoed back with defaults
817
+ # filled in; null disables retries.
818
+ sig do
819
+ params(
820
+ max_attempts: Integer,
821
+ backoff:
822
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::OrSymbol,
823
+ request_timeout_ms: T.nilable(Integer),
824
+ retry_delay_ms: Integer
825
+ ).returns(T.attached_class)
826
+ end
827
+ def self.new(
828
+ max_attempts:,
829
+ backoff: nil,
830
+ request_timeout_ms: nil,
831
+ retry_delay_ms: nil
832
+ )
833
+ end
834
+
835
+ sig do
836
+ override.returns(
837
+ {
838
+ max_attempts: Integer,
839
+ backoff:
840
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol,
841
+ request_timeout_ms: T.nilable(Integer),
842
+ retry_delay_ms: Integer
843
+ }
844
+ )
845
+ end
846
+ def to_hash
847
+ end
848
+
849
+ module Backoff
850
+ extend Telnyx::Internal::Type::Enum
851
+
852
+ TaggedSymbol =
853
+ T.type_alias do
854
+ T.all(
855
+ Symbol,
856
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff
857
+ )
858
+ end
859
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
860
+
861
+ CONSTANT =
862
+ T.let(
863
+ :constant,
864
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol
865
+ )
866
+ LINEAR =
867
+ T.let(
868
+ :linear,
869
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol
870
+ )
871
+ EXPONENTIAL =
872
+ T.let(
873
+ :exponential,
874
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol
875
+ )
876
+
877
+ sig do
878
+ override.returns(
879
+ T::Array[
880
+ Telnyx::LlmTokenGateway::TokenGroup::Retries::Backoff::TaggedSymbol
881
+ ]
882
+ )
883
+ end
884
+ def self.values
885
+ end
886
+ end
887
+ end
888
+ end
889
+ end
890
+ end
891
+ end