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,278 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class LlmTokenGateway
6
+ # Manage and report AI Gateway usage.
7
+ class TokenGroups
8
+ # Create gateway token group within the authenticated Telnyx account. Foreign and
9
+ # unknown resource IDs return the same 404 response.
10
+ sig do
11
+ params(
12
+ allowed_models: T::Array[String],
13
+ name: String,
14
+ idempotency_key: String,
15
+ blocked: T::Boolean,
16
+ budget_duration:
17
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::OrSymbol),
18
+ cache_ttl: T.nilable(Integer),
19
+ fallbacks: T.nilable(T::Hash[Symbol, T::Array[String]]),
20
+ guardrails:
21
+ T.nilable(
22
+ Telnyx::LlmTokenGateway::TokenGroupCreateParams::Guardrails::OrHash
23
+ ),
24
+ max_budget: T.nilable(Float),
25
+ max_parallel_requests: T.nilable(Integer),
26
+ provider_key_ids: T::Array[String],
27
+ retries:
28
+ T.nilable(
29
+ Telnyx::LlmTokenGateway::TokenGroupCreateParams::Retries::OrHash
30
+ ),
31
+ rpm_limit: T.nilable(Integer),
32
+ tpm_limit: T.nilable(Integer),
33
+ request_options: Telnyx::RequestOptions::OrHash
34
+ ).returns(Telnyx::LlmTokenGateway::TokenGroupResponse)
35
+ end
36
+ def create(
37
+ # Body param
38
+ allowed_models:,
39
+ # Body param
40
+ name:,
41
+ # Header param: 24h, scoped by account+method+path. Same key/body returns same
42
+ # outcome; changed body 409; in-progress 409 with Retry-After. Token-create replay
43
+ # returns 200 metadata WITHOUT secret.
44
+ idempotency_key:,
45
+ # Body param
46
+ blocked: nil,
47
+ # Body param
48
+ budget_duration: nil,
49
+ # Body param
50
+ cache_ttl: nil,
51
+ # Body param: Per-group model fallbacks: primary alias -> ordered list of 1..3
52
+ # other aliases. Every key and listed alias must be in allowed_models (a PATCH
53
+ # removing a referenced alias is 400); a chain never lists its own key; wildcards
54
+ # are rejected. Chains are one level deep (a step's own chain is not expanded).
55
+ # Fallback is attempted only for managed routes, only before the first provider
56
+ # event is forwarded, and only to steps the key may use; each attempt is reserved
57
+ # and recorded. {} and null both disable fallbacks.
58
+ fallbacks: nil,
59
+ # Body param: Per-group guardrail policy. Missing actions default to ignore.
60
+ # profiles may be listed with both dlp actions ignore (staged, inactive) but a
61
+ # non-ignore dlp action requires at least one profile. streaming defaults to
62
+ # buffered when any response action is block and passthrough otherwise;
63
+ # passthrough with a response block is 400. Findings are codes and counts only;
64
+ # content is never stored. The stored form is echoed back canonicalised (all
65
+ # actions explicit, profiles sorted); {} is stored as an all-ignore policy, null
66
+ # disables.
67
+ guardrails: nil,
68
+ # Body param: USD, decimal precision at most 6 places; parse exactly to integer
69
+ # micro-USD, never binary float accounting.
70
+ max_budget: nil,
71
+ # Body param: Optional maximum concurrent reserved/dispatched cache misses across
72
+ # replicas. Null means no concurrency cap. Cache hits do not consume slots;
73
+ # unknown usage retains its budget hold without a slot.
74
+ max_parallel_requests: nil,
75
+ # Body param
76
+ provider_key_ids: nil,
77
+ # Body param: Per-group same-route retries. max_attempts counts the first try of
78
+ # each step (the primary and each fallback) and is the ceiling for the
79
+ # x-ltg-max-attempts request header. A step is retried only when its attempt
80
+ # definitely did no provider work (connection failure before dispatch, or 429/529)
81
+ # before the first provider event; an uncertain failure (timeout,
82
+ # 408/500/502/503/504) moves to the next fallback step instead. max_attempts x
83
+ # (1 + the longest fallback chain) must not exceed 8, else 400. The n-th retry
84
+ # waits retry_delay_ms (constant), retry_delay_ms*n (linear) or
85
+ # retry_delay_ms*2^(n-1) (exponential), at most 5 s and never past the request
86
+ # deadline, then jittered uniformly down to half that value so concurrent retries
87
+ # spread out; a provider Retry-After of at most 5 s is honoured and a longer one
88
+ # moves to the next step. request_timeout_ms applies to streaming requests only:
89
+ # it bounds each attempt's time to its first provider event and never applies
90
+ # after it. Non-stream requests keep the per-attempt hop and idle bounds (their
91
+ # headers arrive only with the finished completion). retry_delay_ms and backoff
92
+ # are floors for the request knobs. Each planned attempt is reserved (at most 8
93
+ # per request); unused reservation is released at settlement. Managed routes only.
94
+ # The stored form is echoed back with defaults filled in; null disables retries.
95
+ retries: nil,
96
+ # Body param
97
+ rpm_limit: nil,
98
+ # Body param
99
+ tpm_limit: nil,
100
+ request_options: {}
101
+ )
102
+ end
103
+
104
+ # Get gateway token group within the authenticated Telnyx account. Foreign and
105
+ # unknown resource IDs return the same 404 response.
106
+ sig do
107
+ params(
108
+ id: String,
109
+ request_options: Telnyx::RequestOptions::OrHash
110
+ ).returns(Telnyx::LlmTokenGateway::TokenGroupResponse)
111
+ end
112
+ def retrieve(id, request_options: {})
113
+ end
114
+
115
+ # Update gateway token group within the authenticated Telnyx account. Foreign and
116
+ # unknown resource IDs return the same 404 response. Omitted fields are preserved.
117
+ # Null clears the optional concurrency, fallback and retry settings. A stale
118
+ # If-Match returns 412; read the resource again before updating.
119
+ sig do
120
+ params(
121
+ id: String,
122
+ idempotency_key: String,
123
+ if_match: String,
124
+ allowed_models: T::Array[String],
125
+ blocked: T::Boolean,
126
+ budget_duration:
127
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::OrSymbol),
128
+ cache_ttl: T.nilable(Integer),
129
+ fallbacks: T.nilable(T::Hash[Symbol, T::Array[String]]),
130
+ guardrails:
131
+ T.nilable(
132
+ Telnyx::LlmTokenGateway::TokenGroupUpdateParams::Guardrails::OrHash
133
+ ),
134
+ max_budget: T.nilable(Float),
135
+ max_parallel_requests: T.nilable(Integer),
136
+ name: String,
137
+ provider_key_ids: T::Array[String],
138
+ retries:
139
+ T.nilable(
140
+ Telnyx::LlmTokenGateway::TokenGroupUpdateParams::Retries::OrHash
141
+ ),
142
+ rpm_limit: T.nilable(Integer),
143
+ tpm_limit: T.nilable(Integer),
144
+ request_options: Telnyx::RequestOptions::OrHash
145
+ ).returns(Telnyx::LlmTokenGateway::TokenGroupResponse)
146
+ end
147
+ def update(
148
+ # Path param
149
+ id,
150
+ # Header param: 24h, scoped by account+method+path. Same key/body returns same
151
+ # outcome; changed body 409; in-progress 409 with Retry-After. Token-create replay
152
+ # returns 200 metadata WITHOUT secret.
153
+ idempotency_key:,
154
+ # Header param: Exact quoted resource-version ETag; an exact intermediary-weakened
155
+ # echo W/"n" is accepted. Wildcard, combined and malformed validators are
156
+ # rejected; stale 412; missing 428. HTTP field names are case-insensitive.
157
+ # Replayed idempotent result is checked first.
158
+ if_match:,
159
+ # Body param
160
+ allowed_models: nil,
161
+ # Body param
162
+ blocked: nil,
163
+ # Body param
164
+ budget_duration: nil,
165
+ # Body param
166
+ cache_ttl: nil,
167
+ # Body param: Per-group model fallbacks: primary alias -> ordered list of 1..3
168
+ # other aliases. Every key and listed alias must be in allowed_models (a PATCH
169
+ # removing a referenced alias is 400); a chain never lists its own key; wildcards
170
+ # are rejected. Chains are one level deep (a step's own chain is not expanded).
171
+ # Fallback is attempted only for managed routes, only before the first provider
172
+ # event is forwarded, and only to steps the key may use; each attempt is reserved
173
+ # and recorded. {} and null both disable fallbacks.
174
+ fallbacks: nil,
175
+ # Body param: Per-group guardrail policy. Missing actions default to ignore.
176
+ # profiles may be listed with both dlp actions ignore (staged, inactive) but a
177
+ # non-ignore dlp action requires at least one profile. streaming defaults to
178
+ # buffered when any response action is block and passthrough otherwise;
179
+ # passthrough with a response block is 400. Findings are codes and counts only;
180
+ # content is never stored. The stored form is echoed back canonicalised (all
181
+ # actions explicit, profiles sorted); {} is stored as an all-ignore policy, null
182
+ # disables.
183
+ guardrails: nil,
184
+ # Body param: USD, decimal precision at most 6 places; parse exactly to integer
185
+ # micro-USD, never binary float accounting.
186
+ max_budget: nil,
187
+ # Body param: Optional maximum concurrent reserved/dispatched cache misses across
188
+ # replicas. Null means no concurrency cap. Cache hits do not consume slots;
189
+ # unknown usage retains its budget hold without a slot.
190
+ max_parallel_requests: nil,
191
+ # Body param
192
+ name: nil,
193
+ # Body param
194
+ provider_key_ids: nil,
195
+ # Body param: Per-group same-route retries. max_attempts counts the first try of
196
+ # each step (the primary and each fallback) and is the ceiling for the
197
+ # x-ltg-max-attempts request header. A step is retried only when its attempt
198
+ # definitely did no provider work (connection failure before dispatch, or 429/529)
199
+ # before the first provider event; an uncertain failure (timeout,
200
+ # 408/500/502/503/504) moves to the next fallback step instead. max_attempts x
201
+ # (1 + the longest fallback chain) must not exceed 8, else 400. The n-th retry
202
+ # waits retry_delay_ms (constant), retry_delay_ms*n (linear) or
203
+ # retry_delay_ms*2^(n-1) (exponential), at most 5 s and never past the request
204
+ # deadline, then jittered uniformly down to half that value so concurrent retries
205
+ # spread out; a provider Retry-After of at most 5 s is honoured and a longer one
206
+ # moves to the next step. request_timeout_ms applies to streaming requests only:
207
+ # it bounds each attempt's time to its first provider event and never applies
208
+ # after it. Non-stream requests keep the per-attempt hop and idle bounds (their
209
+ # headers arrive only with the finished completion). retry_delay_ms and backoff
210
+ # are floors for the request knobs. Each planned attempt is reserved (at most 8
211
+ # per request); unused reservation is released at settlement. Managed routes only.
212
+ # The stored form is echoed back with defaults filled in; null disables retries.
213
+ retries: nil,
214
+ # Body param
215
+ rpm_limit: nil,
216
+ # Body param
217
+ tpm_limit: nil,
218
+ request_options: {}
219
+ )
220
+ end
221
+
222
+ # List gateway token groups within the authenticated Telnyx account. Foreign and
223
+ # unknown resource IDs return the same 404 response.
224
+ sig do
225
+ params(
226
+ page_number: Integer,
227
+ page_size: Integer,
228
+ page_snapshot: String,
229
+ request_options: Telnyx::RequestOptions::OrHash
230
+ ).returns(
231
+ Telnyx::Internal::DefaultFlatPagination[
232
+ Telnyx::LlmTokenGateway::TokenGroup
233
+ ]
234
+ )
235
+ end
236
+ def list(
237
+ page_number: nil,
238
+ page_size: nil,
239
+ # Required after page 1; account/filter-bound 15-minute stable snapshot;
240
+ # expired/mismatch 409.
241
+ page_snapshot: nil,
242
+ request_options: {}
243
+ )
244
+ end
245
+
246
+ # Revoke resource and its keys atomically; retain historical attribution, never
247
+ # detach into an ungoverned service key.
248
+ sig do
249
+ params(
250
+ id: String,
251
+ idempotency_key: String,
252
+ if_match: String,
253
+ request_options: Telnyx::RequestOptions::OrHash
254
+ ).void
255
+ end
256
+ def delete(
257
+ id,
258
+ # 24h, scoped by account+method+path. Same key/body returns same outcome; changed
259
+ # body 409; in-progress 409 with Retry-After. Token-create replay returns 200
260
+ # metadata WITHOUT secret.
261
+ idempotency_key:,
262
+ # Exact quoted resource-version ETag; an exact intermediary-weakened echo W/"n" is
263
+ # accepted. Wildcard, combined and malformed validators are rejected; stale 412;
264
+ # missing 428. HTTP field names are case-insensitive. Replayed idempotent result
265
+ # is checked first.
266
+ if_match:,
267
+ request_options: {}
268
+ )
269
+ end
270
+
271
+ # @api private
272
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
273
+ def self.new(client:)
274
+ end
275
+ end
276
+ end
277
+ end
278
+ end
@@ -0,0 +1,220 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class LlmTokenGateway
6
+ # Manage and report AI Gateway usage.
7
+ class TokenKeys
8
+ # Create gateway token key within the authenticated Telnyx account. Foreign and
9
+ # unknown resource IDs return the same 404 response. The token secret is returned
10
+ # only on the original create response. A replay returns metadata without the
11
+ # secret. Provisioning is advisory; ready is not a guarantee of inference
12
+ # availability.
13
+ sig do
14
+ params(
15
+ name: String,
16
+ token_group_id: String,
17
+ idempotency_key: String,
18
+ allowed_models: T.nilable(T::Array[String]),
19
+ blocked: T::Boolean,
20
+ budget_duration:
21
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::OrSymbol),
22
+ expires_at: T.nilable(Time),
23
+ max_budget: T.nilable(Float),
24
+ max_parallel_requests: T.nilable(Integer),
25
+ required_end_user_id: T::Boolean,
26
+ rpm_limit: T.nilable(Integer),
27
+ token_user_id: T.nilable(String),
28
+ tpm_limit: T.nilable(Integer),
29
+ request_options: Telnyx::RequestOptions::OrHash
30
+ ).returns(Telnyx::LlmTokenGateway::TokenKeyResponse)
31
+ end
32
+ def create(
33
+ # Body param
34
+ name:,
35
+ # Body param
36
+ token_group_id:,
37
+ # Header param: 24h, scoped by account+method+path. Same key/body returns same
38
+ # outcome; changed body 409; in-progress 409 with Retry-After. Token-create replay
39
+ # returns 200 metadata WITHOUT secret.
40
+ idempotency_key:,
41
+ # Body param
42
+ allowed_models: nil,
43
+ # Body param
44
+ blocked: nil,
45
+ # Body param
46
+ budget_duration: nil,
47
+ # Body param
48
+ expires_at: nil,
49
+ # Body param: USD, decimal precision at most 6 places; parse exactly to integer
50
+ # micro-USD, never binary float accounting.
51
+ max_budget: nil,
52
+ # Body param: Optional maximum concurrent reserved/dispatched cache misses across
53
+ # replicas. Null means no concurrency cap. Cache hits do not consume slots;
54
+ # unknown usage retains its budget hold without a slot.
55
+ max_parallel_requests: nil,
56
+ # Body param: Require a nonempty caller-asserted end-user ID; not proof of
57
+ # identity.
58
+ required_end_user_id: nil,
59
+ # Body param: Omitted or null defaults to the maximum (6000) (on a blocked key,
60
+ # null is kept until the key is unblocked); a value below the minimum (1) or above
61
+ # the maximum is rejected with 400 limit_out_of_range; a malformed value
62
+ # (negative, wrong type or precision) is 400 invalid_request. Block the key
63
+ # (blocked: true) to deny it; blocking is always accepted.
64
+ rpm_limit: nil,
65
+ # Body param
66
+ token_user_id: nil,
67
+ # Body param: Omitted or null defaults to the maximum (10000000) (on a blocked
68
+ # key, null is kept until the key is unblocked); a value below the minimum (1) or
69
+ # above the maximum is rejected with 400 limit_out_of_range; a malformed value
70
+ # (negative, wrong type or precision) is 400 invalid_request. Block the key
71
+ # (blocked: true) to deny it; blocking is always accepted.
72
+ tpm_limit: nil,
73
+ request_options: {}
74
+ )
75
+ end
76
+
77
+ # Get gateway token key within the authenticated Telnyx account. Foreign and
78
+ # unknown resource IDs return the same 404 response.
79
+ sig do
80
+ params(
81
+ id: String,
82
+ request_options: Telnyx::RequestOptions::OrHash
83
+ ).returns(Telnyx::LlmTokenGateway::TokenKeyResponse)
84
+ end
85
+ def retrieve(id, request_options: {})
86
+ end
87
+
88
+ # Update gateway token key within the authenticated Telnyx account. Foreign and
89
+ # unknown resource IDs return the same 404 response. Omitted fields are preserved.
90
+ # Null clears max_parallel_requests; null resets budget and rate limits to their
91
+ # maximum. A stale If-Match returns 412.
92
+ sig do
93
+ params(
94
+ id: String,
95
+ idempotency_key: String,
96
+ if_match: String,
97
+ allowed_models: T.nilable(T::Array[String]),
98
+ blocked: T::Boolean,
99
+ budget_duration:
100
+ T.nilable(Telnyx::LlmTokenGateway::BudgetDuration::OrSymbol),
101
+ expires_at: T.nilable(Time),
102
+ max_budget: T.nilable(Float),
103
+ max_parallel_requests: T.nilable(Integer),
104
+ name: String,
105
+ required_end_user_id: T::Boolean,
106
+ rpm_limit: T.nilable(Integer),
107
+ tpm_limit: T.nilable(Integer),
108
+ request_options: Telnyx::RequestOptions::OrHash
109
+ ).returns(Telnyx::LlmTokenGateway::TokenKeyResponse)
110
+ end
111
+ def update(
112
+ # Path param
113
+ id,
114
+ # Header param: 24h, scoped by account+method+path. Same key/body returns same
115
+ # outcome; changed body 409; in-progress 409 with Retry-After. Token-create replay
116
+ # returns 200 metadata WITHOUT secret.
117
+ idempotency_key:,
118
+ # Header param: Exact quoted resource-version ETag; an exact intermediary-weakened
119
+ # echo W/"n" is accepted. Wildcard, combined and malformed validators are
120
+ # rejected; stale 412; missing 428. HTTP field names are case-insensitive.
121
+ # Replayed idempotent result is checked first.
122
+ if_match:,
123
+ # Body param
124
+ allowed_models: nil,
125
+ # Body param
126
+ blocked: nil,
127
+ # Body param
128
+ budget_duration: nil,
129
+ # Body param
130
+ expires_at: nil,
131
+ # Body param: USD, decimal precision at most 6 places; parse exactly to integer
132
+ # micro-USD, never binary float accounting.
133
+ max_budget: nil,
134
+ # Body param: Optional maximum concurrent reserved/dispatched cache misses across
135
+ # replicas. Null means no concurrency cap. Cache hits do not consume slots;
136
+ # unknown usage retains its budget hold without a slot.
137
+ max_parallel_requests: nil,
138
+ # Body param
139
+ name: nil,
140
+ # Body param: Require a nonempty caller-asserted end-user ID; not proof of
141
+ # identity. Omission preserves the current requirement.
142
+ required_end_user_id: nil,
143
+ # Body param: Omitted or null defaults to the maximum (6000) (on a blocked key,
144
+ # null is kept until the key is unblocked); a value below the minimum (1) or above
145
+ # the maximum is rejected with 400 limit_out_of_range; a malformed value
146
+ # (negative, wrong type or precision) is 400 invalid_request. Block the key
147
+ # (blocked: true) to deny it; blocking is always accepted.
148
+ rpm_limit: nil,
149
+ # Body param: Omitted or null defaults to the maximum (10000000) (on a blocked
150
+ # key, null is kept until the key is unblocked); a value below the minimum (1) or
151
+ # above the maximum is rejected with 400 limit_out_of_range; a malformed value
152
+ # (negative, wrong type or precision) is 400 invalid_request. Block the key
153
+ # (blocked: true) to deny it; blocking is always accepted.
154
+ tpm_limit: nil,
155
+ request_options: {}
156
+ )
157
+ end
158
+
159
+ # List gateway token keys within the authenticated Telnyx account. Foreign and
160
+ # unknown resource IDs return the same 404 response.
161
+ sig do
162
+ params(
163
+ page_number: Integer,
164
+ page_size: Integer,
165
+ page_snapshot: String,
166
+ token_group_id: String,
167
+ token_user_id: String,
168
+ request_options: Telnyx::RequestOptions::OrHash
169
+ ).returns(
170
+ Telnyx::Internal::DefaultFlatPagination[
171
+ Telnyx::LlmTokenGateway::TokenKey
172
+ ]
173
+ )
174
+ end
175
+ def list(
176
+ page_number: nil,
177
+ page_size: nil,
178
+ # Required after page 1; account/filter-bound 15-minute stable snapshot;
179
+ # expired/mismatch 409.
180
+ page_snapshot: nil,
181
+ token_group_id: nil,
182
+ token_user_id: nil,
183
+ request_options: {}
184
+ )
185
+ end
186
+
187
+ # Revoke this token key. Acknowledged revocation blocks new admissions with the
188
+ # key; requests already admitted may complete. Historical usage attribution is
189
+ # retained. Other keys in the group are unchanged.
190
+ sig do
191
+ params(
192
+ id: String,
193
+ idempotency_key: String,
194
+ if_match: String,
195
+ request_options: Telnyx::RequestOptions::OrHash
196
+ ).void
197
+ end
198
+ def delete(
199
+ id,
200
+ # 24h, scoped by account+method+path. Same key/body returns same outcome; changed
201
+ # body 409; in-progress 409 with Retry-After. Token-create replay returns 200
202
+ # metadata WITHOUT secret.
203
+ idempotency_key:,
204
+ # Exact quoted resource-version ETag; an exact intermediary-weakened echo W/"n" is
205
+ # accepted. Wildcard, combined and malformed validators are rejected; stale 412;
206
+ # missing 428. HTTP field names are case-insensitive. Replayed idempotent result
207
+ # is checked first.
208
+ if_match:,
209
+ request_options: {}
210
+ )
211
+ end
212
+
213
+ # @api private
214
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
215
+ def self.new(client:)
216
+ end
217
+ end
218
+ end
219
+ end
220
+ end
@@ -0,0 +1,90 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class LlmTokenGateway
6
+ # Manage and report AI Gateway usage.
7
+ class Usage
8
+ # Durable, replayable, content-free usage export for customer pipelines. Requires
9
+ # the dedicated llm_token_gateway.usage_export.read V2 action; spend.read and
10
+ # usage.read do not grant it. Records are inference.request (one per immutable
11
+ # ledger revision; a correction adds a new id with supersedes, keep the highest
12
+ # revision per request_id) and guardrail.evaluation (one per guardrail event,
13
+ # including blocked prompts with no inference record; correlate on request_id).
14
+ # Delivery is at least once in commit order: deduplicate on id. Records appear
15
+ # after settlement and after every older database transaction has finished
16
+ # (meta.horizon_lag_seconds); keep polling with next_cursor, which is always
17
+ # returned and is reusable after has_more is false. After a logical database
18
+ # restore, restart from start_time and deduplicate on id; a cursor from before it
19
+ # may return 409 cursor_expired (no Retry-After). Retention promise 30 days. No
20
+ # prompts, responses, provider credentials, supplier or customer rates. Gateway
21
+ # reference/enforcement usage, not invoice truth or BYOK provider charges.
22
+ sig do
23
+ params(
24
+ cursor: String,
25
+ limit: Integer,
26
+ start_time: Time,
27
+ types: String,
28
+ request_options: Telnyx::RequestOptions::OrHash
29
+ ).returns(
30
+ Telnyx::Models::LlmTokenGateway::UsageRetrieveExportResponse
31
+ )
32
+ end
33
+ def retrieve_export(
34
+ # Opaque next_cursor from a previous page; not combinable with start_time. Bound
35
+ # to the requested types; the account always comes from the credential.
36
+ cursor: nil,
37
+ limit: nil,
38
+ # First page only: RFC 3339 with offset, at most 30 days ago and not in the
39
+ # future; default now - 24h.
40
+ start_time: nil,
41
+ # Comma-separated subset of inference.request,guardrail.evaluation; default both.
42
+ types: nil,
43
+ request_options: {}
44
+ )
45
+ end
46
+
47
+ # Gateway reference/enforcement usage, not invoice truth or BYOK provider charges.
48
+ # Requires the dedicated llm_token_gateway.usage.read V2 action for combined spend
49
+ # and guardrail reporting; existing spend.read and guardrail_events.read grants do
50
+ # not grant this endpoint. All totals, UTC daily buckets, models and latest 20
51
+ # guardrail events share one database snapshot. UTC half-open dates, at most 31
52
+ # days. Zero-filled days; at most 1000 models (503 rather than truncation on
53
+ # overflow/timeout). Known tokens sum independently known categories across latest
54
+ # attempt evidence, including corrections; unknown spend is excluded and
55
+ # unknown_requests/reserved_spend remain explicit. Guardrail counts count events,
56
+ # not distinct requests. No raw spend events, prompts or secrets. This read-only
57
+ # report creates no pagination snapshot and accepts no pagination parameters.
58
+ sig do
59
+ params(
60
+ end_date: Date,
61
+ start_date: Date,
62
+ token_group_id: String,
63
+ metadata: T::Hash[Symbol, String],
64
+ request_options: Telnyx::RequestOptions::OrHash
65
+ ).returns(
66
+ Telnyx::Models::LlmTokenGateway::UsageRetrieveSummaryResponse
67
+ )
68
+ end
69
+ def retrieve_summary(
70
+ end_date:,
71
+ start_date:,
72
+ token_group_id:,
73
+ # Request tag filters as metadata[<key>]=<value>, at most 5, combined with AND. A
74
+ # value matches the tag's text form exactly (booleans as true/false, integers in
75
+ # decimal), so metadata[flag]=true matches both boolean true and the string
76
+ # "true". Keys are case-sensitive; reserved-prefix keys are rejected. Unindexed:
77
+ # bounded by the account, the date range and the report timeout.
78
+ metadata: nil,
79
+ request_options: {}
80
+ )
81
+ end
82
+
83
+ # @api private
84
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
85
+ def self.new(client:)
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,28 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class LlmTokenGateway
6
+ # Manage and report AI Gateway usage.
7
+ sig { returns(Telnyx::Resources::LlmTokenGateway::Usage) }
8
+ attr_reader :usage
9
+
10
+ # Manage and report AI Gateway usage.
11
+ sig { returns(Telnyx::Resources::LlmTokenGateway::Spend) }
12
+ attr_reader :spend
13
+
14
+ # Manage and report AI Gateway usage.
15
+ sig { returns(Telnyx::Resources::LlmTokenGateway::TokenGroups) }
16
+ attr_reader :token_groups
17
+
18
+ # Manage and report AI Gateway usage.
19
+ sig { returns(Telnyx::Resources::LlmTokenGateway::TokenKeys) }
20
+ attr_reader :token_keys
21
+
22
+ # @api private
23
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
24
+ def self.new(client:)
25
+ end
26
+ end
27
+ end
28
+ end
@@ -171,12 +171,12 @@ module Telnyx
171
171
  )
172
172
  end
173
173
 
174
- # Irreversibly requests deletion of provider-hosted aggregate recording media
175
- # under the provider contract. The operation retains the Telnyx-local Meeting
176
- # session, transcript segments, events, artifacts, and usage records. It is
177
- # separate from `DELETE /meeting_sessions/{id}`, which stops or cancels
178
- # participation without deleting the persisted session. A missing/foreign session
179
- # returns 404; provider deletion failures return 502.
174
+ # Irreversibly requests deletion of the aggregate recording media for the session.
175
+ # The operation retains the Telnyx-local Meeting session, transcript segments,
176
+ # events, artifacts, and usage records. It is separate from
177
+ # `DELETE /meeting_sessions/{id}`, which stops or cancels participation without
178
+ # deleting the persisted session. A missing/foreign session returns 404; provider
179
+ # deletion failures return 502.
180
180
  sig do
181
181
  params(
182
182
  id: String,
@@ -21,9 +21,10 @@ module Telnyx
21
21
  end
22
22
 
23
23
  # Returns background jobs that operate on phone numbers. Filter by job type,
24
- # target phone numbers, or job status, and sort by creation time. Multiple
25
- # phone-number or status values use OR semantics within that filter; different
26
- # filter categories use AND semantics. Results include pagination metadata.
24
+ # target phone numbers, job status, or creation-time customer reference, and sort
25
+ # by creation time. Multiple phone-number or status values use OR semantics within
26
+ # that filter; different filter categories use AND semantics. Results include
27
+ # pagination metadata.
27
28
  sig do
28
29
  params(
29
30
  filter: Telnyx::PhoneNumbers::JobListParams::Filter::OrHash,
@@ -39,7 +40,8 @@ module Telnyx
39
40
  end
40
41
  def list(
41
42
  # Consolidated filter parameter (deepObject style). Originally: filter[type],
42
- # filter[phone_number], filter[phone_number][], filter[status][]
43
+ # filter[phone_number], filter[phone_number][], filter[status][],
44
+ # filter[customer_reference]
43
45
  filter: nil,
44
46
  page_number: nil,
45
47
  page_size: nil,