telnyx 5.174.0 → 5.175.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 (571) 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 +18 -0
  5. data/lib/telnyx/internal/email_events_cursor_pagination.rb +104 -0
  6. data/lib/telnyx/models/agent_gateway.rb +110 -0
  7. data/lib/telnyx/models/agent_gateway_create_params.rb +34 -0
  8. data/lib/telnyx/models/agent_gateway_delete_params.rb +20 -0
  9. data/lib/telnyx/models/agent_gateway_list_params.rb +30 -0
  10. data/lib/telnyx/models/agent_gateway_response.rb +17 -0
  11. data/lib/telnyx/models/agent_gateway_retrieve_models_params.rb +20 -0
  12. data/lib/telnyx/models/agent_gateway_retrieve_models_response.rb +108 -0
  13. data/lib/telnyx/models/agent_gateway_retrieve_params.rb +20 -0
  14. data/lib/telnyx/models/agent_gateway_retrieve_spend_logs_params.rb +73 -0
  15. data/lib/telnyx/models/agent_gateway_retrieve_spend_logs_response.rb +186 -0
  16. data/lib/telnyx/models/agent_gateways/agent_gateway_api.rb +105 -0
  17. data/lib/telnyx/models/agent_gateways/agent_gateway_api_response.rb +20 -0
  18. data/lib/telnyx/models/agent_gateways/agent_gateway_aws_sig_v4_auth.rb +69 -0
  19. data/lib/telnyx/models/agent_gateways/agent_gateway_guardrail.rb +122 -0
  20. data/lib/telnyx/models/agent_gateways/agent_gateway_guardrail_response.rb +20 -0
  21. data/lib/telnyx/models/agent_gateways/agent_gateway_key.rb +130 -0
  22. data/lib/telnyx/models/agent_gateways/agent_gateway_key_response.rb +21 -0
  23. data/lib/telnyx/models/agent_gateways/agent_gateway_mcp_server.rb +116 -0
  24. data/lib/telnyx/models/agent_gateways/agent_gateway_mcp_server_response.rb +20 -0
  25. data/lib/telnyx/models/agent_gateways/agent_gateway_no_auth.rb +31 -0
  26. data/lib/telnyx/models/agent_gateways/agent_gateway_oauth_client_credentials.rb +99 -0
  27. data/lib/telnyx/models/agent_gateways/agent_gateway_passthrough_auth.rb +32 -0
  28. data/lib/telnyx/models/agent_gateways/agent_gateway_policy.rb +86 -0
  29. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_attachment.rb +74 -0
  30. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_attachment_response.rb +21 -0
  31. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_guardrails.rb +31 -0
  32. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_pipeline.rb +48 -0
  33. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_response.rb +21 -0
  34. data/lib/telnyx/models/agent_gateways/agent_gateway_policy_step.rb +114 -0
  35. data/lib/telnyx/models/agent_gateways/agent_gateway_shown_auth.rb +22 -0
  36. data/lib/telnyx/models/agent_gateways/agent_gateway_static_auth.rb +68 -0
  37. data/lib/telnyx/models/agent_gateways/agent_gateway_team.rb +106 -0
  38. data/lib/telnyx/models/agent_gateways/agent_gateway_team_response.rb +25 -0
  39. data/lib/telnyx/models/agent_gateways/api_create_params.rb +117 -0
  40. data/lib/telnyx/models/agent_gateways/api_delete_params.rb +28 -0
  41. data/lib/telnyx/models/agent_gateways/api_list_params.rb +22 -0
  42. data/lib/telnyx/models/agent_gateways/api_list_response.rb +18 -0
  43. data/lib/telnyx/models/agent_gateways/api_update_params.rb +124 -0
  44. data/lib/telnyx/models/agent_gateways/guardrail_create_params.rb +113 -0
  45. data/lib/telnyx/models/agent_gateways/guardrail_delete_params.rb +28 -0
  46. data/lib/telnyx/models/agent_gateways/guardrail_list_params.rb +22 -0
  47. data/lib/telnyx/models/agent_gateways/guardrail_list_response.rb +18 -0
  48. data/lib/telnyx/models/agent_gateways/guardrail_update_params.rb +94 -0
  49. data/lib/telnyx/models/agent_gateways/key_create_params.rb +100 -0
  50. data/lib/telnyx/models/agent_gateways/key_create_response.rb +150 -0
  51. data/lib/telnyx/models/agent_gateways/key_delete_params.rb +28 -0
  52. data/lib/telnyx/models/agent_gateways/key_list_params.rb +31 -0
  53. data/lib/telnyx/models/agent_gateways/key_list_response.rb +18 -0
  54. data/lib/telnyx/models/agent_gateways/key_update_params.rb +110 -0
  55. data/lib/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions.rb +45 -0
  56. data/lib/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions_response.rb +20 -0
  57. data/lib/telnyx/models/agent_gateways/keys/tool_permission_create_params.rb +30 -0
  58. data/lib/telnyx/models/agent_gateways/keys/tool_permission_list_params.rb +30 -0
  59. data/lib/telnyx/models/agent_gateways/mcp_server_create_params.rb +128 -0
  60. data/lib/telnyx/models/agent_gateways/mcp_server_delete_params.rb +28 -0
  61. data/lib/telnyx/models/agent_gateways/mcp_server_list_params.rb +22 -0
  62. data/lib/telnyx/models/agent_gateways/mcp_server_list_response.rb +18 -0
  63. data/lib/telnyx/models/agent_gateways/mcp_server_update_params.rb +135 -0
  64. data/lib/telnyx/models/agent_gateways/policy_attachment_create_params.rb +59 -0
  65. data/lib/telnyx/models/agent_gateways/policy_attachment_delete_params.rb +28 -0
  66. data/lib/telnyx/models/agent_gateways/policy_attachment_list_params.rb +22 -0
  67. data/lib/telnyx/models/agent_gateways/policy_attachment_list_response.rb +19 -0
  68. data/lib/telnyx/models/agent_gateways/policy_create_params.rb +79 -0
  69. data/lib/telnyx/models/agent_gateways/policy_delete_params.rb +28 -0
  70. data/lib/telnyx/models/agent_gateways/policy_list_params.rb +22 -0
  71. data/lib/telnyx/models/agent_gateways/policy_list_response.rb +18 -0
  72. data/lib/telnyx/models/agent_gateways/policy_retrieve_params.rb +28 -0
  73. data/lib/telnyx/models/agent_gateways/policy_update_params.rb +77 -0
  74. data/lib/telnyx/models/agent_gateways/team_create_params.rb +71 -0
  75. data/lib/telnyx/models/agent_gateways/team_delete_params.rb +28 -0
  76. data/lib/telnyx/models/agent_gateways/team_list_params.rb +22 -0
  77. data/lib/telnyx/models/agent_gateways/team_list_response.rb +18 -0
  78. data/lib/telnyx/models/agent_gateways/team_update_params.rb +90 -0
  79. data/lib/telnyx/models/agent_gateways/teams/tool_permission_create_params.rb +30 -0
  80. data/lib/telnyx/models/agent_gateways/teams/tool_permission_list_params.rb +30 -0
  81. data/lib/telnyx/models/ai/chat_completion_request.rb +3 -5
  82. data/lib/telnyx/models/ai/conversation_delete_delete_params.rb +28 -0
  83. data/lib/telnyx/models/ai/external_llm.rb +20 -1
  84. data/lib/telnyx/models/ai/external_llm_req.rb +20 -1
  85. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +14 -2
  86. data/lib/telnyx/models/ai/inference_embedding_voice_settings.rb +13 -1
  87. data/lib/telnyx/models/ai/memory/namespaces/agent_memory_page_meta.rb +58 -0
  88. data/lib/telnyx/models/ai/memory/namespaces/page_meta.rb +6 -18
  89. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_params.rb +4 -4
  90. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rb +4 -4
  91. data/lib/telnyx/models/ai/pay_tool_params.rb +791 -1
  92. data/lib/telnyx/models/ai/privacy_settings.rb +26 -12
  93. data/lib/telnyx/models/ai/start_speaking_plan.rb +24 -5
  94. data/lib/telnyx/models/ai/telephony_settings.rb +13 -1
  95. data/lib/telnyx/models/ai/tests/test_framework/v1_retrieve_personalities_response.rb +27 -16
  96. data/lib/telnyx/models/ai/transcription_endpointing_plan.rb +5 -1
  97. data/lib/telnyx/models/ai/transcription_settings_config.rb +2 -1
  98. data/lib/telnyx/models/browser_session_create_params.rb +3 -3
  99. data/lib/telnyx/models/browser_sessions/action_response.rb +10 -9
  100. data/lib/telnyx/models/browser_sessions/wait_for_action.rb +5 -5
  101. data/lib/telnyx/models/calendar_connection.rb +188 -0
  102. data/lib/telnyx/models/calendar_connection_create_params.rb +33 -0
  103. data/lib/telnyx/models/calendar_connection_create_response.rb +57 -0
  104. data/lib/telnyx/models/calendar_connection_delete_params.rb +20 -0
  105. data/lib/telnyx/models/calendar_connection_list_params.rb +14 -0
  106. data/lib/telnyx/models/calendar_connection_list_response.rb +16 -0
  107. data/lib/telnyx/models/calendar_connection_response.rb +16 -0
  108. data/lib/telnyx/models/calendar_connection_retrieve_params.rb +20 -0
  109. data/lib/telnyx/models/calendar_connection_update_params.rb +189 -0
  110. data/lib/telnyx/models/calendar_connection_update_response.rb +210 -0
  111. data/lib/telnyx/models/calendar_connections/calendar_meeting.rb +203 -0
  112. data/lib/telnyx/models/calendar_connections/meeting_list_params.rb +39 -0
  113. data/lib/telnyx/models/calendar_connections/meeting_list_response.rb +18 -0
  114. data/lib/telnyx/models/calendar_connections/meeting_update_params.rb +42 -0
  115. data/lib/telnyx/models/calendar_connections/meeting_update_response.rb +18 -0
  116. data/lib/telnyx/models/call_analyzed_webhook_event.rb +12 -17
  117. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +5 -3
  118. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +5 -3
  119. data/lib/telnyx/models/calls/action_speak_params.rb +5 -3
  120. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +5 -3
  121. data/lib/telnyx/models/calls/assembly_ai_voice_settings.rb +30 -0
  122. data/lib/telnyx/models/conferences/action_speak_params.rb +5 -3
  123. data/lib/telnyx/models/conversation_relay_embedded_config.rb +5 -3
  124. data/lib/telnyx/models/conversation_relay_language.rb +5 -3
  125. data/lib/telnyx/models/email_event_list_response.rb +218 -265
  126. data/lib/telnyx/models/enterprises/enterprise_email_verification_status.rb +87 -0
  127. data/lib/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rb +3 -83
  128. data/lib/telnyx/models/enterprises/reputation/external_verification.rb +72 -0
  129. data/lib/telnyx/models/enterprises/reputation/external_verification_wrapped.rb +3 -67
  130. data/lib/telnyx/models/generic_pay_connector_config.rb +18 -18
  131. data/lib/telnyx/models/llm_token_gateway/budget_duration.rb +3 -3
  132. data/lib/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_params.rb +40 -0
  133. data/lib/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_response.rb +9 -0
  134. data/lib/telnyx/models/meeting_session.rb +117 -72
  135. data/lib/telnyx/models/meeting_session_assistant.rb +57 -0
  136. data/lib/telnyx/models/meeting_session_create_params.rb +107 -65
  137. data/lib/telnyx/models/meeting_session_leave_policy.rb +75 -0
  138. data/lib/telnyx/models/meeting_session_recording_destination.rb +33 -0
  139. data/lib/telnyx/models/meeting_session_recording_export.rb +67 -0
  140. data/lib/telnyx/models/meeting_session_response.rb +4 -4
  141. data/lib/telnyx/models/meeting_session_retrieve_recordings_params.rb +20 -0
  142. data/lib/telnyx/models/meeting_session_retrieve_recordings_response.rb +56 -0
  143. data/lib/telnyx/models/meeting_session_retrieve_transcript_response.rb +16 -2
  144. data/lib/telnyx/models/meeting_sessions/action_send_chat_params.rb +7 -2
  145. data/lib/telnyx/models/message_event.rb +1 -1
  146. data/lib/telnyx/models/message_whatsapp_params.rb +6 -6
  147. data/lib/telnyx/models/number_lookup_retrieve_response.rb +10 -1
  148. data/lib/telnyx/models/pay_connector.rb +3 -3
  149. data/lib/telnyx/models/recording_export_failed_webhook_event.rb +119 -0
  150. data/lib/telnyx/models/recording_exported_webhook_event.rb +106 -0
  151. data/lib/telnyx/models/session.rb +3 -3
  152. data/lib/telnyx/models/session_status_changed_webhook_event.rb +28 -1
  153. data/lib/telnyx/models/telephony_credential.rb +13 -1
  154. data/lib/telnyx/models/telephony_credential_retrieve_token_material_params.rb +20 -0
  155. data/lib/telnyx/models/telephony_credential_retrieve_token_material_response.rb +23 -0
  156. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +127 -1
  157. data/lib/telnyx/models/text_to_speech_list_voices_params.rb +1 -0
  158. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +1 -0
  159. data/lib/telnyx/models/token_material.rb +42 -0
  160. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  161. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  162. data/lib/telnyx/models/user_profile.rb +198 -0
  163. data/lib/telnyx/models/user_profile_list_params.rb +14 -0
  164. data/lib/telnyx/models/user_profile_list_response.rb +17 -0
  165. data/lib/telnyx/models/user_profile_patch_all_params.rb +365 -0
  166. data/lib/telnyx/models/user_profile_patch_all_response.rb +17 -0
  167. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +0 -2
  168. data/lib/telnyx/models/voice_clone_data.rb +1 -0
  169. data/lib/telnyx/models/voice_clone_list_params.rb +1 -0
  170. data/lib/telnyx/models.rb +61 -0
  171. data/lib/telnyx/resources/agent_gateways/apis.rb +159 -0
  172. data/lib/telnyx/resources/agent_gateways/guardrails.rb +144 -0
  173. data/lib/telnyx/resources/agent_gateways/keys/tool_permissions.rb +86 -0
  174. data/lib/telnyx/resources/agent_gateways/keys.rb +176 -0
  175. data/lib/telnyx/resources/agent_gateways/mcp_servers.rb +160 -0
  176. data/lib/telnyx/resources/agent_gateways/policies.rb +175 -0
  177. data/lib/telnyx/resources/agent_gateways/policy_attachments.rb +98 -0
  178. data/lib/telnyx/resources/agent_gateways/teams/tool_permissions.rb +82 -0
  179. data/lib/telnyx/resources/agent_gateways/teams.rb +156 -0
  180. data/lib/telnyx/resources/agent_gateways.rb +209 -0
  181. data/lib/telnyx/resources/ai/conversations.rb +39 -1
  182. data/lib/telnyx/resources/browser_sessions.rb +1 -1
  183. data/lib/telnyx/resources/calendar_connections/meetings.rb +83 -0
  184. data/lib/telnyx/resources/calendar_connections.rb +155 -0
  185. data/lib/telnyx/resources/calls/actions.rb +4 -4
  186. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  187. data/lib/telnyx/resources/email_events.rb +2 -1
  188. data/lib/telnyx/resources/meeting_bot/calendar.rb +48 -0
  189. data/lib/telnyx/resources/meeting_bot.rb +19 -0
  190. data/lib/telnyx/resources/meeting_sessions/actions.rb +18 -11
  191. data/lib/telnyx/resources/meeting_sessions/artifacts.rb +8 -7
  192. data/lib/telnyx/resources/meeting_sessions.rb +73 -28
  193. data/lib/telnyx/resources/telephony_credentials.rb +23 -0
  194. data/lib/telnyx/resources/text_to_speech.rb +5 -3
  195. data/lib/telnyx/resources/user_profile.rb +138 -0
  196. data/lib/telnyx/resources/webhooks.rb +2 -2
  197. data/lib/telnyx/version.rb +1 -1
  198. data/lib/telnyx.rb +129 -0
  199. data/rbi/telnyx/client.rbi +14 -0
  200. data/rbi/telnyx/internal/email_events_cursor_pagination.rbi +40 -0
  201. data/rbi/telnyx/models/agent_gateway.rbi +136 -0
  202. data/rbi/telnyx/models/agent_gateway_create_params.rbi +53 -0
  203. data/rbi/telnyx/models/agent_gateway_delete_params.rbi +35 -0
  204. data/rbi/telnyx/models/agent_gateway_list_params.rbi +57 -0
  205. data/rbi/telnyx/models/agent_gateway_response.rbi +32 -0
  206. data/rbi/telnyx/models/agent_gateway_retrieve_models_params.rbi +38 -0
  207. data/rbi/telnyx/models/agent_gateway_retrieve_models_response.rbi +194 -0
  208. data/rbi/telnyx/models/agent_gateway_retrieve_params.rbi +35 -0
  209. data/rbi/telnyx/models/agent_gateway_retrieve_spend_logs_params.rbi +112 -0
  210. data/rbi/telnyx/models/agent_gateway_retrieve_spend_logs_response.rbi +269 -0
  211. data/rbi/telnyx/models/agent_gateways/agent_gateway_api.rbi +135 -0
  212. data/rbi/telnyx/models/agent_gateways/agent_gateway_api_response.rbi +41 -0
  213. data/rbi/telnyx/models/agent_gateways/agent_gateway_aws_sig_v4_auth.rbi +89 -0
  214. data/rbi/telnyx/models/agent_gateways/agent_gateway_guardrail.rbi +254 -0
  215. data/rbi/telnyx/models/agent_gateways/agent_gateway_guardrail_response.rbi +45 -0
  216. data/rbi/telnyx/models/agent_gateways/agent_gateway_key.rbi +151 -0
  217. data/rbi/telnyx/models/agent_gateways/agent_gateway_key_response.rbi +45 -0
  218. data/rbi/telnyx/models/agent_gateways/agent_gateway_mcp_server.rbi +172 -0
  219. data/rbi/telnyx/models/agent_gateways/agent_gateway_mcp_server_response.rbi +45 -0
  220. data/rbi/telnyx/models/agent_gateways/agent_gateway_no_auth.rbi +76 -0
  221. data/rbi/telnyx/models/agent_gateways/agent_gateway_oauth_client_credentials.rbi +155 -0
  222. data/rbi/telnyx/models/agent_gateways/agent_gateway_passthrough_auth.rbi +87 -0
  223. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy.rbi +136 -0
  224. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_attachment.rbi +95 -0
  225. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_attachment_response.rbi +50 -0
  226. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_guardrails.rbi +54 -0
  227. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_pipeline.rbi +97 -0
  228. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_response.rbi +45 -0
  229. data/rbi/telnyx/models/agent_gateways/agent_gateway_policy_step.rbi +273 -0
  230. data/rbi/telnyx/models/agent_gateways/agent_gateway_shown_auth.rbi +35 -0
  231. data/rbi/telnyx/models/agent_gateways/agent_gateway_static_auth.rbi +124 -0
  232. data/rbi/telnyx/models/agent_gateways/agent_gateway_team.rbi +126 -0
  233. data/rbi/telnyx/models/agent_gateways/agent_gateway_team_response.rbi +47 -0
  234. data/rbi/telnyx/models/agent_gateways/api_create_params.rbi +194 -0
  235. data/rbi/telnyx/models/agent_gateways/api_delete_params.rbi +48 -0
  236. data/rbi/telnyx/models/agent_gateways/api_list_params.rbi +40 -0
  237. data/rbi/telnyx/models/agent_gateways/api_list_response.rbi +36 -0
  238. data/rbi/telnyx/models/agent_gateways/api_update_params.rbi +206 -0
  239. data/rbi/telnyx/models/agent_gateways/guardrail_create_params.rbi +253 -0
  240. data/rbi/telnyx/models/agent_gateways/guardrail_delete_params.rbi +48 -0
  241. data/rbi/telnyx/models/agent_gateways/guardrail_list_params.rbi +40 -0
  242. data/rbi/telnyx/models/agent_gateways/guardrail_list_response.rbi +36 -0
  243. data/rbi/telnyx/models/agent_gateways/guardrail_update_params.rbi +199 -0
  244. data/rbi/telnyx/models/agent_gateways/key_create_params.rbi +122 -0
  245. data/rbi/telnyx/models/agent_gateways/key_create_response.rbi +199 -0
  246. data/rbi/telnyx/models/agent_gateways/key_delete_params.rbi +48 -0
  247. data/rbi/telnyx/models/agent_gateways/key_list_params.rbi +57 -0
  248. data/rbi/telnyx/models/agent_gateways/key_list_response.rbi +36 -0
  249. data/rbi/telnyx/models/agent_gateways/key_update_params.rbi +141 -0
  250. data/rbi/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions.rbi +96 -0
  251. data/rbi/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions_response.rbi +49 -0
  252. data/rbi/telnyx/models/agent_gateways/keys/tool_permission_create_params.rbi +50 -0
  253. data/rbi/telnyx/models/agent_gateways/keys/tool_permission_list_params.rbi +50 -0
  254. data/rbi/telnyx/models/agent_gateways/mcp_server_create_params.rbi +246 -0
  255. data/rbi/telnyx/models/agent_gateways/mcp_server_delete_params.rbi +48 -0
  256. data/rbi/telnyx/models/agent_gateways/mcp_server_list_params.rbi +40 -0
  257. data/rbi/telnyx/models/agent_gateways/mcp_server_list_response.rbi +36 -0
  258. data/rbi/telnyx/models/agent_gateways/mcp_server_update_params.rbi +258 -0
  259. data/rbi/telnyx/models/agent_gateways/policy_attachment_create_params.rbi +86 -0
  260. data/rbi/telnyx/models/agent_gateways/policy_attachment_delete_params.rbi +48 -0
  261. data/rbi/telnyx/models/agent_gateways/policy_attachment_list_params.rbi +40 -0
  262. data/rbi/telnyx/models/agent_gateways/policy_attachment_list_response.rbi +44 -0
  263. data/rbi/telnyx/models/agent_gateways/policy_create_params.rbi +133 -0
  264. data/rbi/telnyx/models/agent_gateways/policy_delete_params.rbi +48 -0
  265. data/rbi/telnyx/models/agent_gateways/policy_list_params.rbi +40 -0
  266. data/rbi/telnyx/models/agent_gateways/policy_list_response.rbi +36 -0
  267. data/rbi/telnyx/models/agent_gateways/policy_retrieve_params.rbi +48 -0
  268. data/rbi/telnyx/models/agent_gateways/policy_update_params.rbi +129 -0
  269. data/rbi/telnyx/models/agent_gateways/team_create_params.rbi +94 -0
  270. data/rbi/telnyx/models/agent_gateways/team_delete_params.rbi +48 -0
  271. data/rbi/telnyx/models/agent_gateways/team_list_params.rbi +40 -0
  272. data/rbi/telnyx/models/agent_gateways/team_list_response.rbi +36 -0
  273. data/rbi/telnyx/models/agent_gateways/team_update_params.rbi +119 -0
  274. data/rbi/telnyx/models/agent_gateways/teams/tool_permission_create_params.rbi +50 -0
  275. data/rbi/telnyx/models/agent_gateways/teams/tool_permission_list_params.rbi +50 -0
  276. data/rbi/telnyx/models/ai/chat_completion_request.rbi +6 -10
  277. data/rbi/telnyx/models/ai/conversation_delete_delete_params.rbi +48 -0
  278. data/rbi/telnyx/models/ai/external_llm.rbi +30 -0
  279. data/rbi/telnyx/models/ai/external_llm_req.rbi +30 -0
  280. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +29 -3
  281. data/rbi/telnyx/models/ai/inference_embedding_voice_settings.rbi +16 -0
  282. data/rbi/telnyx/models/ai/memory/namespaces/agent_memory_page_meta.rbi +81 -0
  283. data/rbi/telnyx/models/ai/memory/namespaces/page_meta.rbi +6 -17
  284. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbi +2 -2
  285. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbi +2 -2
  286. data/rbi/telnyx/models/ai/pay_tool_params.rbi +1943 -0
  287. data/rbi/telnyx/models/ai/privacy_settings.rbi +50 -22
  288. data/rbi/telnyx/models/ai/start_speaking_plan.rbi +33 -7
  289. data/rbi/telnyx/models/ai/telephony_settings.rbi +16 -0
  290. data/rbi/telnyx/models/ai/tests/test_framework/v1_retrieve_personalities_response.rbi +22 -13
  291. data/rbi/telnyx/models/ai/transcription_endpointing_plan.rbi +5 -1
  292. data/rbi/telnyx/models/browser_session_create_params.rbi +4 -4
  293. data/rbi/telnyx/models/browser_sessions/action_response.rbi +11 -11
  294. data/rbi/telnyx/models/browser_sessions/wait_for_action.rbi +6 -6
  295. data/rbi/telnyx/models/calendar_connection.rbi +277 -0
  296. data/rbi/telnyx/models/calendar_connection_create_params.rbi +81 -0
  297. data/rbi/telnyx/models/calendar_connection_create_response.rbi +133 -0
  298. data/rbi/telnyx/models/calendar_connection_delete_params.rbi +38 -0
  299. data/rbi/telnyx/models/calendar_connection_list_params.rbi +27 -0
  300. data/rbi/telnyx/models/calendar_connection_list_response.rbi +30 -0
  301. data/rbi/telnyx/models/calendar_connection_response.rbi +30 -0
  302. data/rbi/telnyx/models/calendar_connection_retrieve_params.rbi +38 -0
  303. data/rbi/telnyx/models/calendar_connection_update_params.rbi +367 -0
  304. data/rbi/telnyx/models/calendar_connection_update_response.rbi +376 -0
  305. data/rbi/telnyx/models/calendar_connections/calendar_meeting.rbi +390 -0
  306. data/rbi/telnyx/models/calendar_connections/meeting_list_params.rbi +68 -0
  307. data/rbi/telnyx/models/calendar_connections/meeting_list_response.rbi +36 -0
  308. data/rbi/telnyx/models/calendar_connections/meeting_update_params.rbi +62 -0
  309. data/rbi/telnyx/models/calendar_connections/meeting_update_response.rbi +43 -0
  310. data/rbi/telnyx/models/call_analyzed_webhook_event.rbi +11 -16
  311. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +10 -5
  312. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +10 -5
  313. data/rbi/telnyx/models/calls/action_speak_params.rbi +10 -5
  314. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +10 -5
  315. data/rbi/telnyx/models/calls/assembly_ai_voice_settings.rbi +67 -0
  316. data/rbi/telnyx/models/conferences/action_speak_params.rbi +10 -5
  317. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +10 -5
  318. data/rbi/telnyx/models/conversation_relay_language.rbi +10 -5
  319. data/rbi/telnyx/models/email_event_list_response.rbi +441 -548
  320. data/rbi/telnyx/models/enterprises/enterprise_email_verification_status.rbi +159 -0
  321. data/rbi/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rbi +4 -162
  322. data/rbi/telnyx/models/enterprises/reputation/external_verification.rbi +113 -0
  323. data/rbi/telnyx/models/enterprises/reputation/external_verification_wrapped.rbi +4 -108
  324. data/rbi/telnyx/models/generic_pay_connector_config.rbi +24 -24
  325. data/rbi/telnyx/models/llm_token_gateway/budget_duration.rbi +3 -3
  326. data/rbi/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_params.rbi +73 -0
  327. data/rbi/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_response.rbi +9 -0
  328. data/rbi/telnyx/models/meeting_session.rbi +218 -117
  329. data/rbi/telnyx/models/meeting_session_assistant.rbi +94 -0
  330. data/rbi/telnyx/models/meeting_session_create_params.rbi +196 -97
  331. data/rbi/telnyx/models/meeting_session_leave_policy.rbi +111 -0
  332. data/rbi/telnyx/models/meeting_session_recording_destination.rbi +46 -0
  333. data/rbi/telnyx/models/meeting_session_recording_export.rbi +115 -0
  334. data/rbi/telnyx/models/meeting_session_response.rbi +6 -6
  335. data/rbi/telnyx/models/meeting_session_retrieve_recordings_params.rbi +38 -0
  336. data/rbi/telnyx/models/meeting_session_retrieve_recordings_response.rbi +116 -0
  337. data/rbi/telnyx/models/meeting_session_retrieve_transcript_response.rbi +10 -0
  338. data/rbi/telnyx/models/meeting_sessions/action_send_chat_params.rbi +6 -2
  339. data/rbi/telnyx/models/message_whatsapp_params.rbi +20 -10
  340. data/rbi/telnyx/models/number_lookup_retrieve_response.rbi +14 -1
  341. data/rbi/telnyx/models/pay_connector.rbi +4 -4
  342. data/rbi/telnyx/models/recording_export_failed_webhook_event.rbi +243 -0
  343. data/rbi/telnyx/models/recording_exported_webhook_event.rbi +171 -0
  344. data/rbi/telnyx/models/session.rbi +3 -3
  345. data/rbi/telnyx/models/session_status_changed_webhook_event.rbi +92 -3
  346. data/rbi/telnyx/models/telephony_credential.rbi +13 -0
  347. data/rbi/telnyx/models/telephony_credential_retrieve_token_material_params.rbi +38 -0
  348. data/rbi/telnyx/models/telephony_credential_retrieve_token_material_response.rbi +39 -0
  349. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +358 -0
  350. data/rbi/telnyx/models/text_to_speech_list_voices_params.rbi +5 -0
  351. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +5 -0
  352. data/rbi/telnyx/models/token_material.rbi +61 -0
  353. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +2 -0
  354. data/rbi/telnyx/models/unwrap_webhook_event.rbi +2 -0
  355. data/rbi/telnyx/models/user_profile.rbi +286 -0
  356. data/rbi/telnyx/models/user_profile_list_params.rbi +27 -0
  357. data/rbi/telnyx/models/user_profile_list_response.rbi +35 -0
  358. data/rbi/telnyx/models/user_profile_patch_all_params.rbi +582 -0
  359. data/rbi/telnyx/models/user_profile_patch_all_response.rbi +35 -0
  360. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +0 -10
  361. data/rbi/telnyx/models/voice_clone_data.rbi +2 -0
  362. data/rbi/telnyx/models/voice_clone_list_params.rbi +5 -0
  363. data/rbi/telnyx/models.rbi +70 -0
  364. data/rbi/telnyx/resources/agent_gateways/apis.rbi +157 -0
  365. data/rbi/telnyx/resources/agent_gateways/guardrails.rbi +144 -0
  366. data/rbi/telnyx/resources/agent_gateways/keys/tool_permissions.rbi +68 -0
  367. data/rbi/telnyx/resources/agent_gateways/keys.rbi +153 -0
  368. data/rbi/telnyx/resources/agent_gateways/mcp_servers.rbi +157 -0
  369. data/rbi/telnyx/resources/agent_gateways/policies.rbi +151 -0
  370. data/rbi/telnyx/resources/agent_gateways/policy_attachments.rbi +74 -0
  371. data/rbi/telnyx/resources/agent_gateways/teams/tool_permissions.rbi +67 -0
  372. data/rbi/telnyx/resources/agent_gateways/teams.rbi +131 -0
  373. data/rbi/telnyx/resources/agent_gateways.rbi +159 -0
  374. data/rbi/telnyx/resources/ai/conversations.rbi +29 -1
  375. data/rbi/telnyx/resources/ai/openai/chat.rbi +3 -5
  376. data/rbi/telnyx/resources/browser_sessions.rbi +1 -1
  377. data/rbi/telnyx/resources/calendar_connections/meetings.rbi +62 -0
  378. data/rbi/telnyx/resources/calendar_connections.rbi +137 -0
  379. data/rbi/telnyx/resources/calls/actions.rbi +8 -4
  380. data/rbi/telnyx/resources/conferences/actions.rbi +2 -1
  381. data/rbi/telnyx/resources/email_events.rbi +5 -1
  382. data/rbi/telnyx/resources/meeting_bot/calendar.rbi +38 -0
  383. data/rbi/telnyx/resources/meeting_bot.rbi +16 -0
  384. data/rbi/telnyx/resources/meeting_sessions/actions.rbi +17 -11
  385. data/rbi/telnyx/resources/meeting_sessions/artifacts.rbi +8 -7
  386. data/rbi/telnyx/resources/meeting_sessions.rbi +96 -40
  387. data/rbi/telnyx/resources/telephony_credentials.rbi +19 -0
  388. data/rbi/telnyx/resources/text_to_speech.rbi +7 -2
  389. data/rbi/telnyx/resources/user_profile.rbi +164 -0
  390. data/rbi/telnyx/resources/webhooks.rbi +4 -0
  391. data/sig/telnyx/client.rbs +8 -0
  392. data/sig/telnyx/internal/email_events_cursor_pagination.rbs +24 -0
  393. data/sig/telnyx/models/agent_gateway.rbs +74 -0
  394. data/sig/telnyx/models/agent_gateway_create_params.rbs +28 -0
  395. data/sig/telnyx/models/agent_gateway_delete_params.rbs +23 -0
  396. data/sig/telnyx/models/agent_gateway_list_params.rbs +32 -0
  397. data/sig/telnyx/models/agent_gateway_response.rbs +13 -0
  398. data/sig/telnyx/models/agent_gateway_retrieve_models_params.rbs +23 -0
  399. data/sig/telnyx/models/agent_gateway_retrieve_models_response.rbs +94 -0
  400. data/sig/telnyx/models/agent_gateway_retrieve_params.rbs +23 -0
  401. data/sig/telnyx/models/agent_gateway_retrieve_spend_logs_params.rbs +68 -0
  402. data/sig/telnyx/models/agent_gateway_retrieve_spend_logs_response.rbs +139 -0
  403. data/sig/telnyx/models/agent_gateways/agent_gateway_api.rbs +74 -0
  404. data/sig/telnyx/models/agent_gateways/agent_gateway_api_response.rbs +18 -0
  405. data/sig/telnyx/models/agent_gateways/agent_gateway_aws_sig_v4_auth.rbs +56 -0
  406. data/sig/telnyx/models/agent_gateways/agent_gateway_guardrail.rbs +107 -0
  407. data/sig/telnyx/models/agent_gateways/agent_gateway_guardrail_response.rbs +20 -0
  408. data/sig/telnyx/models/agent_gateways/agent_gateway_key.rbs +89 -0
  409. data/sig/telnyx/models/agent_gateways/agent_gateway_key_response.rbs +18 -0
  410. data/sig/telnyx/models/agent_gateways/agent_gateway_mcp_server.rbs +85 -0
  411. data/sig/telnyx/models/agent_gateways/agent_gateway_mcp_server_response.rbs +20 -0
  412. data/sig/telnyx/models/agent_gateways/agent_gateway_no_auth.rbs +36 -0
  413. data/sig/telnyx/models/agent_gateways/agent_gateway_oauth_client_credentials.rbs +76 -0
  414. data/sig/telnyx/models/agent_gateways/agent_gateway_passthrough_auth.rbs +38 -0
  415. data/sig/telnyx/models/agent_gateways/agent_gateway_policy.rbs +59 -0
  416. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_attachment.rbs +54 -0
  417. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_attachment_response.rbs +22 -0
  418. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_guardrails.rbs +27 -0
  419. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_pipeline.rbs +40 -0
  420. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_response.rbs +20 -0
  421. data/sig/telnyx/models/agent_gateways/agent_gateway_policy_step.rbs +98 -0
  422. data/sig/telnyx/models/agent_gateways/agent_gateway_shown_auth.rbs +17 -0
  423. data/sig/telnyx/models/agent_gateways/agent_gateway_static_auth.rbs +48 -0
  424. data/sig/telnyx/models/agent_gateways/agent_gateway_team.rbs +74 -0
  425. data/sig/telnyx/models/agent_gateways/agent_gateway_team_response.rbs +18 -0
  426. data/sig/telnyx/models/agent_gateways/api_create_params.rbs +92 -0
  427. data/sig/telnyx/models/agent_gateways/api_delete_params.rbs +30 -0
  428. data/sig/telnyx/models/agent_gateways/api_list_params.rbs +25 -0
  429. data/sig/telnyx/models/agent_gateways/api_list_response.rbs +20 -0
  430. data/sig/telnyx/models/agent_gateways/api_update_params.rbs +101 -0
  431. data/sig/telnyx/models/agent_gateways/guardrail_create_params.rbs +105 -0
  432. data/sig/telnyx/models/agent_gateways/guardrail_delete_params.rbs +30 -0
  433. data/sig/telnyx/models/agent_gateways/guardrail_list_params.rbs +25 -0
  434. data/sig/telnyx/models/agent_gateways/guardrail_list_response.rbs +20 -0
  435. data/sig/telnyx/models/agent_gateways/guardrail_update_params.rbs +86 -0
  436. data/sig/telnyx/models/agent_gateways/key_create_params.rbs +73 -0
  437. data/sig/telnyx/models/agent_gateways/key_create_response.rbs +107 -0
  438. data/sig/telnyx/models/agent_gateways/key_delete_params.rbs +30 -0
  439. data/sig/telnyx/models/agent_gateways/key_list_params.rbs +32 -0
  440. data/sig/telnyx/models/agent_gateways/key_list_response.rbs +20 -0
  441. data/sig/telnyx/models/agent_gateways/key_update_params.rbs +89 -0
  442. data/sig/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions.rbs +38 -0
  443. data/sig/telnyx/models/agent_gateways/keys/agent_gateway_tool_permissions_response.rbs +22 -0
  444. data/sig/telnyx/models/agent_gateways/keys/tool_permission_create_params.rbs +36 -0
  445. data/sig/telnyx/models/agent_gateways/keys/tool_permission_list_params.rbs +32 -0
  446. data/sig/telnyx/models/agent_gateways/mcp_server_create_params.rbs +108 -0
  447. data/sig/telnyx/models/agent_gateways/mcp_server_delete_params.rbs +30 -0
  448. data/sig/telnyx/models/agent_gateways/mcp_server_list_params.rbs +25 -0
  449. data/sig/telnyx/models/agent_gateways/mcp_server_list_response.rbs +20 -0
  450. data/sig/telnyx/models/agent_gateways/mcp_server_update_params.rbs +117 -0
  451. data/sig/telnyx/models/agent_gateways/policy_attachment_create_params.rbs +52 -0
  452. data/sig/telnyx/models/agent_gateways/policy_attachment_delete_params.rbs +30 -0
  453. data/sig/telnyx/models/agent_gateways/policy_attachment_list_params.rbs +25 -0
  454. data/sig/telnyx/models/agent_gateways/policy_attachment_list_response.rbs +20 -0
  455. data/sig/telnyx/models/agent_gateways/policy_create_params.rbs +62 -0
  456. data/sig/telnyx/models/agent_gateways/policy_delete_params.rbs +30 -0
  457. data/sig/telnyx/models/agent_gateways/policy_list_params.rbs +25 -0
  458. data/sig/telnyx/models/agent_gateways/policy_list_response.rbs +20 -0
  459. data/sig/telnyx/models/agent_gateways/policy_retrieve_params.rbs +30 -0
  460. data/sig/telnyx/models/agent_gateways/policy_update_params.rbs +62 -0
  461. data/sig/telnyx/models/agent_gateways/team_create_params.rbs +58 -0
  462. data/sig/telnyx/models/agent_gateways/team_delete_params.rbs +30 -0
  463. data/sig/telnyx/models/agent_gateways/team_list_params.rbs +25 -0
  464. data/sig/telnyx/models/agent_gateways/team_list_response.rbs +20 -0
  465. data/sig/telnyx/models/agent_gateways/team_update_params.rbs +74 -0
  466. data/sig/telnyx/models/agent_gateways/teams/tool_permission_create_params.rbs +36 -0
  467. data/sig/telnyx/models/agent_gateways/teams/tool_permission_list_params.rbs +32 -0
  468. data/sig/telnyx/models/ai/conversation_delete_delete_params.rbs +30 -0
  469. data/sig/telnyx/models/ai/external_llm.rbs +5 -0
  470. data/sig/telnyx/models/ai/external_llm_req.rbs +5 -0
  471. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +4 -8
  472. data/sig/telnyx/models/ai/inference_embedding_voice_settings.rbs +5 -0
  473. data/sig/telnyx/models/ai/memory/namespaces/agent_memory_page_meta.rbs +41 -0
  474. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbs +2 -2
  475. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbs +2 -2
  476. data/sig/telnyx/models/ai/pay_tool_params.rbs +768 -0
  477. data/sig/telnyx/models/ai/start_speaking_plan.rbs +4 -8
  478. data/sig/telnyx/models/ai/telephony_settings.rbs +5 -0
  479. data/sig/telnyx/models/ai/tests/test_framework/v1_retrieve_personalities_response.rbs +19 -17
  480. data/sig/telnyx/models/browser_session_create_params.rbs +5 -5
  481. data/sig/telnyx/models/browser_sessions/action_response.rbs +16 -14
  482. data/sig/telnyx/models/browser_sessions/wait_for_action.rbs +3 -3
  483. data/sig/telnyx/models/calendar_connection.rbs +131 -0
  484. data/sig/telnyx/models/calendar_connection_create_params.rbs +35 -0
  485. data/sig/telnyx/models/calendar_connection_create_response.rbs +56 -0
  486. data/sig/telnyx/models/calendar_connection_delete_params.rbs +20 -0
  487. data/sig/telnyx/models/calendar_connection_list_params.rbs +15 -0
  488. data/sig/telnyx/models/calendar_connection_list_response.rbs +14 -0
  489. data/sig/telnyx/models/calendar_connection_response.rbs +13 -0
  490. data/sig/telnyx/models/calendar_connection_retrieve_params.rbs +20 -0
  491. data/sig/telnyx/models/calendar_connection_update_params.rbs +141 -0
  492. data/sig/telnyx/models/calendar_connection_update_response.rbs +153 -0
  493. data/sig/telnyx/models/calendar_connections/calendar_meeting.rbs +168 -0
  494. data/sig/telnyx/models/calendar_connections/meeting_list_params.rbs +38 -0
  495. data/sig/telnyx/models/calendar_connections/meeting_list_response.rbs +20 -0
  496. data/sig/telnyx/models/calendar_connections/meeting_update_params.rbs +34 -0
  497. data/sig/telnyx/models/calendar_connections/meeting_update_response.rbs +18 -0
  498. data/sig/telnyx/models/call_analyzed_webhook_event.rbs +9 -9
  499. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -0
  500. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -0
  501. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -0
  502. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +1 -0
  503. data/sig/telnyx/models/calls/assembly_ai_voice_settings.rbs +30 -0
  504. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -0
  505. data/sig/telnyx/models/conversation_relay_embedded_config.rbs +1 -0
  506. data/sig/telnyx/models/conversation_relay_language.rbs +1 -0
  507. data/sig/telnyx/models/email_event_list_response.rbs +171 -222
  508. data/sig/telnyx/models/enterprises/enterprise_email_verification_status.rbs +65 -0
  509. data/sig/telnyx/models/enterprises/enterprise_email_verification_status_wrapped.rbs +4 -64
  510. data/sig/telnyx/models/enterprises/reputation/external_verification.rbs +64 -0
  511. data/sig/telnyx/models/enterprises/reputation/external_verification_wrapped.rbs +4 -61
  512. data/sig/telnyx/models/generic_pay_connector_config.rbs +30 -30
  513. data/sig/telnyx/models/llm_token_gateway/budget_duration.rbs +3 -3
  514. data/sig/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_params.rbs +40 -0
  515. data/sig/telnyx/models/meeting_bot/calendar_retrieve_oauth_callback_response.rbs +7 -0
  516. data/sig/telnyx/models/meeting_session.rbs +79 -57
  517. data/sig/telnyx/models/meeting_session_assistant.rbs +46 -0
  518. data/sig/telnyx/models/meeting_session_create_params.rbs +47 -0
  519. data/sig/telnyx/models/meeting_session_leave_policy.rbs +60 -0
  520. data/sig/telnyx/models/meeting_session_recording_destination.rbs +18 -0
  521. data/sig/telnyx/models/meeting_session_recording_export.rbs +62 -0
  522. data/sig/telnyx/models/meeting_session_retrieve_recordings_params.rbs +20 -0
  523. data/sig/telnyx/models/meeting_session_retrieve_recordings_response.rbs +39 -0
  524. data/sig/telnyx/models/message_whatsapp_params.rbs +20 -10
  525. data/sig/telnyx/models/number_lookup_retrieve_response.rbs +13 -3
  526. data/sig/telnyx/models/pay_connector.rbs +5 -5
  527. data/sig/telnyx/models/recording_export_failed_webhook_event.rbs +121 -0
  528. data/sig/telnyx/models/recording_exported_webhook_event.rbs +97 -0
  529. data/sig/telnyx/models/session.rbs +4 -4
  530. data/sig/telnyx/models/session_status_changed_webhook_event.rbs +37 -3
  531. data/sig/telnyx/models/telephony_credential.rbs +7 -0
  532. data/sig/telnyx/models/telephony_credential_retrieve_token_material_params.rbs +20 -0
  533. data/sig/telnyx/models/telephony_credential_retrieve_token_material_response.rbs +16 -0
  534. data/sig/telnyx/models/text_to_speech_generate_speech_params.rbs +118 -0
  535. data/sig/telnyx/models/text_to_speech_list_voices_params.rbs +2 -0
  536. data/sig/telnyx/models/text_to_speech_retrieve_speech_params.rbs +2 -0
  537. data/sig/telnyx/models/token_material.rbs +28 -0
  538. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  539. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  540. data/sig/telnyx/models/user_profile.rbs +147 -0
  541. data/sig/telnyx/models/user_profile_list_params.rbs +15 -0
  542. data/sig/telnyx/models/user_profile_list_response.rbs +13 -0
  543. data/sig/telnyx/models/user_profile_patch_all_params.rbs +302 -0
  544. data/sig/telnyx/models/user_profile_patch_all_response.rbs +13 -0
  545. data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +2 -4
  546. data/sig/telnyx/models/voice_clone_data.rbs +2 -1
  547. data/sig/telnyx/models/voice_clone_list_params.rbs +2 -1
  548. data/sig/telnyx/models.rbs +60 -0
  549. data/sig/telnyx/resources/agent_gateways/apis.rbs +47 -0
  550. data/sig/telnyx/resources/agent_gateways/guardrails.rbs +40 -0
  551. data/sig/telnyx/resources/agent_gateways/keys/tool_permissions.rbs +24 -0
  552. data/sig/telnyx/resources/agent_gateways/keys.rbs +53 -0
  553. data/sig/telnyx/resources/agent_gateways/mcp_servers.rbs +47 -0
  554. data/sig/telnyx/resources/agent_gateways/policies.rbs +48 -0
  555. data/sig/telnyx/resources/agent_gateways/policy_attachments.rbs +29 -0
  556. data/sig/telnyx/resources/agent_gateways/teams/tool_permissions.rbs +24 -0
  557. data/sig/telnyx/resources/agent_gateways/teams.rbs +46 -0
  558. data/sig/telnyx/resources/agent_gateways.rbs +59 -0
  559. data/sig/telnyx/resources/ai/conversations.rbs +6 -0
  560. data/sig/telnyx/resources/browser_sessions.rbs +1 -1
  561. data/sig/telnyx/resources/calendar_connections/meetings.rbs +23 -0
  562. data/sig/telnyx/resources/calendar_connections.rbs +42 -0
  563. data/sig/telnyx/resources/email_events.rbs +1 -1
  564. data/sig/telnyx/resources/meeting_bot/calendar.rbs +16 -0
  565. data/sig/telnyx/resources/meeting_bot.rbs +9 -0
  566. data/sig/telnyx/resources/meeting_sessions.rbs +9 -0
  567. data/sig/telnyx/resources/telephony_credentials.rbs +5 -0
  568. data/sig/telnyx/resources/text_to_speech.rbs +1 -0
  569. data/sig/telnyx/resources/user_profile.rbs +52 -0
  570. data/sig/telnyx/resources/webhooks.rbs +4 -0
  571. metadata +389 -2
@@ -0,0 +1,160 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AgentGateways
6
+ # MCP servers on an instance, served to agents at one MCP endpoint.
7
+ class McpServers
8
+ # Some parameter documentations has been truncated, see
9
+ # {Telnyx::Models::AgentGateways::McpServerCreateParams} for more details.
10
+ #
11
+ # Adds an MCP server. The instance serves its tools at `{gateway_url}/mcp`, each
12
+ # named with the server's `name` and a hyphen, to the keys granted the server and,
13
+ # with `open_to_every_key`, to every key. The instance must be `ready`; otherwise
14
+ # the request answers `409`.
15
+ #
16
+ # @overload create(instance_id, name:, url:, auth: nil, forwarded_headers: nil, open_to_every_key: nil, static_headers: nil, tools: nil, transport: nil, request_options: {})
17
+ #
18
+ # @param instance_id [String] The Agent Gateway's `id`.
19
+ #
20
+ # @param name [String] A name for the server, unique on the instance across MCP servers and APIs, regar
21
+ #
22
+ # @param url [String] The server's MCP endpoint, `http` or `https`.
23
+ #
24
+ # @param auth [Telnyx::Models::AgentGateways::AgentGatewayNoAuth, Telnyx::Models::AgentGateways::AgentGatewayStaticAuth, Telnyx::Models::AgentGateways::AgentGatewayOAuthClientCredentials, Telnyx::Models::AgentGateways::AgentGatewayPassthroughAuth, Telnyx::Models::AgentGateways::AgentGatewayAwsSigV4Auth] How the gateway authenticates to the server. Replaced whole on an update; `{"typ
25
+ #
26
+ # @param forwarded_headers [Array<String>] Headers copied from the agent's request, by name.
27
+ #
28
+ # @param open_to_every_key [Boolean] `true` lets every key on the instance use the server, granted or not.
29
+ #
30
+ # @param static_headers [Hash{Symbol=>String}] Headers sent on every request.
31
+ #
32
+ # @param tools [Array<String>] The tools the server exposes to every key, by name. `[]` exposes every tool.
33
+ #
34
+ # @param transport [Symbol, Telnyx::Models::AgentGateways::McpServerCreateParams::Transport] `http` for Streamable HTTP, or `sse` for Server-Sent Events.
35
+ #
36
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
37
+ #
38
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayMcpServerResponse]
39
+ #
40
+ # @see Telnyx::Models::AgentGateways::McpServerCreateParams
41
+ def create(instance_id, params)
42
+ parsed, options = Telnyx::AgentGateways::McpServerCreateParams.dump_request(params)
43
+ @client.request(
44
+ method: :post,
45
+ path: ["agent_gateways/%1$s/mcp_servers", instance_id],
46
+ body: parsed,
47
+ model: Telnyx::AgentGateways::AgentGatewayMcpServerResponse,
48
+ options: options
49
+ )
50
+ end
51
+
52
+ # Some parameter documentations has been truncated, see
53
+ # {Telnyx::Models::AgentGateways::McpServerUpdateParams} for more details.
54
+ #
55
+ # Changes an MCP server's settings. A field left out stays as it is. `auth` is
56
+ # replaced whole, `tools: []` exposes every tool, and `static_headers: {}` clears
57
+ # the headers. The instance must be `ready`; otherwise the request answers `409`.
58
+ #
59
+ # @overload update(server_id, instance_id:, auth: nil, forwarded_headers: nil, name: nil, open_to_every_key: nil, static_headers: nil, tools: nil, transport: nil, url: nil, request_options: {})
60
+ #
61
+ # @param server_id [String] Path param: The MCP server's `id`.
62
+ #
63
+ # @param instance_id [String] Path param: The Agent Gateway's `id`.
64
+ #
65
+ # @param auth [Telnyx::Models::AgentGateways::AgentGatewayNoAuth, Telnyx::Models::AgentGateways::AgentGatewayStaticAuth, Telnyx::Models::AgentGateways::AgentGatewayOAuthClientCredentials, Telnyx::Models::AgentGateways::AgentGatewayPassthroughAuth, Telnyx::Models::AgentGateways::AgentGatewayAwsSigV4Auth] Body param: How the gateway authenticates to the server. Replaced whole on an up
66
+ #
67
+ # @param forwarded_headers [Array<String>] Body param: Headers copied from the agent's request, by name.
68
+ #
69
+ # @param name [String] Body param: A name for the server, unique on the instance across MCP servers and
70
+ #
71
+ # @param open_to_every_key [Boolean] Body param: `true` lets every key on the instance use the server, granted or not
72
+ #
73
+ # @param static_headers [Hash{Symbol=>String}] Body param: Headers sent on every request.
74
+ #
75
+ # @param tools [Array<String>] Body param: The tools the server exposes to every key, by name. `[]` exposes eve
76
+ #
77
+ # @param transport [Symbol, Telnyx::Models::AgentGateways::McpServerUpdateParams::Transport] Body param: `http` for Streamable HTTP, or `sse` for Server-Sent Events.
78
+ #
79
+ # @param url [String] Body param: The server's MCP endpoint, `http` or `https`.
80
+ #
81
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
82
+ #
83
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayMcpServerResponse]
84
+ #
85
+ # @see Telnyx::Models::AgentGateways::McpServerUpdateParams
86
+ def update(server_id, params)
87
+ parsed, options = Telnyx::AgentGateways::McpServerUpdateParams.dump_request(params)
88
+ instance_id =
89
+ parsed.delete(:instance_id) do
90
+ raise ArgumentError.new("missing required path argument #{_1}")
91
+ end
92
+ @client.request(
93
+ method: :patch,
94
+ path: ["agent_gateways/%1$s/mcp_servers/%2$s", instance_id, server_id],
95
+ body: parsed,
96
+ model: Telnyx::AgentGateways::AgentGatewayMcpServerResponse,
97
+ options: options
98
+ )
99
+ end
100
+
101
+ # Lists the MCP servers the instance serves at `{gateway_url}/mcp`, without their
102
+ # credentials. The instance must be `ready`; otherwise the request answers `409`.
103
+ #
104
+ # @overload list(instance_id, request_options: {})
105
+ #
106
+ # @param instance_id [String] The Agent Gateway's `id`.
107
+ #
108
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
109
+ #
110
+ # @return [Telnyx::Models::AgentGateways::McpServerListResponse]
111
+ #
112
+ # @see Telnyx::Models::AgentGateways::McpServerListParams
113
+ def list(instance_id, params = {})
114
+ @client.request(
115
+ method: :get,
116
+ path: ["agent_gateways/%1$s/mcp_servers", instance_id],
117
+ model: Telnyx::Models::AgentGateways::McpServerListResponse,
118
+ options: params[:request_options]
119
+ )
120
+ end
121
+
122
+ # Removes an MCP server and returns it as it was. Its `id` stays in the tool
123
+ # permissions that name it until they are next set. The instance must be `ready`;
124
+ # otherwise the request answers `409`.
125
+ #
126
+ # @overload delete(server_id, instance_id:, request_options: {})
127
+ #
128
+ # @param server_id [String] The MCP server's `id`.
129
+ #
130
+ # @param instance_id [String] The Agent Gateway's `id`.
131
+ #
132
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
133
+ #
134
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayMcpServerResponse]
135
+ #
136
+ # @see Telnyx::Models::AgentGateways::McpServerDeleteParams
137
+ def delete(server_id, params)
138
+ parsed, options = Telnyx::AgentGateways::McpServerDeleteParams.dump_request(params)
139
+ instance_id =
140
+ parsed.delete(:instance_id) do
141
+ raise ArgumentError.new("missing required path argument #{_1}")
142
+ end
143
+ @client.request(
144
+ method: :delete,
145
+ path: ["agent_gateways/%1$s/mcp_servers/%2$s", instance_id, server_id],
146
+ model: Telnyx::AgentGateways::AgentGatewayMcpServerResponse,
147
+ options: options
148
+ )
149
+ end
150
+
151
+ # @api private
152
+ #
153
+ # @param client [Telnyx::Client]
154
+ def initialize(client:)
155
+ @client = client
156
+ end
157
+ end
158
+ end
159
+ end
160
+ end
@@ -0,0 +1,175 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AgentGateways
6
+ # Named sets of guardrails an instance applies to requests.
7
+ class Policies
8
+ # Some parameter documentations has been truncated, see
9
+ # {Telnyx::Models::AgentGateways::PolicyCreateParams} for more details.
10
+ #
11
+ # Creates a named set of guardrails. It applies from the next request on, to the
12
+ # requests that name it in `policies` and to those its
13
+ # [attachments](https://developers.telnyx.com/api-reference/agent-gateway-policy-attachments/attach-a-policy)
14
+ # match.
15
+ #
16
+ # @overload create(instance_id, name:, base: nil, description: nil, guardrails: nil, model: nil, pipeline: nil, request_options: {})
17
+ #
18
+ # @param instance_id [String] The Agent Gateway's `id`.
19
+ #
20
+ # @param name [String] A name, unique on the instance. A request names the policy in its `policies` fie
21
+ #
22
+ # @param base [String, nil] A policy this one builds on, by name. The policy starts with the base's guardrai
23
+ #
24
+ # @param description [String, nil] What the policy is for.
25
+ #
26
+ # @param guardrails [Telnyx::Models::AgentGateways::AgentGatewayPolicyGuardrails] The guardrails a policy adds to its base's, and the ones it removes from them, b
27
+ #
28
+ # @param model [String, nil] A condition on the model, by name or regular expression. The policy's guardrails
29
+ #
30
+ # @param pipeline [Telnyx::Models::AgentGateways::AgentGatewayPolicyPipeline, nil] Ordered steps that run in place of the policy's guardrails running independently
31
+ #
32
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
33
+ #
34
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyResponse]
35
+ #
36
+ # @see Telnyx::Models::AgentGateways::PolicyCreateParams
37
+ def create(instance_id, params)
38
+ parsed, options = Telnyx::AgentGateways::PolicyCreateParams.dump_request(params)
39
+ @client.request(
40
+ method: :post,
41
+ path: ["agent_gateways/%1$s/policies", instance_id],
42
+ body: parsed,
43
+ model: Telnyx::AgentGateways::AgentGatewayPolicyResponse,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # Returns one policy, in its current version.
49
+ #
50
+ # @overload retrieve(name, instance_id:, request_options: {})
51
+ #
52
+ # @param name [String] The policy's `name`.
53
+ #
54
+ # @param instance_id [String] The Agent Gateway's `id`.
55
+ #
56
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
57
+ #
58
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyResponse]
59
+ #
60
+ # @see Telnyx::Models::AgentGateways::PolicyRetrieveParams
61
+ def retrieve(name, params)
62
+ parsed, options = Telnyx::AgentGateways::PolicyRetrieveParams.dump_request(params)
63
+ instance_id =
64
+ parsed.delete(:instance_id) do
65
+ raise ArgumentError.new("missing required path argument #{_1}")
66
+ end
67
+ @client.request(
68
+ method: :get,
69
+ path: ["agent_gateways/%1$s/policies/%2$s", instance_id, name],
70
+ model: Telnyx::AgentGateways::AgentGatewayPolicyResponse,
71
+ options: options
72
+ )
73
+ end
74
+
75
+ # Some parameter documentations has been truncated, see
76
+ # {Telnyx::Models::AgentGateways::PolicyUpdateParams} for more details.
77
+ #
78
+ # Changes a policy, which publishes a new version of it. A field left out stays as
79
+ # it is; `guardrails` and `pipeline` are replaced whole, and `model: null` removes
80
+ # the condition.
81
+ #
82
+ # @overload update(name, instance_id:, base: nil, description: nil, guardrails: nil, model: nil, pipeline: nil, request_options: {})
83
+ #
84
+ # @param name [String] Path param: The policy's `name`.
85
+ #
86
+ # @param instance_id [String] Path param: The Agent Gateway's `id`.
87
+ #
88
+ # @param base [String, nil] Body param: A policy this one builds on, by name. The policy starts with the bas
89
+ #
90
+ # @param description [String, nil] Body param: What the policy is for.
91
+ #
92
+ # @param guardrails [Telnyx::Models::AgentGateways::AgentGatewayPolicyGuardrails] Body param: The guardrails a policy adds to its base's, and the ones it removes
93
+ #
94
+ # @param model [String, nil] Body param: A condition on the model, by name or regular expression. The policy'
95
+ #
96
+ # @param pipeline [Telnyx::Models::AgentGateways::AgentGatewayPolicyPipeline, nil] Body param: Ordered steps that run in place of the policy's guardrails running i
97
+ #
98
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
99
+ #
100
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyResponse]
101
+ #
102
+ # @see Telnyx::Models::AgentGateways::PolicyUpdateParams
103
+ def update(name, params)
104
+ parsed, options = Telnyx::AgentGateways::PolicyUpdateParams.dump_request(params)
105
+ instance_id =
106
+ parsed.delete(:instance_id) do
107
+ raise ArgumentError.new("missing required path argument #{_1}")
108
+ end
109
+ @client.request(
110
+ method: :patch,
111
+ path: ["agent_gateways/%1$s/policies/%2$s", instance_id, name],
112
+ body: parsed,
113
+ model: Telnyx::AgentGateways::AgentGatewayPolicyResponse,
114
+ options: options
115
+ )
116
+ end
117
+
118
+ # Lists the instance's policies, each in its current version.
119
+ #
120
+ # @overload list(instance_id, request_options: {})
121
+ #
122
+ # @param instance_id [String] The Agent Gateway's `id`.
123
+ #
124
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
125
+ #
126
+ # @return [Telnyx::Models::AgentGateways::PolicyListResponse]
127
+ #
128
+ # @see Telnyx::Models::AgentGateways::PolicyListParams
129
+ def list(instance_id, params = {})
130
+ @client.request(
131
+ method: :get,
132
+ path: ["agent_gateways/%1$s/policies", instance_id],
133
+ model: Telnyx::Models::AgentGateways::PolicyListResponse,
134
+ options: params[:request_options]
135
+ )
136
+ end
137
+
138
+ # Deletes a policy and every version of it, and returns it as it was. A policy
139
+ # that an attachment names, or that another policy builds on, cannot be deleted.
140
+ #
141
+ # @overload delete(name, instance_id:, request_options: {})
142
+ #
143
+ # @param name [String] The policy's `name`.
144
+ #
145
+ # @param instance_id [String] The Agent Gateway's `id`.
146
+ #
147
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
148
+ #
149
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyResponse]
150
+ #
151
+ # @see Telnyx::Models::AgentGateways::PolicyDeleteParams
152
+ def delete(name, params)
153
+ parsed, options = Telnyx::AgentGateways::PolicyDeleteParams.dump_request(params)
154
+ instance_id =
155
+ parsed.delete(:instance_id) do
156
+ raise ArgumentError.new("missing required path argument #{_1}")
157
+ end
158
+ @client.request(
159
+ method: :delete,
160
+ path: ["agent_gateways/%1$s/policies/%2$s", instance_id, name],
161
+ model: Telnyx::AgentGateways::AgentGatewayPolicyResponse,
162
+ options: options
163
+ )
164
+ end
165
+
166
+ # @api private
167
+ #
168
+ # @param client [Telnyx::Client]
169
+ def initialize(client:)
170
+ @client = client
171
+ end
172
+ end
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AgentGateways
6
+ # Where an instance applies each policy.
7
+ class PolicyAttachments
8
+ # Some parameter documentations has been truncated, see
9
+ # {Telnyx::Models::AgentGateways::PolicyAttachmentCreateParams} for more details.
10
+ #
11
+ # Applies a policy to every request, or to the requests for the models named. It
12
+ # applies from the next request on.
13
+ #
14
+ # @overload create(instance_id, policy:, default: nil, models: nil, priority: nil, request_options: {})
15
+ #
16
+ # @param instance_id [String] The Agent Gateway's `id`.
17
+ #
18
+ # @param policy [String] The policy to apply, by name.
19
+ #
20
+ # @param default [Boolean] `true` applies the policy only to the requests no other attachment matches.
21
+ #
22
+ # @param models [Array<String>] The models whose requests the policy applies to, by name. A name can use `*` as
23
+ #
24
+ # @param priority [Integer, nil] An attachment with a priority applies before the others.
25
+ #
26
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
27
+ #
28
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyAttachmentResponse]
29
+ #
30
+ # @see Telnyx::Models::AgentGateways::PolicyAttachmentCreateParams
31
+ def create(instance_id, params)
32
+ parsed, options = Telnyx::AgentGateways::PolicyAttachmentCreateParams.dump_request(params)
33
+ @client.request(
34
+ method: :post,
35
+ path: ["agent_gateways/%1$s/policy_attachments", instance_id],
36
+ body: parsed,
37
+ model: Telnyx::AgentGateways::AgentGatewayPolicyAttachmentResponse,
38
+ options: options
39
+ )
40
+ end
41
+
42
+ # Lists where the instance applies each policy.
43
+ #
44
+ # @overload list(instance_id, request_options: {})
45
+ #
46
+ # @param instance_id [String] The Agent Gateway's `id`.
47
+ #
48
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
49
+ #
50
+ # @return [Telnyx::Models::AgentGateways::PolicyAttachmentListResponse]
51
+ #
52
+ # @see Telnyx::Models::AgentGateways::PolicyAttachmentListParams
53
+ def list(instance_id, params = {})
54
+ @client.request(
55
+ method: :get,
56
+ path: ["agent_gateways/%1$s/policy_attachments", instance_id],
57
+ model: Telnyx::Models::AgentGateways::PolicyAttachmentListResponse,
58
+ options: params[:request_options]
59
+ )
60
+ end
61
+
62
+ # Removes an attachment and returns it as it was. The policy stays.
63
+ #
64
+ # @overload delete(attachment_id, instance_id:, request_options: {})
65
+ #
66
+ # @param attachment_id [String] The attachment's `id`.
67
+ #
68
+ # @param instance_id [String] The Agent Gateway's `id`.
69
+ #
70
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
71
+ #
72
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayPolicyAttachmentResponse]
73
+ #
74
+ # @see Telnyx::Models::AgentGateways::PolicyAttachmentDeleteParams
75
+ def delete(attachment_id, params)
76
+ parsed, options = Telnyx::AgentGateways::PolicyAttachmentDeleteParams.dump_request(params)
77
+ instance_id =
78
+ parsed.delete(:instance_id) do
79
+ raise ArgumentError.new("missing required path argument #{_1}")
80
+ end
81
+ @client.request(
82
+ method: :delete,
83
+ path: ["agent_gateways/%1$s/policy_attachments/%2$s", instance_id, attachment_id],
84
+ model: Telnyx::AgentGateways::AgentGatewayPolicyAttachmentResponse,
85
+ options: options
86
+ )
87
+ end
88
+
89
+ # @api private
90
+ #
91
+ # @param client [Telnyx::Client]
92
+ def initialize(client:)
93
+ @client = client
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AgentGateways
6
+ class Teams
7
+ # The MCP servers and tools a key or team may use.
8
+ class ToolPermissions
9
+ # Replaces the grant whole and returns it. Every server must be one of the
10
+ # instance's MCP servers or APIs, named once. A key reaches the servers granted to
11
+ # it or to its team, and the servers open to every key; when both grant, only the
12
+ # servers in both. The instance must be `ready`; otherwise the request answers
13
+ # `409`.
14
+ #
15
+ # @overload create(team_id, instance_id:, servers:, request_options: {})
16
+ #
17
+ # @param team_id [String] Path param: The team's `id`.
18
+ #
19
+ # @param instance_id [String] Path param: The Agent Gateway's `id`.
20
+ #
21
+ # @param servers [Array<Telnyx::Models::AgentGateways::Keys::AgentGatewayToolPermissions::Server>] Body param: The servers granted, each with its tools. `[]` grants none.
22
+ #
23
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
24
+ #
25
+ # @return [Telnyx::Models::AgentGateways::Keys::AgentGatewayToolPermissionsResponse]
26
+ #
27
+ # @see Telnyx::Models::AgentGateways::Teams::ToolPermissionCreateParams
28
+ def create(team_id, params)
29
+ parsed, options = Telnyx::AgentGateways::Teams::ToolPermissionCreateParams.dump_request(params)
30
+ instance_id =
31
+ parsed.delete(:instance_id) do
32
+ raise ArgumentError.new("missing required path argument #{_1}")
33
+ end
34
+ @client.request(
35
+ method: :put,
36
+ path: ["agent_gateways/%1$s/teams/%2$s/tool_permissions", instance_id, team_id],
37
+ body: parsed,
38
+ model: Telnyx::AgentGateways::Keys::AgentGatewayToolPermissionsResponse,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # Returns the MCP servers and APIs the team's keys may use, and the tools within
44
+ # each. `servers: []` means none. The instance must be `ready`; otherwise the
45
+ # request answers `409`.
46
+ #
47
+ # @overload list(team_id, instance_id:, request_options: {})
48
+ #
49
+ # @param team_id [String] The team's `id`.
50
+ #
51
+ # @param instance_id [String] The Agent Gateway's `id`.
52
+ #
53
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
54
+ #
55
+ # @return [Telnyx::Models::AgentGateways::Keys::AgentGatewayToolPermissionsResponse]
56
+ #
57
+ # @see Telnyx::Models::AgentGateways::Teams::ToolPermissionListParams
58
+ def list(team_id, params)
59
+ parsed, options = Telnyx::AgentGateways::Teams::ToolPermissionListParams.dump_request(params)
60
+ instance_id =
61
+ parsed.delete(:instance_id) do
62
+ raise ArgumentError.new("missing required path argument #{_1}")
63
+ end
64
+ @client.request(
65
+ method: :get,
66
+ path: ["agent_gateways/%1$s/teams/%2$s/tool_permissions", instance_id, team_id],
67
+ model: Telnyx::AgentGateways::Keys::AgentGatewayToolPermissionsResponse,
68
+ options: options
69
+ )
70
+ end
71
+
72
+ # @api private
73
+ #
74
+ # @param client [Telnyx::Client]
75
+ def initialize(client:)
76
+ @client = client
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,156 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class AgentGateways
6
+ # Teams on an instance: shared model lists, budgets, and rate limits.
7
+ class Teams
8
+ # The MCP servers and tools a key or team may use.
9
+ # @return [Telnyx::Resources::AgentGateways::Teams::ToolPermissions]
10
+ attr_reader :tool_permissions
11
+
12
+ # Creates a team on the instance. A team is a model list, a budget, and rate
13
+ # limits that its keys share. Names need not be unique; the `id` identifies the
14
+ # team. The instance must be `ready`; otherwise the request answers `409`.
15
+ #
16
+ # @overload create(instance_id, name:, budget_resets_every: nil, max_budget: nil, models: nil, requests_per_minute: nil, tokens_per_minute: nil, request_options: {})
17
+ #
18
+ # @param instance_id [String] The Agent Gateway's `id`.
19
+ #
20
+ # @param name [String] A label for people.
21
+ #
22
+ # @param budget_resets_every [String, nil] How often the spend resets: a number and a unit, `s`, `m`, `h`, or `d`.
23
+ #
24
+ # @param max_budget [Float, nil] The most the team's keys may spend together, in USD.
25
+ #
26
+ # @param models [Array<String>, nil] The models the team's keys may use. Leave it out to allow every model.
27
+ #
28
+ # @param requests_per_minute [Integer, nil] The most requests the team's keys may make per minute, together.
29
+ #
30
+ # @param tokens_per_minute [Integer, nil] The most tokens the team's keys may use per minute, together.
31
+ #
32
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
33
+ #
34
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayTeamResponse]
35
+ #
36
+ # @see Telnyx::Models::AgentGateways::TeamCreateParams
37
+ def create(instance_id, params)
38
+ parsed, options = Telnyx::AgentGateways::TeamCreateParams.dump_request(params)
39
+ @client.request(
40
+ method: :post,
41
+ path: ["agent_gateways/%1$s/teams", instance_id],
42
+ body: parsed,
43
+ model: Telnyx::AgentGateways::AgentGatewayTeamResponse,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # Some parameter documentations has been truncated, see
49
+ # {Telnyx::Models::AgentGateways::TeamUpdateParams} for more details.
50
+ #
51
+ # Changes a team's settings. A field left out stays as it is, and `null` clears
52
+ # it. `models: []` lifts the model restriction. Setting `blocked` to `true` makes
53
+ # the instance refuse every key in the team with `401`. The instance must be
54
+ # `ready`; otherwise the request answers `409`.
55
+ #
56
+ # @overload update(team_id, instance_id:, blocked: nil, budget_resets_every: nil, max_budget: nil, models: nil, name: nil, requests_per_minute: nil, tokens_per_minute: nil, request_options: {})
57
+ #
58
+ # @param team_id [String] Path param: The team's `id`.
59
+ #
60
+ # @param instance_id [String] Path param: The Agent Gateway's `id`.
61
+ #
62
+ # @param blocked [Boolean] Body param: `true` makes the instance refuse every key in the team; `false` lets
63
+ #
64
+ # @param budget_resets_every [String, nil] Body param: How often the spend resets.
65
+ #
66
+ # @param max_budget [Float, nil] Body param: The most the team's keys may spend together, in USD.
67
+ #
68
+ # @param models [Array<String>] Body param: The models the team's keys may use. `[]` allows every model.
69
+ #
70
+ # @param name [String] Body param: A label for people.
71
+ #
72
+ # @param requests_per_minute [Integer, nil] Body param: The most requests the team's keys may make per minute, together.
73
+ #
74
+ # @param tokens_per_minute [Integer, nil] Body param: The most tokens the team's keys may use per minute, together.
75
+ #
76
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
77
+ #
78
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayTeamResponse]
79
+ #
80
+ # @see Telnyx::Models::AgentGateways::TeamUpdateParams
81
+ def update(team_id, params)
82
+ parsed, options = Telnyx::AgentGateways::TeamUpdateParams.dump_request(params)
83
+ instance_id =
84
+ parsed.delete(:instance_id) do
85
+ raise ArgumentError.new("missing required path argument #{_1}")
86
+ end
87
+ @client.request(
88
+ method: :patch,
89
+ path: ["agent_gateways/%1$s/teams/%2$s", instance_id, team_id],
90
+ body: parsed,
91
+ model: Telnyx::AgentGateways::AgentGatewayTeamResponse,
92
+ options: options
93
+ )
94
+ end
95
+
96
+ # Lists the instance's teams. The instance must be `ready`; otherwise the request
97
+ # answers `409`.
98
+ #
99
+ # @overload list(instance_id, request_options: {})
100
+ #
101
+ # @param instance_id [String] The Agent Gateway's `id`.
102
+ #
103
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
104
+ #
105
+ # @return [Telnyx::Models::AgentGateways::TeamListResponse]
106
+ #
107
+ # @see Telnyx::Models::AgentGateways::TeamListParams
108
+ def list(instance_id, params = {})
109
+ @client.request(
110
+ method: :get,
111
+ path: ["agent_gateways/%1$s/teams", instance_id],
112
+ model: Telnyx::Models::AgentGateways::TeamListResponse,
113
+ options: params[:request_options]
114
+ )
115
+ end
116
+
117
+ # Deletes a team that has no keys and returns it. A team that still has keys
118
+ # answers `409`; delete or move its keys first. The instance must be `ready`;
119
+ # otherwise the request answers `409`.
120
+ #
121
+ # @overload delete(team_id, instance_id:, request_options: {})
122
+ #
123
+ # @param team_id [String] The team's `id`.
124
+ #
125
+ # @param instance_id [String] The Agent Gateway's `id`.
126
+ #
127
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
128
+ #
129
+ # @return [Telnyx::Models::AgentGateways::AgentGatewayTeamResponse]
130
+ #
131
+ # @see Telnyx::Models::AgentGateways::TeamDeleteParams
132
+ def delete(team_id, params)
133
+ parsed, options = Telnyx::AgentGateways::TeamDeleteParams.dump_request(params)
134
+ instance_id =
135
+ parsed.delete(:instance_id) do
136
+ raise ArgumentError.new("missing required path argument #{_1}")
137
+ end
138
+ @client.request(
139
+ method: :delete,
140
+ path: ["agent_gateways/%1$s/teams/%2$s", instance_id, team_id],
141
+ model: Telnyx::AgentGateways::AgentGatewayTeamResponse,
142
+ options: options
143
+ )
144
+ end
145
+
146
+ # @api private
147
+ #
148
+ # @param client [Telnyx::Client]
149
+ def initialize(client:)
150
+ @client = client
151
+ @tool_permissions = Telnyx::Resources::AgentGateways::Teams::ToolPermissions.new(client: client)
152
+ end
153
+ end
154
+ end
155
+ end
156
+ end