telnyx 5.166.0 → 5.168.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 (205) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +4 -0
  5. data/lib/telnyx/internal/default_flat_pagination.rb +7 -3
  6. data/lib/telnyx/internal/default_flat_pagination_for_inexplicit_number_orders.rb +7 -3
  7. data/lib/telnyx/internal/default_flat_pagination_top_level_array.rb +10 -8
  8. data/lib/telnyx/internal/default_pagination_for_log_messages.rb +7 -3
  9. data/lib/telnyx/internal/default_pagination_for_messaging_tollfree.rb +12 -3
  10. data/lib/telnyx/internal/default_pagination_for_queues.rb +12 -3
  11. data/lib/telnyx/internal/per_page_pagination.rb +8 -1
  12. data/lib/telnyx/internal/per_page_pagination_v2.rb +8 -1
  13. data/lib/telnyx/internal/type/converter.rb +2 -0
  14. data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +57 -1
  15. data/lib/telnyx/models/ai/assistant_a2_a_agent.rb +195 -0
  16. data/lib/telnyx/models/ai/assistant_create_params.rb +16 -1
  17. data/lib/telnyx/models/ai/assistant_update_params.rb +17 -1
  18. data/lib/telnyx/models/ai/assistants/update_assistant.rb +17 -1
  19. data/lib/telnyx/models/ai/chat_completion_request.rb +185 -48
  20. data/lib/telnyx/models/ai/inference_embedding.rb +16 -1
  21. data/lib/telnyx/models/ai/openai_create_response_params.rb +57 -1
  22. data/lib/telnyx/models/ai/telephony_settings.rb +15 -1
  23. data/lib/telnyx/models/compute/func_retrieve_logs_params.rb +66 -0
  24. data/lib/telnyx/models/compute/func_retrieve_logs_response.rb +161 -0
  25. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_params.rb +69 -0
  26. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_response.rb +137 -0
  27. data/lib/telnyx/models/compute/func_retrieve_revisions_params.rb +34 -0
  28. data/lib/telnyx/models/compute/func_retrieve_revisions_response.rb +101 -0
  29. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_params.rb +22 -0
  30. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_response.rb +94 -0
  31. data/lib/telnyx/models/compute/functions_observability_pagination_meta.rb +35 -0
  32. data/lib/telnyx/models/compute/logs_meta.rb +23 -0
  33. data/lib/telnyx/models/credential_connection.rb +4 -1
  34. data/lib/telnyx/models/email_inboxes/email_message.rb +12 -1
  35. data/lib/telnyx/models/email_message_batch_params.rb +4 -1
  36. data/lib/telnyx/models/email_message_batch_response.rb +1 -0
  37. data/lib/telnyx/models/fqdn_connection.rb +5 -2
  38. data/lib/telnyx/models/fqdn_connections/fqdn_authentication.rb +9 -2
  39. data/lib/telnyx/models/messaging_inbound_message_payload.rb +210 -67
  40. data/lib/telnyx/models/messaging_messaging_profile.rb +284 -0
  41. data/lib/telnyx/models/messaging_profile.rb +0 -1
  42. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  43. data/lib/telnyx/models/messaging_profile_create_response.rb +3 -3
  44. data/lib/telnyx/models/messaging_profile_delete_response.rb +3 -3
  45. data/lib/telnyx/models/messaging_profile_features.rb +26 -0
  46. data/lib/telnyx/models/messaging_profile_retrieve_response.rb +3 -3
  47. data/lib/telnyx/models/messaging_profile_update_params.rb +32 -1
  48. data/lib/telnyx/models/messaging_profile_update_response.rb +3 -3
  49. data/lib/telnyx/models/messaging_profiles/action_regenerate_secret_response.rb +3 -3
  50. data/lib/telnyx/models/uac_connection.rb +4 -1
  51. data/lib/telnyx/models/uac_external_settings.rb +6 -2
  52. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  53. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  54. data/lib/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rb +104 -1
  55. data/lib/telnyx/models/whatsapp/phone_number_get_response.rb +103 -1
  56. data/lib/telnyx/models/whatsapp/phone_number_list_response.rb +103 -1
  57. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rb +22 -0
  58. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rb +207 -0
  59. data/lib/telnyx/models/whatsapp_account_update.rb +112 -0
  60. data/lib/telnyx/models/whatsapp_message_echo.rb +340 -0
  61. data/lib/telnyx/models/x402/credit_account/payment_list_params.rb +34 -0
  62. data/lib/telnyx/models/x402/credit_account/payment_retrieve_params.rb +24 -0
  63. data/lib/telnyx/models/x402/credit_account/payment_retrieve_response.rb +21 -0
  64. data/lib/telnyx/models/x402/credit_account/x402_transaction_record.rb +113 -0
  65. data/lib/telnyx/models.rb +10 -0
  66. data/lib/telnyx/resources/ai/anthropic/v1.rb +5 -1
  67. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  68. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  69. data/lib/telnyx/resources/ai/openai/chat.rb +6 -8
  70. data/lib/telnyx/resources/ai/openai.rb +5 -1
  71. data/lib/telnyx/resources/compute/funcs.rb +141 -0
  72. data/lib/telnyx/resources/compute.rb +18 -0
  73. data/lib/telnyx/resources/email_messages.rb +4 -2
  74. data/lib/telnyx/resources/messaging_profiles.rb +12 -4
  75. data/lib/telnyx/resources/webhooks.rb +2 -2
  76. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +22 -0
  77. data/lib/telnyx/resources/x402/credit_account/payments.rb +71 -0
  78. data/lib/telnyx/resources/x402/credit_account.rb +8 -2
  79. data/lib/telnyx/version.rb +1 -1
  80. data/lib/telnyx.rb +24 -0
  81. data/rbi/telnyx/client.rbi +3 -0
  82. data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +139 -0
  83. data/rbi/telnyx/models/ai/assistant_a2_a_agent.rbi +345 -0
  84. data/rbi/telnyx/models/ai/assistant_create_params.rbi +29 -0
  85. data/rbi/telnyx/models/ai/assistant_update_params.rbi +31 -0
  86. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +31 -0
  87. data/rbi/telnyx/models/ai/chat_completion_request.rbi +339 -91
  88. data/rbi/telnyx/models/ai/inference_embedding.rbi +29 -0
  89. data/rbi/telnyx/models/ai/openai_create_response_params.rbi +136 -0
  90. data/rbi/telnyx/models/ai/telephony_settings.rbi +23 -0
  91. data/rbi/telnyx/models/compute/func_retrieve_logs_params.rbi +130 -0
  92. data/rbi/telnyx/models/compute/func_retrieve_logs_response.rbi +410 -0
  93. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbi +102 -0
  94. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbi +231 -0
  95. data/rbi/telnyx/models/compute/func_retrieve_revisions_params.rbi +59 -0
  96. data/rbi/telnyx/models/compute/func_retrieve_revisions_response.rbi +213 -0
  97. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_params.rbi +40 -0
  98. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_response.rbi +252 -0
  99. data/rbi/telnyx/models/compute/functions_observability_pagination_meta.rbi +70 -0
  100. data/rbi/telnyx/models/compute/logs_meta.rbi +38 -0
  101. data/rbi/telnyx/models/credential_connection.rbi +8 -2
  102. data/rbi/telnyx/models/email_inboxes/email_message.rbi +22 -3
  103. data/rbi/telnyx/models/email_message_batch_params.rbi +6 -0
  104. data/rbi/telnyx/models/email_message_batch_response.rbi +5 -0
  105. data/rbi/telnyx/models/fqdn_connection.rbi +8 -2
  106. data/rbi/telnyx/models/fqdn_connections/fqdn_authentication.rbi +8 -2
  107. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +450 -193
  108. data/rbi/telnyx/models/messaging_messaging_profile.rbi +463 -0
  109. data/rbi/telnyx/models/messaging_profile.rbi +4 -6
  110. data/rbi/telnyx/models/messaging_profile_create_params.rbi +19 -0
  111. data/rbi/telnyx/models/messaging_profile_create_response.rbi +6 -4
  112. data/rbi/telnyx/models/messaging_profile_delete_response.rbi +6 -4
  113. data/rbi/telnyx/models/messaging_profile_features.rbi +43 -0
  114. data/rbi/telnyx/models/messaging_profile_retrieve_response.rbi +6 -4
  115. data/rbi/telnyx/models/messaging_profile_update_params.rbi +51 -0
  116. data/rbi/telnyx/models/messaging_profile_update_response.rbi +6 -4
  117. data/rbi/telnyx/models/messaging_profiles/action_regenerate_secret_response.rbi +4 -4
  118. data/rbi/telnyx/models/uac_connection.rbi +8 -2
  119. data/rbi/telnyx/models/uac_external_settings.rbi +10 -2
  120. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +3 -1
  121. data/rbi/telnyx/models/unwrap_webhook_event.rbi +3 -1
  122. data/rbi/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbi +213 -0
  123. data/rbi/telnyx/models/whatsapp/phone_number_get_response.rbi +213 -0
  124. data/rbi/telnyx/models/whatsapp/phone_number_list_response.rbi +213 -0
  125. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbi +40 -0
  126. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbi +401 -0
  127. data/rbi/telnyx/models/whatsapp_account_update.rbi +236 -0
  128. data/rbi/telnyx/models/whatsapp_message_echo.rbi +611 -0
  129. data/rbi/telnyx/models/x402/credit_account/payment_list_params.rbi +64 -0
  130. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_params.rbi +42 -0
  131. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_response.rbi +53 -0
  132. data/rbi/telnyx/models/x402/credit_account/x402_transaction_record.rbi +219 -0
  133. data/rbi/telnyx/models.rbi +10 -0
  134. data/rbi/telnyx/resources/ai/anthropic/v1.rbi +14 -0
  135. data/rbi/telnyx/resources/ai/assistants/versions.rbi +12 -0
  136. data/rbi/telnyx/resources/ai/assistants.rbi +21 -0
  137. data/rbi/telnyx/resources/ai/openai/chat.rbi +23 -13
  138. data/rbi/telnyx/resources/ai/openai.rbi +14 -0
  139. data/rbi/telnyx/resources/compute/funcs.rbi +111 -0
  140. data/rbi/telnyx/resources/compute.rbi +15 -0
  141. data/rbi/telnyx/resources/email_messages.rbi +6 -2
  142. data/rbi/telnyx/resources/messaging_profiles.rbi +24 -1
  143. data/rbi/telnyx/resources/webhooks.rbi +6 -2
  144. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +18 -0
  145. data/rbi/telnyx/resources/x402/credit_account/payments.rbi +60 -0
  146. data/rbi/telnyx/resources/x402/credit_account.rbi +5 -0
  147. data/sig/telnyx/client.rbs +2 -0
  148. data/sig/telnyx/models/ai/anthropic/v1_messages_params.rbs +42 -0
  149. data/sig/telnyx/models/ai/assistant_a2_a_agent.rbs +140 -0
  150. data/sig/telnyx/models/ai/assistant_create_params.rbs +9 -0
  151. data/sig/telnyx/models/ai/assistant_update_params.rbs +9 -0
  152. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +9 -0
  153. data/sig/telnyx/models/ai/chat_completion_request.rbs +128 -44
  154. data/sig/telnyx/models/ai/inference_embedding.rbs +9 -0
  155. data/sig/telnyx/models/ai/openai_create_response_params.rbs +42 -0
  156. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  157. data/sig/telnyx/models/compute/func_retrieve_logs_params.rbs +69 -0
  158. data/sig/telnyx/models/compute/func_retrieve_logs_response.rbs +210 -0
  159. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbs +66 -0
  160. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbs +149 -0
  161. data/sig/telnyx/models/compute/func_retrieve_revisions_params.rbs +38 -0
  162. data/sig/telnyx/models/compute/func_retrieve_revisions_response.rbs +131 -0
  163. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_params.rbs +22 -0
  164. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_response.rbs +117 -0
  165. data/sig/telnyx/models/compute/functions_observability_pagination_meta.rbs +45 -0
  166. data/sig/telnyx/models/compute/logs_meta.rbs +21 -0
  167. data/sig/telnyx/models/email_inboxes/email_message.rbs +12 -3
  168. data/sig/telnyx/models/email_message_batch_response.rbs +2 -0
  169. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +207 -95
  170. data/sig/telnyx/models/messaging_messaging_profile.rbs +212 -0
  171. data/sig/telnyx/models/messaging_profile_create_params.rbs +5 -0
  172. data/sig/telnyx/models/messaging_profile_create_response.rbs +8 -5
  173. data/sig/telnyx/models/messaging_profile_delete_response.rbs +8 -5
  174. data/sig/telnyx/models/messaging_profile_features.rbs +15 -0
  175. data/sig/telnyx/models/messaging_profile_retrieve_response.rbs +7 -5
  176. data/sig/telnyx/models/messaging_profile_update_params.rbs +19 -0
  177. data/sig/telnyx/models/messaging_profile_update_response.rbs +8 -5
  178. data/sig/telnyx/models/messaging_profiles/action_regenerate_secret_response.rbs +7 -5
  179. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  180. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  181. data/sig/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbs +90 -0
  182. data/sig/telnyx/models/whatsapp/phone_number_get_response.rbs +90 -0
  183. data/sig/telnyx/models/whatsapp/phone_number_list_response.rbs +90 -0
  184. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbs +25 -0
  185. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbs +201 -0
  186. data/sig/telnyx/models/whatsapp_account_update.rbs +107 -0
  187. data/sig/telnyx/models/whatsapp_message_echo.rbs +291 -0
  188. data/sig/telnyx/models/x402/credit_account/payment_list_params.rbs +36 -0
  189. data/sig/telnyx/models/x402/credit_account/payment_retrieve_params.rbs +27 -0
  190. data/sig/telnyx/models/x402/credit_account/payment_retrieve_response.rbs +26 -0
  191. data/sig/telnyx/models/x402/credit_account/x402_transaction_record.rbs +104 -0
  192. data/sig/telnyx/models.rbs +10 -0
  193. data/sig/telnyx/resources/ai/anthropic/v1.rbs +2 -0
  194. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  195. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  196. data/sig/telnyx/resources/ai/openai/chat.rbs +3 -4
  197. data/sig/telnyx/resources/ai/openai.rbs +2 -0
  198. data/sig/telnyx/resources/compute/funcs.rbs +41 -0
  199. data/sig/telnyx/resources/compute.rbs +9 -0
  200. data/sig/telnyx/resources/messaging_profiles.rbs +5 -1
  201. data/sig/telnyx/resources/webhooks.rbs +6 -2
  202. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +5 -0
  203. data/sig/telnyx/resources/x402/credit_account/payments.rbs +22 -0
  204. data/sig/telnyx/resources/x402/credit_account.rbs +2 -0
  205. metadata +74 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e925d8c483a96495868dddfce0276424acca6775ec479f98e8c534530733bfdb
4
- data.tar.gz: f83b4b551a80c2ef485bd220b6741dc8a5579f32a3e0a7eee43e39600aa5b861
3
+ metadata.gz: 360829c3c2b34713bbae9a6a999389a66e6a7cd09004ba4a44c873472b407fe0
4
+ data.tar.gz: 6d3229995295c12147c3ebd8f8beb46d88fc855ab41098c89861316721ce1687
5
5
  SHA512:
6
- metadata.gz: af96fe52f7ac302aede9d13bb0c02a567ef72c669cc5d49bc1e9c9a3e9d5452cf14a2feca078e0b1129cfd90dd4a437fa66aaa53e858c05da18fec116dcf6db0
7
- data.tar.gz: a01adcd818262df1bd567b77496d652b17e447eb1f88eab25e518369bbb8ee5a8aa866d82a494d925f4cc35d437435a091c298a324a33e35cfb054b6df502da7
6
+ metadata.gz: 2c20e1e1b3c3c5776bf3c54b0d55eb4a37c26f2cb8bcb10a752fb2608f9c4ddad1c70bafbbc7364effec7693985dae05b44952e321226c66bacedd448ee7ccfe
7
+ data.tar.gz: 8812060e1369748da186af9db57e077df3eee3e04c9cc076f158ebe405e98a8442991a5ac2219d4a42687deed6ed110c5d4ff2e49657ba8606a6d9b5fc113565
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## [5.168.0](https://github.com/team-telnyx/telnyx-ruby/compare/v5.167.0...v5.168.0) (2026-09-13)
4
+
5
+
6
+ ### Features
7
+
8
+ * promote from staging f4ba656 ([ddd49d8](https://github.com/team-telnyx/telnyx-ruby/commit/ddd49d86929e68d0193fae2edf51e202d5222674))
9
+
10
+ ## [5.167.0](https://github.com/team-telnyx/telnyx-ruby/compare/v5.166.0...v5.167.0) (2026-09-07)
11
+
12
+
13
+ ### Features
14
+
15
+ * promote from staging 70ce0b1 ([83d658b](https://github.com/team-telnyx/telnyx-ruby/commit/83d658bfea2888eaab81e4e844ff159492aee43e))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * **release:** remove secrets from release doctor ([#366](https://github.com/team-telnyx/telnyx-ruby/issues/366)) ([9b276d2](https://github.com/team-telnyx/telnyx-ruby/commit/9b276d2e35019aea37a8203b8634c4a7210215d4))
21
+
3
22
  ## [5.166.0](https://github.com/team-telnyx/telnyx-ruby/compare/v5.165.0...v5.166.0) (2026-09-01)
4
23
 
5
24
 
data/README.md CHANGED
@@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
24
24
  <!-- x-release-please-start-version -->
25
25
 
26
26
  ```ruby
27
- gem "telnyx", "~> 5.166.0"
27
+ gem "telnyx", "~> 5.168.0"
28
28
  ```
29
29
 
30
30
  <!-- x-release-please-end -->
data/lib/telnyx/client.rb CHANGED
@@ -735,6 +735,9 @@ module Telnyx
735
735
  # @return [Telnyx::Resources::ExternalRequirements]
736
736
  attr_reader :external_requirements
737
737
 
738
+ # @return [Telnyx::Resources::Compute]
739
+ attr_reader :compute
740
+
738
741
  # @api private
739
742
  #
740
743
  # @return [Hash{String=>String}]
@@ -1026,6 +1029,7 @@ module Telnyx
1026
1029
  @web_search = Telnyx::Resources::WebSearch.new(client: self)
1027
1030
  @meeting_sessions = Telnyx::Resources::MeetingSessions.new(client: self)
1028
1031
  @external_requirements = Telnyx::Resources::ExternalRequirements.new(client: self)
1032
+ @compute = Telnyx::Resources::Compute.new(client: self)
1029
1033
  end
1030
1034
  end
1031
1035
  end
@@ -35,9 +35,13 @@ module Telnyx
35
35
  raise RuntimeError.new(message)
36
36
  end
37
37
 
38
- req = Telnyx::Internal::Util.deep_merge(
39
- @req,
40
- {query: {page_number: (meta&.page_number || 1).to_i.succ}}
38
+ req = @req.merge(
39
+ {
40
+ query: @req.fetch(:query, {}).except(
41
+ :"page[number]",
42
+ :"page[number]".to_s
43
+ ).merge("page[number]": (meta&.page_number || 1).to_i.succ)
44
+ }
41
45
  )
42
46
  @client.request(req)
43
47
  end
@@ -36,9 +36,13 @@ module Telnyx
36
36
  raise RuntimeError.new(message)
37
37
  end
38
38
 
39
- req = Telnyx::Internal::Util.deep_merge(
40
- @req,
41
- {query: {page_number: (meta&.page_number || 1).to_i.succ}}
39
+ req = @req.merge(
40
+ {
41
+ query: @req.fetch(:query, {}).except(
42
+ :page_number,
43
+ :page_number.to_s
44
+ ).merge(page_number: (meta&.page_number || 1).to_i.succ)
45
+ }
42
46
  )
43
47
  @client.request(req)
44
48
  end
@@ -29,15 +29,17 @@ module Telnyx
29
29
  raise RuntimeError.new(message)
30
30
  end
31
31
 
32
- req = Telnyx::Internal::Util.deep_merge(
33
- @req,
32
+ req = @req.merge(
34
33
  {
35
- query: {
36
- page_number: @req.fetch(:query).fetch(
37
- :page_number,
38
- 1
39
- ).to_i.succ
40
- }
34
+ query: @req.fetch(:query, {}).except(
35
+ :"page[number]",
36
+ :"page[number]".to_s
37
+ ).merge("page[number]": @req.fetch(:query, {}).fetch(
38
+ :"page[number]",
39
+ @req.fetch(:query, {}).fetch(
40
+ :"page[number]".to_s, 1
41
+ )
42
+ ).to_i.succ)
41
43
  }
42
44
  )
43
45
  @client.request(req)
@@ -35,9 +35,13 @@ module Telnyx
35
35
  raise RuntimeError.new(message)
36
36
  end
37
37
 
38
- req = Telnyx::Internal::Util.deep_merge(
39
- @req,
40
- {query: {page_number: (meta&.page_number || 1).to_i.succ}}
38
+ req = @req.merge(
39
+ {
40
+ query: @req.fetch(:query, {}).except(
41
+ :"page[number]",
42
+ :"page[number]".to_s
43
+ ).merge("page[number]": (meta&.page_number || 1).to_i.succ)
44
+ }
41
45
  )
42
46
  @client.request(req)
43
47
  end
@@ -35,9 +35,18 @@ module Telnyx
35
35
  raise RuntimeError.new(message)
36
36
  end
37
37
 
38
- req = Telnyx::Internal::Util.deep_merge(
39
- @req,
40
- {query: {page: @req.fetch(:query).fetch(:page, 1).to_i.succ}}
38
+ req = @req.merge(
39
+ {
40
+ query: @req.fetch(:query, {}).except(
41
+ :page,
42
+ :page.to_s
43
+ ).merge(page: @req.fetch(:query, {}).fetch(
44
+ :page,
45
+ @req.fetch(:query, {}).fetch(
46
+ :page.to_s, 1
47
+ )
48
+ ).to_i.succ)
49
+ }
41
50
  )
42
51
  @client.request(req)
43
52
  end
@@ -32,9 +32,18 @@ module Telnyx
32
32
  raise RuntimeError.new(message)
33
33
  end
34
34
 
35
- req = Telnyx::Internal::Util.deep_merge(
36
- @req,
37
- {query: {page: @req.fetch(:query).fetch(:page, 1).to_i.succ}}
35
+ req = @req.merge(
36
+ {
37
+ query: @req.fetch(:query, {}).except(
38
+ :Page,
39
+ :Page.to_s
40
+ ).merge(Page: @req.fetch(:query, {}).fetch(
41
+ :Page,
42
+ @req.fetch(:query, {}).fetch(
43
+ :Page.to_s, 1
44
+ )
45
+ ).to_i.succ)
46
+ }
38
47
  )
39
48
  @client.request(req)
40
49
  end
@@ -35,7 +35,14 @@ module Telnyx
35
35
  raise RuntimeError.new(message)
36
36
  end
37
37
 
38
- req = Telnyx::Internal::Util.deep_merge(@req, {query: {page: (meta&.page_number || 1).to_i.succ}})
38
+ req = @req.merge(
39
+ {
40
+ query: @req.fetch(:query, {}).except(
41
+ :page,
42
+ :page.to_s
43
+ ).merge(page: (meta&.page_number || 1).to_i.succ)
44
+ }
45
+ )
39
46
  @client.request(req)
40
47
  end
41
48
 
@@ -38,7 +38,14 @@ module Telnyx
38
38
  raise RuntimeError.new(message)
39
39
  end
40
40
 
41
- req = Telnyx::Internal::Util.deep_merge(@req, {query: {page: (page || 1).to_i.succ}})
41
+ req = @req.merge(
42
+ {
43
+ query: @req.fetch(:query, {}).except(
44
+ :page,
45
+ :page.to_s
46
+ ).merge(page: (page || 1).to_i.succ)
47
+ }
48
+ )
42
49
  @client.request(req)
43
50
  end
44
51
 
@@ -45,6 +45,8 @@ module Telnyx
45
45
  value.transform_values { Telnyx::Internal::Type::Unknown.dump(_1, state: state) }
46
46
  in Telnyx::Internal::Type::BaseModel
47
47
  value.class.dump(value, state: state)
48
+ in Time
49
+ value.iso8601(9)
48
50
  in StringIO
49
51
  value.string
50
52
  in Pathname | IO
@@ -71,6 +71,26 @@ module Telnyx
71
71
  # @return [Hash{Symbol=>Object}, nil]
72
72
  optional :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
73
73
 
74
+ # @!attribute mode
75
+ # How strictly `region` is applied. `preferred` (the default when `region` is set)
76
+ # tries that region first and falls back to another when the model cannot be
77
+ # served there, so a request that would have succeeded still succeeds. `strict`
78
+ # pins the request: it is served from that region or it fails with a 422, never
79
+ # redirected to another region. Requires `region`.
80
+ #
81
+ # @return [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Mode, nil]
82
+ optional :mode, enum: -> { Telnyx::AI::Anthropic::V1MessagesParams::Mode }
83
+
84
+ # @!attribute region
85
+ # Optional data-residency region the request should be served from, using the same
86
+ # vocabulary as your account's Data Locality setting. Behavior depends on `mode`.
87
+ # Supported for Telnyx-hosted models only: a request routed to an external
88
+ # provider never passes through Telnyx model routing, so a region cannot be
89
+ # enforced for it. Omit for today's latency-based routing.
90
+ #
91
+ # @return [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Region, nil]
92
+ optional :region, enum: -> { Telnyx::AI::Anthropic::V1MessagesParams::Region }
93
+
74
94
  # @!attribute service_tier
75
95
  # The service tier to use for this request. Supported values vary by model; use
76
96
  # the Telnyx models endpoint and inspect the model's `service_tiers` field. If
@@ -143,7 +163,7 @@ module Telnyx
143
163
  # @return [Float, nil]
144
164
  optional :top_p, Float
145
165
 
146
- # @!method initialize(max_tokens:, messages:, model:, api_key_ref: nil, billing_group_id: nil, fallback_config: nil, max_retries: nil, mcp_servers: nil, metadata: nil, service_tier: nil, stop_sequences: nil, stream: nil, system_: nil, temperature: nil, thinking: nil, timeout: nil, tool_choice: nil, tools: nil, top_k: nil, top_p: nil, request_options: {})
166
+ # @!method initialize(max_tokens:, messages:, model:, api_key_ref: nil, billing_group_id: nil, fallback_config: nil, max_retries: nil, mcp_servers: nil, metadata: nil, mode: nil, region: nil, service_tier: nil, stop_sequences: nil, stream: nil, system_: nil, temperature: nil, thinking: nil, timeout: nil, tool_choice: nil, tools: nil, top_k: nil, top_p: nil, request_options: {})
147
167
  # Some parameter documentations has been truncated, see
148
168
  # {Telnyx::Models::AI::Anthropic::V1MessagesParams} for more details.
149
169
  #
@@ -165,6 +185,10 @@ module Telnyx
165
185
  #
166
186
  # @param metadata [Hash{Symbol=>Object}] An object describing metadata about the request.
167
187
  #
188
+ # @param mode [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Mode] How strictly `region` is applied. `preferred` (the default when `region` is set)
189
+ #
190
+ # @param region [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Region] Optional data-residency region the request should be served from, using the same
191
+ #
168
192
  # @param service_tier [String] The service tier to use for this request. Supported values vary by model; use th
169
193
  #
170
194
  # @param stop_sequences [Array<String>] Custom sequences that will cause the model to stop generating.
@@ -189,6 +213,38 @@ module Telnyx
189
213
  #
190
214
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
191
215
 
216
+ # How strictly `region` is applied. `preferred` (the default when `region` is set)
217
+ # tries that region first and falls back to another when the model cannot be
218
+ # served there, so a request that would have succeeded still succeeds. `strict`
219
+ # pins the request: it is served from that region or it fails with a 422, never
220
+ # redirected to another region. Requires `region`.
221
+ module Mode
222
+ extend Telnyx::Internal::Type::Enum
223
+
224
+ PREFERRED = :preferred
225
+ STRICT = :strict
226
+
227
+ # @!method self.values
228
+ # @return [Array<Symbol>]
229
+ end
230
+
231
+ # Optional data-residency region the request should be served from, using the same
232
+ # vocabulary as your account's Data Locality setting. Behavior depends on `mode`.
233
+ # Supported for Telnyx-hosted models only: a request routed to an external
234
+ # provider never passes through Telnyx model routing, so a region cannot be
235
+ # enforced for it. Omit for today's latency-based routing.
236
+ module Region
237
+ extend Telnyx::Internal::Type::Enum
238
+
239
+ USA = :USA
240
+ EU = :EU
241
+ AUS = :AUS
242
+ UAE = :UAE
243
+
244
+ # @!method self.values
245
+ # @return [Array<Symbol>]
246
+ end
247
+
192
248
  # System prompt. Can be a string or an array of content blocks following the
193
249
  # Anthropic API format.
194
250
  module System
@@ -0,0 +1,195 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module AI
6
+ class AssistantA2AAgent < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute name
8
+ # Identifies the agent and seeds the names of the tools derived from its card
9
+ # (`a2a_<name>_<skill_id>`). Characters outside `[A-Za-z0-9_]` are replaced with
10
+ # `_` before the tool name is built, so two agents whose names differ only in
11
+ # punctuation collide and are rejected.
12
+ #
13
+ # @return [String]
14
+ required :name, String
15
+
16
+ # @!attribute url
17
+ # The agent's base URL, or the URL of its agent card. At most 2,048 bytes once
18
+ # UTF-8 encoded. `/.well-known/agent-card.json` is appended to the path unless it
19
+ # already ends in `.json`. Must be an `http://` or `https://` URL for an
20
+ # externally reachable host: internal destinations (`localhost`, private and
21
+ # reserved IP ranges, `.local` domains) are rejected, and the hostname may not
22
+ # contain a `{{...}}` placeholder. Placeholders in the path are allowed.
23
+ #
24
+ # @return [String]
25
+ required :url, String
26
+
27
+ # @!attribute async
28
+ # When `true`, the assistant hands the turn straight back to the model and the
29
+ # agent's answer is delivered into the conversation once it arrives, instead of
30
+ # the caller waiting for it in silence.
31
+ #
32
+ # @return [Boolean, nil]
33
+ optional :async, Telnyx::Internal::Type::Boolean
34
+
35
+ # @!attribute headers
36
+ # Headers sent when fetching this agent's card and on every call made to it. Use
37
+ # them to authenticate to the agent.
38
+ #
39
+ # @return [Array<Telnyx::Models::AI::AssistantA2AAgent::Header>, nil]
40
+ optional :headers, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantA2AAgent::Header] }
41
+
42
+ # @!attribute messages
43
+ # Filler messages spoken while a call to this agent is in progress.
44
+ # `request_start` messages are spoken immediately when the call begins.
45
+ # `request_response_delayed` messages are spoken after `timing_ms` has elapsed
46
+ # only if the agent has not answered yet. Filler messages are not used when
47
+ # `async` is `true`.
48
+ #
49
+ # @return [Array<Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestStartMessage, Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage>, nil]
50
+ optional :messages, -> { Telnyx::Internal::Type::ArrayOf[union: Telnyx::AI::AssistantA2AAgent::Message] }
51
+
52
+ # @!attribute poll_interval_ms
53
+ # How often, in milliseconds, to poll an agent task that has not finished yet.
54
+ # Defaults to 500.
55
+ #
56
+ # @return [Integer, nil]
57
+ optional :poll_interval_ms, Integer
58
+
59
+ # @!attribute timeout_ms
60
+ # Total budget, in milliseconds, for one call to this agent, including any time
61
+ # spent polling a task that is still running. Omit to inherit the assistant's tool
62
+ # timeout.
63
+ #
64
+ # @return [Integer, nil]
65
+ optional :timeout_ms, Integer
66
+
67
+ # @!method initialize(name:, url:, async: nil, headers: nil, messages: nil, poll_interval_ms: nil, timeout_ms: nil)
68
+ # Some parameter documentations has been truncated, see
69
+ # {Telnyx::Models::AI::AssistantA2AAgent} for more details.
70
+ #
71
+ # A remote agent, reachable over the A2A (Agent2Agent) protocol, that an assistant
72
+ # can delegate to. Tools are not configured here: at the start of every
73
+ # conversation the agent's card is fetched and one tool is derived per skill the
74
+ # card advertises.
75
+ #
76
+ # @param name [String] Identifies the agent and seeds the names of the tools derived from its card (`a2
77
+ #
78
+ # @param url [String] The agent's base URL, or the URL of its agent card. At most 2,048 bytes once UTF
79
+ #
80
+ # @param async [Boolean] When `true`, the assistant hands the turn straight back to the model and the age
81
+ #
82
+ # @param headers [Array<Telnyx::Models::AI::AssistantA2AAgent::Header>] Headers sent when fetching this agent's card and on every call made to it. Use t
83
+ #
84
+ # @param messages [Array<Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestStartMessage, Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage>] Filler messages spoken while a call to this agent is in progress. `request_start
85
+ #
86
+ # @param poll_interval_ms [Integer] How often, in milliseconds, to poll an agent task that has not finished yet. Def
87
+ #
88
+ # @param timeout_ms [Integer] Total budget, in milliseconds, for one call to this agent, including any time sp
89
+
90
+ class Header < Telnyx::Internal::Type::BaseModel
91
+ # @!attribute name
92
+ # HTTP header name. May only contain alphanumeric characters, hyphens, and
93
+ # underscores, or a `{{dynamic_variable}}` placeholder surrounded by those
94
+ # characters.
95
+ #
96
+ # @return [String]
97
+ required :name, String
98
+
99
+ # @!attribute value
100
+ # Header value, stored exactly as written. It may be a literal, a
101
+ # `{{dynamic_variable}}`, or an
102
+ # `{{#integration_secret}}identifier{{/integration_secret}}` section that resolves
103
+ # to a stored integration secret when the conversation starts. Control characters
104
+ # are not allowed. The encrypted `{{variable | encryption_secret_ref}}` form used
105
+ # for per-caller credentials is not resolved here and is rejected when the
106
+ # assistant is saved.
107
+ #
108
+ # @return [String]
109
+ required :value, String
110
+
111
+ # @!method initialize(name:, value:)
112
+ # Some parameter documentations has been truncated, see
113
+ # {Telnyx::Models::AI::AssistantA2AAgent::Header} for more details.
114
+ #
115
+ # A header sent when fetching an A2A agent's card and on every call made to that
116
+ # agent.
117
+ #
118
+ # @param name [String] HTTP header name. May only contain alphanumeric characters, hyphens, and undersc
119
+ #
120
+ # @param value [String] Header value, stored exactly as written. It may be a literal, a `{{dynamic_varia
121
+ end
122
+
123
+ module Message
124
+ extend Telnyx::Internal::Type::Union
125
+
126
+ variant -> { Telnyx::AI::AssistantA2AAgent::Message::A2AAgentRequestStartMessage }
127
+
128
+ variant -> { Telnyx::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage }
129
+
130
+ class A2AAgentRequestStartMessage < Telnyx::Internal::Type::BaseModel
131
+ # @!attribute content
132
+ # The text the assistant speaks.
133
+ #
134
+ # @return [String]
135
+ required :content, String
136
+
137
+ # @!attribute type
138
+ # Speak the filler message immediately when the call to the agent begins.
139
+ #
140
+ # @return [Symbol, :request_start]
141
+ required :type, const: :request_start
142
+
143
+ # @!attribute timing_ms
144
+ # An optional delay value. This value is ignored for `request_start` messages.
145
+ #
146
+ # @return [Integer, nil]
147
+ optional :timing_ms, Integer
148
+
149
+ # @!method initialize(content:, timing_ms: nil, type: :request_start)
150
+ # @param content [String] The text the assistant speaks.
151
+ #
152
+ # @param timing_ms [Integer] An optional delay value. This value is ignored for `request_start` messages.
153
+ #
154
+ # @param type [Symbol, :request_start] Speak the filler message immediately when the call to the agent begins.
155
+ end
156
+
157
+ class A2AAgentRequestResponseDelayedMessage < Telnyx::Internal::Type::BaseModel
158
+ # @!attribute content
159
+ # The text the assistant speaks.
160
+ #
161
+ # @return [String]
162
+ required :content, String
163
+
164
+ # @!attribute timing_ms
165
+ # How long to wait, in milliseconds, before speaking this message.
166
+ #
167
+ # @return [Integer]
168
+ required :timing_ms, Integer
169
+
170
+ # @!attribute type
171
+ # Speak the filler message only if the agent has not answered yet after
172
+ # `timing_ms`.
173
+ #
174
+ # @return [Symbol, :request_response_delayed]
175
+ required :type, const: :request_response_delayed
176
+
177
+ # @!method initialize(content:, timing_ms:, type: :request_response_delayed)
178
+ # Some parameter documentations has been truncated, see
179
+ # {Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage}
180
+ # for more details.
181
+ #
182
+ # @param content [String] The text the assistant speaks.
183
+ #
184
+ # @param timing_ms [Integer] How long to wait, in milliseconds, before speaking this message.
185
+ #
186
+ # @param type [Symbol, :request_response_delayed] Speak the filler message only if the agent has not answered yet after `timing_ms
187
+ end
188
+
189
+ # @!method self.variants
190
+ # @return [Array(Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestStartMessage, Telnyx::Models::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage)]
191
+ end
192
+ end
193
+ end
194
+ end
195
+ end
@@ -20,6 +20,19 @@ module Telnyx
20
20
  # @return [String]
21
21
  required :name, String
22
22
 
23
+ # @!attribute a2a_agents
24
+ # A2A agents this assistant can delegate to. Tools are not stored here: at the
25
+ # start of every conversation each agent's card is fetched and one tool is derived
26
+ # per skill the card advertises, named `a2a_<name>_<skill_id>`. The following
27
+ # limits are not enforced when the assistant is saved, and anything past them is
28
+ # dropped when the conversation starts: 64 agents per assistant, 64 skills per
29
+ # card, 128 derived tools per assistant, and a 6 second budget for all card
30
+ # fetches combined. An agent whose card cannot be fetched costs the assistant that
31
+ # capability for the conversation; it does not fail the call.
32
+ #
33
+ # @return [Array<Telnyx::Models::AI::AssistantA2AAgent>, nil]
34
+ optional :a2a_agents, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantA2AAgent] }
35
+
23
36
  # @!attribute conversation_flow
24
37
  # Conversation flow as supplied by API clients (create / update).
25
38
  #
@@ -216,7 +229,7 @@ module Telnyx
216
229
  # @return [String, nil]
217
230
  optional :idempotency_key, String
218
231
 
219
- # @!method initialize(instructions:, name:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
232
+ # @!method initialize(instructions:, name:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
220
233
  # Some parameter documentations has been truncated, see
221
234
  # {Telnyx::Models::AI::AssistantCreateParams} for more details.
222
235
  #
@@ -224,6 +237,8 @@ module Telnyx
224
237
  #
225
238
  # @param name [String]
226
239
  #
240
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] A2A agents this assistant can delegate to. Tools are not stored here: at the sta
241
+ #
227
242
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Conversation flow as supplied by API clients (create / update).
228
243
  #
229
244
  # @param description [String]
@@ -13,6 +13,20 @@ module Telnyx
13
13
  # @return [String]
14
14
  required :assistant_id, String
15
15
 
16
+ # @!attribute a2a_agents
17
+ # A2A agents this assistant can delegate to. Tools are not stored here: at the
18
+ # start of every conversation each agent's card is fetched and one tool is derived
19
+ # per skill the card advertises, named `a2a_<name>_<skill_id>`. The following
20
+ # limits are not enforced when the assistant is saved, and anything past them is
21
+ # dropped when the conversation starts: 64 agents per assistant, 64 skills per
22
+ # card, 128 derived tools per assistant, and a 6 second budget for all card
23
+ # fetches combined. An agent whose card cannot be fetched costs the assistant that
24
+ # capability for the conversation; it does not fail the call. Omit this field to
25
+ # leave the assistant's agents unchanged; send an empty array to remove them all.
26
+ #
27
+ # @return [Array<Telnyx::Models::AI::AssistantA2AAgent>, nil]
28
+ optional :a2a_agents, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantA2AAgent] }
29
+
16
30
  # @!attribute conversation_flow
17
31
  # Conversation flow as supplied by API clients (create / update).
18
32
  #
@@ -229,12 +243,14 @@ module Telnyx
229
243
  # @return [Telnyx::Models::AI::WidgetSettings, nil]
230
244
  optional :widget_settings, -> { Telnyx::AI::WidgetSettings }
231
245
 
232
- # @!method initialize(assistant_id:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
246
+ # @!method initialize(assistant_id:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
233
247
  # Some parameter documentations has been truncated, see
234
248
  # {Telnyx::Models::AI::AssistantUpdateParams} for more details.
235
249
  #
236
250
  # @param assistant_id [String]
237
251
  #
252
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] A2A agents this assistant can delegate to. Tools are not stored here: at the sta
253
+ #
238
254
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Conversation flow as supplied by API clients (create / update).
239
255
  #
240
256
  # @param description [String]
@@ -5,6 +5,20 @@ module Telnyx
5
5
  module AI
6
6
  module Assistants
7
7
  class UpdateAssistant < Telnyx::Internal::Type::BaseModel
8
+ # @!attribute a2a_agents
9
+ # A2A agents this assistant can delegate to. Tools are not stored here: at the
10
+ # start of every conversation each agent's card is fetched and one tool is derived
11
+ # per skill the card advertises, named `a2a_<name>_<skill_id>`. The following
12
+ # limits are not enforced when the assistant is saved, and anything past them is
13
+ # dropped when the conversation starts: 64 agents per assistant, 64 skills per
14
+ # card, 128 derived tools per assistant, and a 6 second budget for all card
15
+ # fetches combined. An agent whose card cannot be fetched costs the assistant that
16
+ # capability for the conversation; it does not fail the call. Omit this field to
17
+ # leave the assistant's agents unchanged; send an empty array to remove them all.
18
+ #
19
+ # @return [Array<Telnyx::Models::AI::AssistantA2AAgent>, nil]
20
+ optional :a2a_agents, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantA2AAgent] }
21
+
8
22
  # @!attribute conversation_flow
9
23
  # Conversation flow as supplied by API clients (create / update).
10
24
  #
@@ -214,10 +228,12 @@ module Telnyx
214
228
  # @return [Telnyx::Models::AI::WidgetSettings, nil]
215
229
  optional :widget_settings, -> { Telnyx::AI::WidgetSettings }
216
230
 
217
- # @!method initialize(conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil)
231
+ # @!method initialize(a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil)
218
232
  # Some parameter documentations has been truncated, see
219
233
  # {Telnyx::Models::AI::Assistants::UpdateAssistant} for more details.
220
234
  #
235
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] A2A agents this assistant can delegate to. Tools are not stored here: at the sta
236
+ #
221
237
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Conversation flow as supplied by API clients (create / update).
222
238
  #
223
239
  # @param description [String]