telnyx 5.167.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 (167) 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 +4 -0
  5. data/lib/telnyx/models/ai/assistant_a2_a_agent.rb +195 -0
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +16 -1
  7. data/lib/telnyx/models/ai/assistant_update_params.rb +17 -1
  8. data/lib/telnyx/models/ai/assistants/update_assistant.rb +17 -1
  9. data/lib/telnyx/models/ai/chat_completion_request.rb +125 -48
  10. data/lib/telnyx/models/ai/inference_embedding.rb +16 -1
  11. data/lib/telnyx/models/ai/telephony_settings.rb +15 -1
  12. data/lib/telnyx/models/compute/func_retrieve_logs_params.rb +66 -0
  13. data/lib/telnyx/models/compute/func_retrieve_logs_response.rb +161 -0
  14. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_params.rb +69 -0
  15. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_response.rb +137 -0
  16. data/lib/telnyx/models/compute/func_retrieve_revisions_params.rb +34 -0
  17. data/lib/telnyx/models/compute/func_retrieve_revisions_response.rb +101 -0
  18. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_params.rb +22 -0
  19. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_response.rb +94 -0
  20. data/lib/telnyx/models/compute/functions_observability_pagination_meta.rb +35 -0
  21. data/lib/telnyx/models/compute/logs_meta.rb +23 -0
  22. data/lib/telnyx/models/credential_connection.rb +4 -1
  23. data/lib/telnyx/models/email_inboxes/email_message.rb +12 -1
  24. data/lib/telnyx/models/email_message_batch_params.rb +4 -1
  25. data/lib/telnyx/models/email_message_batch_response.rb +1 -0
  26. data/lib/telnyx/models/fqdn_connection.rb +5 -2
  27. data/lib/telnyx/models/fqdn_connections/fqdn_authentication.rb +9 -2
  28. data/lib/telnyx/models/messaging_inbound_message_payload.rb +210 -67
  29. data/lib/telnyx/models/messaging_messaging_profile.rb +11 -1
  30. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  31. data/lib/telnyx/models/messaging_profile_features.rb +26 -0
  32. data/lib/telnyx/models/messaging_profile_update_params.rb +11 -1
  33. data/lib/telnyx/models/uac_connection.rb +4 -1
  34. data/lib/telnyx/models/uac_external_settings.rb +6 -2
  35. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  36. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  37. data/lib/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rb +104 -1
  38. data/lib/telnyx/models/whatsapp/phone_number_get_response.rb +103 -1
  39. data/lib/telnyx/models/whatsapp/phone_number_list_response.rb +103 -1
  40. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rb +22 -0
  41. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rb +207 -0
  42. data/lib/telnyx/models/whatsapp_account_update.rb +112 -0
  43. data/lib/telnyx/models/whatsapp_message_echo.rb +340 -0
  44. data/lib/telnyx/models/x402/credit_account/payment_list_params.rb +34 -0
  45. data/lib/telnyx/models/x402/credit_account/payment_retrieve_params.rb +24 -0
  46. data/lib/telnyx/models/x402/credit_account/payment_retrieve_response.rb +21 -0
  47. data/lib/telnyx/models/x402/credit_account/x402_transaction_record.rb +113 -0
  48. data/lib/telnyx/models.rb +8 -0
  49. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  50. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  51. data/lib/telnyx/resources/ai/openai/chat.rb +2 -8
  52. data/lib/telnyx/resources/compute/funcs.rb +141 -0
  53. data/lib/telnyx/resources/compute.rb +18 -0
  54. data/lib/telnyx/resources/email_messages.rb +4 -2
  55. data/lib/telnyx/resources/messaging_profiles.rb +6 -2
  56. data/lib/telnyx/resources/webhooks.rb +2 -2
  57. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +22 -0
  58. data/lib/telnyx/resources/x402/credit_account/payments.rb +71 -0
  59. data/lib/telnyx/resources/x402/credit_account.rb +8 -2
  60. data/lib/telnyx/version.rb +1 -1
  61. data/lib/telnyx.rb +23 -0
  62. data/rbi/telnyx/client.rbi +3 -0
  63. data/rbi/telnyx/models/ai/assistant_a2_a_agent.rbi +345 -0
  64. data/rbi/telnyx/models/ai/assistant_create_params.rbi +29 -0
  65. data/rbi/telnyx/models/ai/assistant_update_params.rbi +31 -0
  66. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +31 -0
  67. data/rbi/telnyx/models/ai/chat_completion_request.rbi +224 -92
  68. data/rbi/telnyx/models/ai/inference_embedding.rbi +29 -0
  69. data/rbi/telnyx/models/ai/telephony_settings.rbi +23 -0
  70. data/rbi/telnyx/models/compute/func_retrieve_logs_params.rbi +130 -0
  71. data/rbi/telnyx/models/compute/func_retrieve_logs_response.rbi +410 -0
  72. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbi +102 -0
  73. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbi +231 -0
  74. data/rbi/telnyx/models/compute/func_retrieve_revisions_params.rbi +59 -0
  75. data/rbi/telnyx/models/compute/func_retrieve_revisions_response.rbi +213 -0
  76. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_params.rbi +40 -0
  77. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_response.rbi +252 -0
  78. data/rbi/telnyx/models/compute/functions_observability_pagination_meta.rbi +70 -0
  79. data/rbi/telnyx/models/compute/logs_meta.rbi +38 -0
  80. data/rbi/telnyx/models/credential_connection.rbi +8 -2
  81. data/rbi/telnyx/models/email_inboxes/email_message.rbi +22 -3
  82. data/rbi/telnyx/models/email_message_batch_params.rbi +6 -0
  83. data/rbi/telnyx/models/email_message_batch_response.rbi +5 -0
  84. data/rbi/telnyx/models/fqdn_connection.rbi +8 -2
  85. data/rbi/telnyx/models/fqdn_connections/fqdn_authentication.rbi +8 -2
  86. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +450 -193
  87. data/rbi/telnyx/models/messaging_messaging_profile.rbi +19 -0
  88. data/rbi/telnyx/models/messaging_profile_create_params.rbi +19 -0
  89. data/rbi/telnyx/models/messaging_profile_features.rbi +43 -0
  90. data/rbi/telnyx/models/messaging_profile_update_params.rbi +19 -0
  91. data/rbi/telnyx/models/uac_connection.rbi +8 -2
  92. data/rbi/telnyx/models/uac_external_settings.rbi +10 -2
  93. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +3 -1
  94. data/rbi/telnyx/models/unwrap_webhook_event.rbi +3 -1
  95. data/rbi/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbi +213 -0
  96. data/rbi/telnyx/models/whatsapp/phone_number_get_response.rbi +213 -0
  97. data/rbi/telnyx/models/whatsapp/phone_number_list_response.rbi +213 -0
  98. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbi +40 -0
  99. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbi +401 -0
  100. data/rbi/telnyx/models/whatsapp_account_update.rbi +236 -0
  101. data/rbi/telnyx/models/whatsapp_message_echo.rbi +611 -0
  102. data/rbi/telnyx/models/x402/credit_account/payment_list_params.rbi +64 -0
  103. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_params.rbi +42 -0
  104. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_response.rbi +53 -0
  105. data/rbi/telnyx/models/x402/credit_account/x402_transaction_record.rbi +219 -0
  106. data/rbi/telnyx/models.rbi +8 -0
  107. data/rbi/telnyx/resources/ai/assistants/versions.rbi +12 -0
  108. data/rbi/telnyx/resources/ai/assistants.rbi +21 -0
  109. data/rbi/telnyx/resources/ai/openai/chat.rbi +9 -13
  110. data/rbi/telnyx/resources/compute/funcs.rbi +111 -0
  111. data/rbi/telnyx/resources/compute.rbi +15 -0
  112. data/rbi/telnyx/resources/email_messages.rbi +6 -2
  113. data/rbi/telnyx/resources/messaging_profiles.rbi +10 -0
  114. data/rbi/telnyx/resources/webhooks.rbi +6 -2
  115. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +18 -0
  116. data/rbi/telnyx/resources/x402/credit_account/payments.rbi +60 -0
  117. data/rbi/telnyx/resources/x402/credit_account.rbi +5 -0
  118. data/sig/telnyx/client.rbs +2 -0
  119. data/sig/telnyx/models/ai/assistant_a2_a_agent.rbs +140 -0
  120. data/sig/telnyx/models/ai/assistant_create_params.rbs +9 -0
  121. data/sig/telnyx/models/ai/assistant_update_params.rbs +9 -0
  122. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +9 -0
  123. data/sig/telnyx/models/ai/chat_completion_request.rbs +86 -44
  124. data/sig/telnyx/models/ai/inference_embedding.rbs +9 -0
  125. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  126. data/sig/telnyx/models/compute/func_retrieve_logs_params.rbs +69 -0
  127. data/sig/telnyx/models/compute/func_retrieve_logs_response.rbs +210 -0
  128. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbs +66 -0
  129. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbs +149 -0
  130. data/sig/telnyx/models/compute/func_retrieve_revisions_params.rbs +38 -0
  131. data/sig/telnyx/models/compute/func_retrieve_revisions_response.rbs +131 -0
  132. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_params.rbs +22 -0
  133. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_response.rbs +117 -0
  134. data/sig/telnyx/models/compute/functions_observability_pagination_meta.rbs +45 -0
  135. data/sig/telnyx/models/compute/logs_meta.rbs +21 -0
  136. data/sig/telnyx/models/email_inboxes/email_message.rbs +12 -3
  137. data/sig/telnyx/models/email_message_batch_response.rbs +2 -0
  138. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +207 -95
  139. data/sig/telnyx/models/messaging_messaging_profile.rbs +5 -0
  140. data/sig/telnyx/models/messaging_profile_create_params.rbs +5 -0
  141. data/sig/telnyx/models/messaging_profile_features.rbs +15 -0
  142. data/sig/telnyx/models/messaging_profile_update_params.rbs +5 -0
  143. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  144. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  145. data/sig/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbs +90 -0
  146. data/sig/telnyx/models/whatsapp/phone_number_get_response.rbs +90 -0
  147. data/sig/telnyx/models/whatsapp/phone_number_list_response.rbs +90 -0
  148. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbs +25 -0
  149. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbs +201 -0
  150. data/sig/telnyx/models/whatsapp_account_update.rbs +107 -0
  151. data/sig/telnyx/models/whatsapp_message_echo.rbs +291 -0
  152. data/sig/telnyx/models/x402/credit_account/payment_list_params.rbs +36 -0
  153. data/sig/telnyx/models/x402/credit_account/payment_retrieve_params.rbs +27 -0
  154. data/sig/telnyx/models/x402/credit_account/payment_retrieve_response.rbs +26 -0
  155. data/sig/telnyx/models/x402/credit_account/x402_transaction_record.rbs +104 -0
  156. data/sig/telnyx/models.rbs +8 -0
  157. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  158. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  159. data/sig/telnyx/resources/ai/openai/chat.rbs +1 -4
  160. data/sig/telnyx/resources/compute/funcs.rbs +41 -0
  161. data/sig/telnyx/resources/compute.rbs +9 -0
  162. data/sig/telnyx/resources/messaging_profiles.rbs +2 -0
  163. data/sig/telnyx/resources/webhooks.rbs +6 -2
  164. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +5 -0
  165. data/sig/telnyx/resources/x402/credit_account/payments.rbs +22 -0
  166. data/sig/telnyx/resources/x402/credit_account.rbs +2 -0
  167. metadata +71 -2
@@ -0,0 +1,60 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class X402
6
+ class CreditAccount
7
+ # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
8
+ # account using USDC stablecoin payments via the x402 protocol.
9
+ class Payments
10
+ # Returns a single x402 payment transaction by ID. The transaction must belong to
11
+ # the authenticated user; organization sub-users must have read permission on
12
+ # transactions. Returns 404 if the transaction does not exist or belongs to
13
+ # another user.
14
+ sig do
15
+ params(
16
+ id: String,
17
+ request_options: Telnyx::RequestOptions::OrHash
18
+ ).returns(
19
+ Telnyx::Models::X402::CreditAccount::PaymentRetrieveResponse
20
+ )
21
+ end
22
+ def retrieve(
23
+ # The x402 payment transaction ID.
24
+ id,
25
+ request_options: {}
26
+ )
27
+ end
28
+
29
+ # Returns a paginated list of the authenticated user's x402 payment transactions,
30
+ # newest first. Organization sub-users must have read permission on transactions;
31
+ # without it the list is empty.
32
+ sig do
33
+ params(
34
+ page_number: Integer,
35
+ page_size: Integer,
36
+ request_options: Telnyx::RequestOptions::OrHash
37
+ ).returns(
38
+ Telnyx::Internal::DefaultFlatPagination[
39
+ Telnyx::X402::CreditAccount::X402TransactionRecord
40
+ ]
41
+ )
42
+ end
43
+ def list(
44
+ # The page number to load.
45
+ page_number: nil,
46
+ # The size of the page.
47
+ page_size: nil,
48
+ request_options: {}
49
+ )
50
+ end
51
+
52
+ # @api private
53
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
54
+ def self.new(client:)
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -6,6 +6,11 @@ module Telnyx
6
6
  # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
7
7
  # account using USDC stablecoin payments via the x402 protocol.
8
8
  class CreditAccount
9
+ # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
10
+ # account using USDC stablecoin payments via the x402 protocol.
11
+ sig { returns(Telnyx::Resources::X402::CreditAccount::Payments) }
12
+ attr_reader :payments
13
+
9
14
  # Creates a payment quote for the specified USD amount. Returns payment details
10
15
  # including the x402 payment requirements, network, and expiration time. The quote
11
16
  # must be settled before it expires.
@@ -380,6 +380,8 @@ module Telnyx
380
380
 
381
381
  attr_reader external_requirements: Telnyx::Resources::ExternalRequirements
382
382
 
383
+ attr_reader compute: Telnyx::Resources::Compute
384
+
383
385
  private def auth_headers: -> ::Hash[String, String]
384
386
 
385
387
  private def bearer_auth: -> ::Hash[String, String]
@@ -0,0 +1,140 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ type assistant_a2_a_agent =
5
+ {
6
+ name: String,
7
+ url: String,
8
+ async: bool,
9
+ headers: ::Array[Telnyx::AI::AssistantA2AAgent::Header],
10
+ messages: ::Array[Telnyx::Models::AI::AssistantA2AAgent::message],
11
+ poll_interval_ms: Integer,
12
+ timeout_ms: Integer
13
+ }
14
+
15
+ class AssistantA2AAgent < Telnyx::Internal::Type::BaseModel
16
+ attr_accessor name: String
17
+
18
+ attr_accessor url: String
19
+
20
+ attr_reader async: bool?
21
+
22
+ def async=: (bool) -> bool
23
+
24
+ attr_reader headers: ::Array[Telnyx::AI::AssistantA2AAgent::Header]?
25
+
26
+ def headers=: (
27
+ ::Array[Telnyx::AI::AssistantA2AAgent::Header]
28
+ ) -> ::Array[Telnyx::AI::AssistantA2AAgent::Header]
29
+
30
+ attr_reader messages: ::Array[Telnyx::Models::AI::AssistantA2AAgent::message]?
31
+
32
+ def messages=: (
33
+ ::Array[Telnyx::Models::AI::AssistantA2AAgent::message]
34
+ ) -> ::Array[Telnyx::Models::AI::AssistantA2AAgent::message]
35
+
36
+ attr_reader poll_interval_ms: Integer?
37
+
38
+ def poll_interval_ms=: (Integer) -> Integer
39
+
40
+ attr_reader timeout_ms: Integer?
41
+
42
+ def timeout_ms=: (Integer) -> Integer
43
+
44
+ def initialize: (
45
+ name: String,
46
+ url: String,
47
+ ?async: bool,
48
+ ?headers: ::Array[Telnyx::AI::AssistantA2AAgent::Header],
49
+ ?messages: ::Array[Telnyx::Models::AI::AssistantA2AAgent::message],
50
+ ?poll_interval_ms: Integer,
51
+ ?timeout_ms: Integer
52
+ ) -> void
53
+
54
+ def to_hash: -> {
55
+ name: String,
56
+ url: String,
57
+ async: bool,
58
+ headers: ::Array[Telnyx::AI::AssistantA2AAgent::Header],
59
+ messages: ::Array[Telnyx::Models::AI::AssistantA2AAgent::message],
60
+ poll_interval_ms: Integer,
61
+ timeout_ms: Integer
62
+ }
63
+
64
+ type header = { name: String, value: String }
65
+
66
+ class Header < Telnyx::Internal::Type::BaseModel
67
+ attr_accessor name: String
68
+
69
+ attr_accessor value: String
70
+
71
+ def initialize: (name: String, value: String) -> void
72
+
73
+ def to_hash: -> { name: String, value: String }
74
+ end
75
+
76
+ type message =
77
+ Telnyx::AI::AssistantA2AAgent::Message::A2AAgentRequestStartMessage
78
+ | Telnyx::AI::AssistantA2AAgent::Message::A2AAgentRequestResponseDelayedMessage
79
+
80
+ module Message
81
+ extend Telnyx::Internal::Type::Union
82
+
83
+ type a2_a_agent_request_start_message =
84
+ { content: String, type: :request_start, timing_ms: Integer }
85
+
86
+ class A2AAgentRequestStartMessage < Telnyx::Internal::Type::BaseModel
87
+ attr_accessor content: String
88
+
89
+ attr_accessor type: :request_start
90
+
91
+ attr_reader timing_ms: Integer?
92
+
93
+ def timing_ms=: (Integer) -> Integer
94
+
95
+ def initialize: (
96
+ content: String,
97
+ ?timing_ms: Integer,
98
+ ?type: :request_start
99
+ ) -> void
100
+
101
+ def to_hash: -> {
102
+ content: String,
103
+ type: :request_start,
104
+ timing_ms: Integer
105
+ }
106
+ end
107
+
108
+ type a2_a_agent_request_response_delayed_message =
109
+ {
110
+ content: String,
111
+ timing_ms: Integer,
112
+ type: :request_response_delayed
113
+ }
114
+
115
+ class A2AAgentRequestResponseDelayedMessage < Telnyx::Internal::Type::BaseModel
116
+ attr_accessor content: String
117
+
118
+ attr_accessor timing_ms: Integer
119
+
120
+ attr_accessor type: :request_response_delayed
121
+
122
+ def initialize: (
123
+ content: String,
124
+ timing_ms: Integer,
125
+ ?type: :request_response_delayed
126
+ ) -> void
127
+
128
+ def to_hash: -> {
129
+ content: String,
130
+ timing_ms: Integer,
131
+ type: :request_response_delayed
132
+ }
133
+ end
134
+
135
+ def self?.variants: -> ::Array[Telnyx::Models::AI::AssistantA2AAgent::message]
136
+ end
137
+ end
138
+ end
139
+ end
140
+ end
@@ -5,6 +5,7 @@ module Telnyx
5
5
  {
6
6
  instructions: String,
7
7
  name: String,
8
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
8
9
  conversation_flow: Telnyx::AI::ConversationFlowReq,
9
10
  description: String,
10
11
  dynamic_variables: ::Hash[Symbol, top],
@@ -43,6 +44,12 @@ module Telnyx
43
44
 
44
45
  attr_accessor name: String
45
46
 
47
+ attr_reader a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent]?
48
+
49
+ def a2a_agents=: (
50
+ ::Array[Telnyx::AI::AssistantA2AAgent]
51
+ ) -> ::Array[Telnyx::AI::AssistantA2AAgent]
52
+
46
53
  attr_reader conversation_flow: Telnyx::AI::ConversationFlowReq?
47
54
 
48
55
  def conversation_flow=: (
@@ -188,6 +195,7 @@ module Telnyx
188
195
  def initialize: (
189
196
  instructions: String,
190
197
  name: String,
198
+ ?a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent],
191
199
  ?conversation_flow: Telnyx::AI::ConversationFlowReq,
192
200
  ?description: String,
193
201
  ?dynamic_variables: ::Hash[Symbol, top],
@@ -221,6 +229,7 @@ module Telnyx
221
229
  def to_hash: -> {
222
230
  instructions: String,
223
231
  name: String,
232
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
224
233
  conversation_flow: Telnyx::AI::ConversationFlowReq,
225
234
  description: String,
226
235
  dynamic_variables: ::Hash[Symbol, top],
@@ -4,6 +4,7 @@ module Telnyx
4
4
  type assistant_update_params =
5
5
  {
6
6
  assistant_id: String,
7
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
7
8
  conversation_flow: Telnyx::AI::ConversationFlowReq,
8
9
  description: String,
9
10
  dynamic_variables: ::Hash[Symbol, top],
@@ -43,6 +44,12 @@ module Telnyx
43
44
 
44
45
  attr_accessor assistant_id: String
45
46
 
47
+ attr_reader a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent]?
48
+
49
+ def a2a_agents=: (
50
+ ::Array[Telnyx::AI::AssistantA2AAgent]
51
+ ) -> ::Array[Telnyx::AI::AssistantA2AAgent]
52
+
46
53
  attr_reader conversation_flow: Telnyx::AI::ConversationFlowReq?
47
54
 
48
55
  def conversation_flow=: (
@@ -199,6 +206,7 @@ module Telnyx
199
206
 
200
207
  def initialize: (
201
208
  assistant_id: String,
209
+ ?a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent],
202
210
  ?conversation_flow: Telnyx::AI::ConversationFlowReq,
203
211
  ?description: String,
204
212
  ?dynamic_variables: ::Hash[Symbol, top],
@@ -234,6 +242,7 @@ module Telnyx
234
242
 
235
243
  def to_hash: -> {
236
244
  assistant_id: String,
245
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
237
246
  conversation_flow: Telnyx::AI::ConversationFlowReq,
238
247
  description: String,
239
248
  dynamic_variables: ::Hash[Symbol, top],
@@ -6,6 +6,7 @@ module Telnyx
6
6
  module Assistants
7
7
  type update_assistant =
8
8
  {
9
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
9
10
  conversation_flow: Telnyx::AI::ConversationFlowReq,
10
11
  description: String,
11
12
  dynamic_variables: ::Hash[Symbol, top],
@@ -38,6 +39,12 @@ module Telnyx
38
39
  }
39
40
 
40
41
  class UpdateAssistant < Telnyx::Internal::Type::BaseModel
42
+ attr_reader a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent]?
43
+
44
+ def a2a_agents=: (
45
+ ::Array[Telnyx::AI::AssistantA2AAgent]
46
+ ) -> ::Array[Telnyx::AI::AssistantA2AAgent]
47
+
41
48
  attr_reader conversation_flow: Telnyx::AI::ConversationFlowReq?
42
49
 
43
50
  def conversation_flow=: (
@@ -189,6 +196,7 @@ module Telnyx
189
196
  ) -> Telnyx::AI::WidgetSettings
190
197
 
191
198
  def initialize: (
199
+ ?a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent],
192
200
  ?conversation_flow: Telnyx::AI::ConversationFlowReq,
193
201
  ?description: String,
194
202
  ?dynamic_variables: ::Hash[Symbol, top],
@@ -221,6 +229,7 @@ module Telnyx
221
229
  ) -> void
222
230
 
223
231
  def to_hash: -> {
232
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
224
233
  conversation_flow: Telnyx::AI::ConversationFlowReq,
225
234
  description: String,
226
235
  dynamic_variables: ::Hash[Symbol, top],
@@ -9,9 +9,6 @@ module Telnyx
9
9
  early_stopping: bool,
10
10
  enable_thinking: bool,
11
11
  frequency_penalty: Float,
12
- guided_choice: ::Array[String],
13
- guided_json: ::Hash[Symbol, top],
14
- guided_regex: String,
15
12
  length_penalty: Float,
16
13
  logprobs: bool,
17
14
  max_tokens: Integer,
@@ -22,7 +19,7 @@ module Telnyx
22
19
  presence_penalty: Float,
23
20
  reasoning_effort: Telnyx::Models::AI::ChatCompletionRequest::reasoning_effort,
24
21
  region: Telnyx::Models::AI::ChatCompletionRequest::region,
25
- response_format: Telnyx::AI::ChatCompletionRequest::ResponseFormat,
22
+ response_format: Telnyx::Models::AI::ChatCompletionRequest::response_format,
26
23
  seed: Integer,
27
24
  service_tier: String,
28
25
  stop: Telnyx::Models::AI::ChatCompletionRequest::stop,
@@ -58,18 +55,6 @@ module Telnyx
58
55
 
59
56
  def frequency_penalty=: (Float) -> Float
60
57
 
61
- attr_reader guided_choice: ::Array[String]?
62
-
63
- def guided_choice=: (::Array[String]) -> ::Array[String]
64
-
65
- attr_reader guided_json: ::Hash[Symbol, top]?
66
-
67
- def guided_json=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
68
-
69
- attr_reader guided_regex: String?
70
-
71
- def guided_regex=: (String) -> String
72
-
73
58
  attr_reader length_penalty: Float?
74
59
 
75
60
  def length_penalty=: (Float) -> Float
@@ -116,11 +101,11 @@ module Telnyx
116
101
  Telnyx::Models::AI::ChatCompletionRequest::region
117
102
  ) -> Telnyx::Models::AI::ChatCompletionRequest::region
118
103
 
119
- attr_reader response_format: Telnyx::AI::ChatCompletionRequest::ResponseFormat?
104
+ attr_reader response_format: Telnyx::Models::AI::ChatCompletionRequest::response_format?
120
105
 
121
106
  def response_format=: (
122
- Telnyx::AI::ChatCompletionRequest::ResponseFormat
123
- ) -> Telnyx::AI::ChatCompletionRequest::ResponseFormat
107
+ Telnyx::Models::AI::ChatCompletionRequest::response_format
108
+ ) -> Telnyx::Models::AI::ChatCompletionRequest::response_format
124
109
 
125
110
  attr_reader seed: Integer?
126
111
 
@@ -175,9 +160,6 @@ module Telnyx
175
160
  ?early_stopping: bool,
176
161
  ?enable_thinking: bool,
177
162
  ?frequency_penalty: Float,
178
- ?guided_choice: ::Array[String],
179
- ?guided_json: ::Hash[Symbol, top],
180
- ?guided_regex: String,
181
163
  ?length_penalty: Float,
182
164
  ?logprobs: bool,
183
165
  ?max_tokens: Integer,
@@ -188,7 +170,7 @@ module Telnyx
188
170
  ?presence_penalty: Float,
189
171
  ?reasoning_effort: Telnyx::Models::AI::ChatCompletionRequest::reasoning_effort,
190
172
  ?region: Telnyx::Models::AI::ChatCompletionRequest::region,
191
- ?response_format: Telnyx::AI::ChatCompletionRequest::ResponseFormat,
173
+ ?response_format: Telnyx::Models::AI::ChatCompletionRequest::response_format,
192
174
  ?seed: Integer,
193
175
  ?service_tier: String,
194
176
  ?stop: Telnyx::Models::AI::ChatCompletionRequest::stop,
@@ -208,9 +190,6 @@ module Telnyx
208
190
  early_stopping: bool,
209
191
  enable_thinking: bool,
210
192
  frequency_penalty: Float,
211
- guided_choice: ::Array[String],
212
- guided_json: ::Hash[Symbol, top],
213
- guided_regex: String,
214
193
  length_penalty: Float,
215
194
  logprobs: bool,
216
195
  max_tokens: Integer,
@@ -221,7 +200,7 @@ module Telnyx
221
200
  presence_penalty: Float,
222
201
  reasoning_effort: Telnyx::Models::AI::ChatCompletionRequest::reasoning_effort,
223
202
  region: Telnyx::Models::AI::ChatCompletionRequest::region,
224
- response_format: Telnyx::AI::ChatCompletionRequest::ResponseFormat,
203
+ response_format: Telnyx::Models::AI::ChatCompletionRequest::response_format,
225
204
  seed: Integer,
226
205
  service_tier: String,
227
206
  stop: Telnyx::Models::AI::ChatCompletionRequest::stop,
@@ -365,31 +344,94 @@ module Telnyx
365
344
  end
366
345
 
367
346
  type response_format =
368
- {
369
- type: Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::type_
370
- }
347
+ Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatText
348
+ | Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonObject
349
+ | Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam
371
350
 
372
- class ResponseFormat < Telnyx::Internal::Type::BaseModel
373
- attr_accessor type: Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::type_
351
+ module ResponseFormat
352
+ extend Telnyx::Internal::Type::Union
374
353
 
375
- def initialize: (
376
- type: Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::type_
377
- ) -> void
354
+ type response_format_text = { type: :text }
378
355
 
379
- def to_hash: -> {
380
- type: Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::type_
381
- }
356
+ class ResponseFormatText < Telnyx::Internal::Type::BaseModel
357
+ attr_accessor type: :text
382
358
 
383
- type type_ = :text | :json_object
359
+ def initialize: (?type: :text) -> void
384
360
 
385
- module Type
386
- extend Telnyx::Internal::Type::Enum
361
+ def to_hash: -> { type: :text }
362
+ end
363
+
364
+ type response_format_json_object = { type: :json_object }
365
+
366
+ class ResponseFormatJsonObject < Telnyx::Internal::Type::BaseModel
367
+ attr_accessor type: :json_object
368
+
369
+ def initialize: (?type: :json_object) -> void
370
+
371
+ def to_hash: -> { type: :json_object }
372
+ end
373
+
374
+ type response_format_json_schema_param =
375
+ {
376
+ json_schema: Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam::JsonSchema,
377
+ type: :json_schema
378
+ }
379
+
380
+ class ResponseFormatJsonSchemaParam < Telnyx::Internal::Type::BaseModel
381
+ attr_accessor json_schema: Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam::JsonSchema
382
+
383
+ attr_accessor type: :json_schema
384
+
385
+ def initialize: (
386
+ json_schema: Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam::JsonSchema,
387
+ ?type: :json_schema
388
+ ) -> void
387
389
 
388
- TEXT: :text
389
- JSON_OBJECT: :json_object
390
+ def to_hash: -> {
391
+ json_schema: Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam::JsonSchema,
392
+ type: :json_schema
393
+ }
394
+
395
+ type json_schema =
396
+ {
397
+ name: String,
398
+ description: String,
399
+ schema: ::Hash[Symbol, top],
400
+ strict: bool
401
+ }
402
+
403
+ class JsonSchema < Telnyx::Internal::Type::BaseModel
404
+ attr_accessor name: String
405
+
406
+ attr_reader description: String?
407
+
408
+ def description=: (String) -> String
409
+
410
+ attr_reader schema: ::Hash[Symbol, top]?
390
411
 
391
- def self?.values: -> ::Array[Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::type_]
412
+ def schema=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
413
+
414
+ attr_reader strict: bool?
415
+
416
+ def strict=: (bool) -> bool
417
+
418
+ def initialize: (
419
+ name: String,
420
+ ?description: String,
421
+ ?schema: ::Hash[Symbol, top],
422
+ ?strict: bool
423
+ ) -> void
424
+
425
+ def to_hash: -> {
426
+ name: String,
427
+ description: String,
428
+ schema: ::Hash[Symbol, top],
429
+ strict: bool
430
+ }
431
+ end
392
432
  end
433
+
434
+ def self?.variants: -> ::Array[Telnyx::Models::AI::ChatCompletionRequest::response_format]
393
435
  end
394
436
 
395
437
  type stop = String | ::Array[String]
@@ -8,6 +8,7 @@ module Telnyx
8
8
  instructions: String,
9
9
  model: String,
10
10
  name: String,
11
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
11
12
  conversation_flow: Telnyx::AI::ConversationFlow,
12
13
  description: String,
13
14
  dynamic_variables: ::Hash[Symbol, top],
@@ -50,6 +51,12 @@ module Telnyx
50
51
 
51
52
  attr_accessor name: String
52
53
 
54
+ attr_reader a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent]?
55
+
56
+ def a2a_agents=: (
57
+ ::Array[Telnyx::AI::AssistantA2AAgent]
58
+ ) -> ::Array[Telnyx::AI::AssistantA2AAgent]
59
+
53
60
  attr_reader conversation_flow: Telnyx::AI::ConversationFlow?
54
61
 
55
62
  def conversation_flow=: (
@@ -206,6 +213,7 @@ module Telnyx
206
213
  instructions: String,
207
214
  model: String,
208
215
  name: String,
216
+ ?a2a_agents: ::Array[Telnyx::AI::AssistantA2AAgent],
209
217
  ?conversation_flow: Telnyx::AI::ConversationFlow,
210
218
  ?description: String,
211
219
  ?dynamic_variables: ::Hash[Symbol, top],
@@ -243,6 +251,7 @@ module Telnyx
243
251
  instructions: String,
244
252
  model: String,
245
253
  name: String,
254
+ :a2a_agents => ::Array[Telnyx::AI::AssistantA2AAgent],
246
255
  conversation_flow: Telnyx::AI::ConversationFlow,
247
256
  description: String,
248
257
  dynamic_variables: ::Hash[Symbol, top],
@@ -5,6 +5,7 @@ module Telnyx
5
5
  {
6
6
  default_texml_app_id: String,
7
7
  disable_dtmf: bool,
8
+ fallback_destination: String,
8
9
  noise_suppression: Telnyx::Models::AI::TelephonySettings::noise_suppression,
9
10
  noise_suppression_config: Telnyx::AI::TelephonySettings::NoiseSuppressionConfig,
10
11
  recording_settings: Telnyx::AI::TelephonySettings::RecordingSettings,
@@ -25,6 +26,10 @@ module Telnyx
25
26
 
26
27
  def disable_dtmf=: (bool) -> bool
27
28
 
29
+ attr_reader fallback_destination: String?
30
+
31
+ def fallback_destination=: (String) -> String
32
+
28
33
  attr_reader noise_suppression: Telnyx::Models::AI::TelephonySettings::noise_suppression?
29
34
 
30
35
  def noise_suppression=: (
@@ -72,6 +77,7 @@ module Telnyx
72
77
  def initialize: (
73
78
  ?default_texml_app_id: String,
74
79
  ?disable_dtmf: bool,
80
+ ?fallback_destination: String,
75
81
  ?noise_suppression: Telnyx::Models::AI::TelephonySettings::noise_suppression,
76
82
  ?noise_suppression_config: Telnyx::AI::TelephonySettings::NoiseSuppressionConfig,
77
83
  ?recording_settings: Telnyx::AI::TelephonySettings::RecordingSettings,
@@ -86,6 +92,7 @@ module Telnyx
86
92
  def to_hash: -> {
87
93
  default_texml_app_id: String,
88
94
  disable_dtmf: bool,
95
+ fallback_destination: String,
89
96
  noise_suppression: Telnyx::Models::AI::TelephonySettings::noise_suppression,
90
97
  noise_suppression_config: Telnyx::AI::TelephonySettings::NoiseSuppressionConfig,
91
98
  recording_settings: Telnyx::AI::TelephonySettings::RecordingSettings,
@@ -0,0 +1,69 @@
1
+ module Telnyx
2
+ module Models
3
+ module Compute
4
+ type func_retrieve_logs_params =
5
+ {
6
+ id: String,
7
+ end_time: Time,
8
+ limit: Integer,
9
+ start_time: Time,
10
+ type: Telnyx::Models::Compute::FuncRetrieveLogsParams::type_
11
+ }
12
+ & Telnyx::Internal::Type::request_parameters
13
+
14
+ class FuncRetrieveLogsParams < Telnyx::Internal::Type::BaseModel
15
+ extend Telnyx::Internal::Type::RequestParameters::Converter
16
+ include Telnyx::Internal::Type::RequestParameters
17
+
18
+ attr_accessor id: String
19
+
20
+ attr_reader end_time: Time?
21
+
22
+ def end_time=: (Time) -> Time
23
+
24
+ attr_reader limit: Integer?
25
+
26
+ def limit=: (Integer) -> Integer
27
+
28
+ attr_reader start_time: Time?
29
+
30
+ def start_time=: (Time) -> Time
31
+
32
+ attr_reader type: Telnyx::Models::Compute::FuncRetrieveLogsParams::type_?
33
+
34
+ def type=: (
35
+ Telnyx::Models::Compute::FuncRetrieveLogsParams::type_
36
+ ) -> Telnyx::Models::Compute::FuncRetrieveLogsParams::type_
37
+
38
+ def initialize: (
39
+ id: String,
40
+ ?end_time: Time,
41
+ ?limit: Integer,
42
+ ?start_time: Time,
43
+ ?type: Telnyx::Models::Compute::FuncRetrieveLogsParams::type_,
44
+ ?request_options: Telnyx::request_opts
45
+ ) -> void
46
+
47
+ def to_hash: -> {
48
+ id: String,
49
+ end_time: Time,
50
+ limit: Integer,
51
+ start_time: Time,
52
+ type: Telnyx::Models::Compute::FuncRetrieveLogsParams::type_,
53
+ request_options: Telnyx::RequestOptions
54
+ }
55
+
56
+ type type_ = :runtime | :invocations
57
+
58
+ module Type
59
+ extend Telnyx::Internal::Type::Enum
60
+
61
+ RUNTIME: :runtime
62
+ INVOCATIONS: :invocations
63
+
64
+ def self?.values: -> ::Array[Telnyx::Models::Compute::FuncRetrieveLogsParams::type_]
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end