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,53 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module X402
6
+ module CreditAccount
7
+ class PaymentRetrieveResponse < Telnyx::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Telnyx::Models::X402::CreditAccount::PaymentRetrieveResponse,
12
+ Telnyx::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # An x402 payment transaction.
17
+ sig do
18
+ returns(
19
+ T.nilable(Telnyx::X402::CreditAccount::X402TransactionRecord)
20
+ )
21
+ end
22
+ attr_reader :data
23
+
24
+ sig do
25
+ params(
26
+ data: Telnyx::X402::CreditAccount::X402TransactionRecord::OrHash
27
+ ).void
28
+ end
29
+ attr_writer :data
30
+
31
+ sig do
32
+ params(
33
+ data: Telnyx::X402::CreditAccount::X402TransactionRecord::OrHash
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(
37
+ # An x402 payment transaction.
38
+ data: nil
39
+ )
40
+ end
41
+
42
+ sig do
43
+ override.returns(
44
+ { data: Telnyx::X402::CreditAccount::X402TransactionRecord }
45
+ )
46
+ end
47
+ def to_hash
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,219 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module X402
6
+ module CreditAccount
7
+ class X402TransactionRecord < Telnyx::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Telnyx::X402::CreditAccount::X402TransactionRecord,
12
+ Telnyx::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # Unique transaction identifier.
17
+ sig { returns(T.nilable(String)) }
18
+ attr_reader :id
19
+
20
+ sig { params(id: String).void }
21
+ attr_writer :id
22
+
23
+ # The transaction amount in the specified currency.
24
+ sig { returns(T.nilable(String)) }
25
+ attr_reader :amount
26
+
27
+ sig { params(amount: String).void }
28
+ attr_writer :amount
29
+
30
+ # ISO 8601 timestamp when the transaction was created.
31
+ sig { returns(T.nilable(Time)) }
32
+ attr_reader :created_at
33
+
34
+ sig { params(created_at: Time).void }
35
+ attr_writer :created_at
36
+
37
+ # The currency of the transaction amount (e.g. USD).
38
+ sig { returns(T.nilable(String)) }
39
+ attr_reader :currency
40
+
41
+ sig { params(currency: String).void }
42
+ attr_writer :currency
43
+
44
+ # The original quote ID associated with this transaction.
45
+ sig { returns(T.nilable(String)) }
46
+ attr_reader :quote_id
47
+
48
+ sig { params(quote_id: String).void }
49
+ attr_writer :quote_id
50
+
51
+ sig do
52
+ returns(
53
+ T.nilable(
54
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::TaggedSymbol
55
+ )
56
+ )
57
+ end
58
+ attr_reader :record_type
59
+
60
+ sig do
61
+ params(
62
+ record_type:
63
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::OrSymbol
64
+ ).void
65
+ end
66
+ attr_writer :record_type
67
+
68
+ # The settlement status of the transaction. x402 transactions are created after
69
+ # successful on-chain settlement, so the status is `settled`.
70
+ sig do
71
+ returns(
72
+ T.nilable(
73
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::TaggedSymbol
74
+ )
75
+ )
76
+ end
77
+ attr_reader :status
78
+
79
+ sig do
80
+ params(
81
+ status:
82
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::OrSymbol
83
+ ).void
84
+ end
85
+ attr_writer :status
86
+
87
+ # The on-chain transaction hash, if available.
88
+ sig { returns(T.nilable(String)) }
89
+ attr_accessor :tx_hash
90
+
91
+ # ISO 8601 timestamp when the transaction was last updated.
92
+ sig { returns(T.nilable(Time)) }
93
+ attr_reader :updated_at
94
+
95
+ sig { params(updated_at: Time).void }
96
+ attr_writer :updated_at
97
+
98
+ # An x402 payment transaction.
99
+ sig do
100
+ params(
101
+ id: String,
102
+ amount: String,
103
+ created_at: Time,
104
+ currency: String,
105
+ quote_id: String,
106
+ record_type:
107
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::OrSymbol,
108
+ status:
109
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::OrSymbol,
110
+ tx_hash: T.nilable(String),
111
+ updated_at: Time
112
+ ).returns(T.attached_class)
113
+ end
114
+ def self.new(
115
+ # Unique transaction identifier.
116
+ id: nil,
117
+ # The transaction amount in the specified currency.
118
+ amount: nil,
119
+ # ISO 8601 timestamp when the transaction was created.
120
+ created_at: nil,
121
+ # The currency of the transaction amount (e.g. USD).
122
+ currency: nil,
123
+ # The original quote ID associated with this transaction.
124
+ quote_id: nil,
125
+ record_type: nil,
126
+ # The settlement status of the transaction. x402 transactions are created after
127
+ # successful on-chain settlement, so the status is `settled`.
128
+ status: nil,
129
+ # The on-chain transaction hash, if available.
130
+ tx_hash: nil,
131
+ # ISO 8601 timestamp when the transaction was last updated.
132
+ updated_at: nil
133
+ )
134
+ end
135
+
136
+ sig do
137
+ override.returns(
138
+ {
139
+ id: String,
140
+ amount: String,
141
+ created_at: Time,
142
+ currency: String,
143
+ quote_id: String,
144
+ record_type:
145
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::TaggedSymbol,
146
+ status:
147
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::TaggedSymbol,
148
+ tx_hash: T.nilable(String),
149
+ updated_at: Time
150
+ }
151
+ )
152
+ end
153
+ def to_hash
154
+ end
155
+
156
+ module RecordType
157
+ extend Telnyx::Internal::Type::Enum
158
+
159
+ TaggedSymbol =
160
+ T.type_alias do
161
+ T.all(
162
+ Symbol,
163
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType
164
+ )
165
+ end
166
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
167
+
168
+ X402_TRANSACTION =
169
+ T.let(
170
+ :x402_transaction,
171
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::TaggedSymbol
172
+ )
173
+
174
+ sig do
175
+ override.returns(
176
+ T::Array[
177
+ Telnyx::X402::CreditAccount::X402TransactionRecord::RecordType::TaggedSymbol
178
+ ]
179
+ )
180
+ end
181
+ def self.values
182
+ end
183
+ end
184
+
185
+ # The settlement status of the transaction. x402 transactions are created after
186
+ # successful on-chain settlement, so the status is `settled`.
187
+ module Status
188
+ extend Telnyx::Internal::Type::Enum
189
+
190
+ TaggedSymbol =
191
+ T.type_alias do
192
+ T.all(
193
+ Symbol,
194
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status
195
+ )
196
+ end
197
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
198
+
199
+ SETTLED =
200
+ T.let(
201
+ :settled,
202
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::TaggedSymbol
203
+ )
204
+
205
+ sig do
206
+ override.returns(
207
+ T::Array[
208
+ Telnyx::X402::CreditAccount::X402TransactionRecord::Status::TaggedSymbol
209
+ ]
210
+ )
211
+ end
212
+ def self.values
213
+ end
214
+ end
215
+ end
216
+ end
217
+ end
218
+ end
219
+ end
@@ -392,6 +392,8 @@ module Telnyx
392
392
 
393
393
  CommentRetrieveParams = Telnyx::Models::CommentRetrieveParams
394
394
 
395
+ Compute = Telnyx::Models::Compute
396
+
395
397
  Conference = Telnyx::Models::Conference
396
398
 
397
399
  ConferenceCreated = Telnyx::Models::ConferenceCreated
@@ -1280,6 +1282,8 @@ module Telnyx
1280
1282
 
1281
1283
  MessagingProfileDeleteParams = Telnyx::Models::MessagingProfileDeleteParams
1282
1284
 
1285
+ MessagingProfileFeatures = Telnyx::Models::MessagingProfileFeatures
1286
+
1283
1287
  MessagingProfileListAlphanumericSenderIDsParams =
1284
1288
  Telnyx::Models::MessagingProfileListAlphanumericSenderIDsParams
1285
1289
 
@@ -2386,6 +2390,8 @@ module Telnyx
2386
2390
 
2387
2391
  Whatsapp = Telnyx::Models::Whatsapp
2388
2392
 
2393
+ WhatsappAccountUpdate = Telnyx::Models::WhatsappAccountUpdate
2394
+
2389
2395
  WhatsappContact = Telnyx::Models::WhatsappContact
2390
2396
 
2391
2397
  WhatsappInteractive = Telnyx::Models::WhatsappInteractive
@@ -2396,6 +2402,8 @@ module Telnyx
2396
2402
 
2397
2403
  WhatsappMessageContent = Telnyx::Models::WhatsappMessageContent
2398
2404
 
2405
+ WhatsappMessageEcho = Telnyx::Models::WhatsappMessageEcho
2406
+
2399
2407
  WhatsappMessageTemplateDeleteParams =
2400
2408
  Telnyx::Models::WhatsappMessageTemplateDeleteParams
2401
2409
 
@@ -32,6 +32,7 @@ module Telnyx
32
32
  params(
33
33
  version_id: String,
34
34
  assistant_id: String,
35
+ a2a_agents: T::Array[Telnyx::AI::AssistantA2AAgent::OrHash],
35
36
  conversation_flow: Telnyx::AI::ConversationFlowReq::OrHash,
36
37
  description: String,
37
38
  dynamic_variables: T::Hash[Symbol, T.anything],
@@ -88,6 +89,17 @@ module Telnyx
88
89
  version_id,
89
90
  # Path param: Unique identifier of the assistant.
90
91
  assistant_id:,
92
+ # Body param: A2A agents this assistant can delegate to. Tools are not stored
93
+ # here: at the start of every conversation each agent's card is fetched and one
94
+ # tool is derived per skill the card advertises, named `a2a_<name>_<skill_id>`.
95
+ # The following limits are not enforced when the assistant is saved, and anything
96
+ # past them is dropped when the conversation starts: 64 agents per assistant, 64
97
+ # skills per card, 128 derived tools per assistant, and a 6 second budget for all
98
+ # card fetches combined. An agent whose card cannot be fetched costs the assistant
99
+ # that capability for the conversation; it does not fail the call. Omit this field
100
+ # to leave the assistant's agents unchanged; send an empty array to remove them
101
+ # all.
102
+ a2a_agents: nil,
91
103
  # Body param: Conversation flow as supplied by API clients (create / update).
92
104
  #
93
105
  # A directed graph of `FlowNodeReq` connected by `FlowEdge`s. Validation enforces
@@ -39,6 +39,7 @@ module Telnyx
39
39
  params(
40
40
  instructions: String,
41
41
  name: String,
42
+ a2a_agents: T::Array[Telnyx::AI::AssistantA2AAgent::OrHash],
42
43
  conversation_flow: Telnyx::AI::ConversationFlowReq::OrHash,
43
44
  description: String,
44
45
  dynamic_variables: T::Hash[Symbol, T.anything],
@@ -94,6 +95,15 @@ module Telnyx
94
95
  instructions:,
95
96
  # Body param
96
97
  name:,
98
+ # Body param: A2A agents this assistant can delegate to. Tools are not stored
99
+ # here: at the start of every conversation each agent's card is fetched and one
100
+ # tool is derived per skill the card advertises, named `a2a_<name>_<skill_id>`.
101
+ # The following limits are not enforced when the assistant is saved, and anything
102
+ # past them is dropped when the conversation starts: 64 agents per assistant, 64
103
+ # skills per card, 128 derived tools per assistant, and a 6 second budget for all
104
+ # card fetches combined. An agent whose card cannot be fetched costs the assistant
105
+ # that capability for the conversation; it does not fail the call.
106
+ a2a_agents: nil,
97
107
  # Body param: Conversation flow as supplied by API clients (create / update).
98
108
  #
99
109
  # A directed graph of `FlowNodeReq` connected by `FlowEdge`s. Validation enforces
@@ -238,6 +248,7 @@ module Telnyx
238
248
  sig do
239
249
  params(
240
250
  assistant_id: String,
251
+ a2a_agents: T::Array[Telnyx::AI::AssistantA2AAgent::OrHash],
241
252
  conversation_flow: Telnyx::AI::ConversationFlowReq::OrHash,
242
253
  description: String,
243
254
  dynamic_variables: T::Hash[Symbol, T.anything],
@@ -293,6 +304,16 @@ module Telnyx
293
304
  def update(
294
305
  # Unique identifier of the assistant.
295
306
  assistant_id,
307
+ # A2A agents this assistant can delegate to. Tools are not stored here: at the
308
+ # start of every conversation each agent's card is fetched and one tool is derived
309
+ # per skill the card advertises, named `a2a_<name>_<skill_id>`. The following
310
+ # limits are not enforced when the assistant is saved, and anything past them is
311
+ # dropped when the conversation starts: 64 agents per assistant, 64 skills per
312
+ # card, 128 derived tools per assistant, and a 6 second budget for all card
313
+ # fetches combined. An agent whose card cannot be fetched costs the assistant that
314
+ # capability for the conversation; it does not fail the call. Omit this field to
315
+ # leave the assistant's agents unchanged; send an empty array to remove them all.
316
+ a2a_agents: nil,
296
317
  # Conversation flow as supplied by API clients (create / update).
297
318
  #
298
319
  # A directed graph of `FlowNodeReq` connected by `FlowEdge`s. Validation enforces
@@ -18,9 +18,6 @@ module Telnyx
18
18
  early_stopping: T::Boolean,
19
19
  enable_thinking: T::Boolean,
20
20
  frequency_penalty: Float,
21
- guided_choice: T::Array[String],
22
- guided_json: T::Hash[Symbol, T.anything],
23
- guided_regex: String,
24
21
  length_penalty: Float,
25
22
  logprobs: T::Boolean,
26
23
  max_tokens: Integer,
@@ -33,7 +30,11 @@ module Telnyx
33
30
  Telnyx::AI::ChatCompletionRequest::ReasoningEffort::OrSymbol,
34
31
  region: Telnyx::AI::ChatCompletionRequest::Region::OrSymbol,
35
32
  response_format:
36
- Telnyx::AI::ChatCompletionRequest::ResponseFormat::OrHash,
33
+ T.any(
34
+ Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatText::OrHash,
35
+ Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonObject::OrHash,
36
+ Telnyx::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam::OrHash
37
+ ),
37
38
  seed: Integer,
38
39
  service_tier: String,
39
40
  stop: Telnyx::AI::ChatCompletionRequest::Stop::Variants,
@@ -75,13 +76,6 @@ module Telnyx
75
76
  enable_thinking: nil,
76
77
  # Higher values will penalize the model from repeating the same output tokens.
77
78
  frequency_penalty: nil,
78
- # If specified, the output will be exactly one of the choices.
79
- guided_choice: nil,
80
- # Must be a valid JSON schema. If specified, the output will follow the JSON
81
- # schema.
82
- guided_json: nil,
83
- # If specified, the output will follow the regex pattern.
84
- guided_regex: nil,
85
79
  # This is used with `use_beam_search` to prefer shorter or longer completions.
86
80
  length_penalty: nil,
87
81
  # Whether to return log probabilities of the output tokens or not. If true,
@@ -118,8 +112,10 @@ module Telnyx
118
112
  # provider never passes through Telnyx model routing, so a region cannot be
119
113
  # enforced for it. Omit for today's latency-based routing.
120
114
  region: nil,
121
- # Use this is you want to guarantee a JSON output without defining a schema. For
122
- # control over the schema, use `guided_json`.
115
+ # Controls the format of the model output. `json_object` guarantees valid JSON
116
+ # output without defining a schema; `json_schema` constrains the output to the
117
+ # JSON schema you supply via the `json_schema` property and is the supported way
118
+ # to get guaranteed structured output on Telnyx-hosted models.
123
119
  response_format: nil,
124
120
  # If specified, the system will make a best effort to sample deterministically,
125
121
  # such that repeated requests with the same `seed` and parameters should return
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Compute
6
+ class Funcs
7
+ # Returns logs oldest first. `type=runtime` (default) returns function
8
+ # stdout/stderr. `type=invocations` returns one platform-generated record per HTTP
9
+ # request served.
10
+ sig do
11
+ params(
12
+ id: String,
13
+ end_time: Time,
14
+ limit: Integer,
15
+ start_time: Time,
16
+ type: Telnyx::Compute::FuncRetrieveLogsParams::Type::OrSymbol,
17
+ request_options: Telnyx::RequestOptions::OrHash
18
+ ).returns(Telnyx::Models::Compute::FuncRetrieveLogsResponse::Variants)
19
+ end
20
+ def retrieve_logs(
21
+ # Function ID
22
+ id,
23
+ # Return records at or before this RFC 3339 timestamp.
24
+ end_time: nil,
25
+ # Maximum records to return.
26
+ limit: nil,
27
+ # Return records at or after this RFC 3339 timestamp.
28
+ start_time: nil,
29
+ # Log stream to return.
30
+ type: nil,
31
+ request_options: {}
32
+ )
33
+ end
34
+
35
+ # Returns aggregate request, latency, CPU, memory, and resource-limit metrics for
36
+ # a function over the requested window.
37
+ sig do
38
+ params(
39
+ id: String,
40
+ end_time: Time,
41
+ start_time: Time,
42
+ filter_edge_site: String,
43
+ filter_namespace: String,
44
+ page_number: Integer,
45
+ page_size: Integer,
46
+ request_options: Telnyx::RequestOptions::OrHash
47
+ ).returns(
48
+ Telnyx::Models::Compute::FuncRetrieveMetricAggregatesResponse
49
+ )
50
+ end
51
+ def retrieve_metric_aggregates(
52
+ # Function ID
53
+ id,
54
+ # Exclusive window end, UTC ISO 8601 with milliseconds
55
+ end_time:,
56
+ # Inclusive window start, UTC ISO 8601 with milliseconds
57
+ start_time:,
58
+ # Edge site filter
59
+ filter_edge_site: nil,
60
+ # Kubernetes namespace filter
61
+ filter_namespace: nil,
62
+ page_number: nil,
63
+ page_size: nil,
64
+ request_options: {}
65
+ )
66
+ end
67
+
68
+ # Lists a function's ship history newest first, including per-ship failure stage
69
+ # and reason when recorded.
70
+ sig do
71
+ params(
72
+ id: String,
73
+ page_number: Integer,
74
+ page_size: Integer,
75
+ request_options: Telnyx::RequestOptions::OrHash
76
+ ).returns(Telnyx::Models::Compute::FuncRetrieveRevisionsResponse)
77
+ end
78
+ def retrieve_revisions(
79
+ # Function ID
80
+ id,
81
+ page_number: nil,
82
+ page_size: nil,
83
+ request_options: {}
84
+ )
85
+ end
86
+
87
+ # Returns the latest ship outcome. The stage is `none` on success, `pending` while
88
+ # building, or a failure stage such as `build`, `platform`, `pre_build`, `deploy`,
89
+ # or `security_review`. This stage-neutral customer-facing path is an alias over
90
+ # the same inspection resource as `build_log_inspection`.
91
+ sig do
92
+ params(
93
+ id: String,
94
+ request_options: Telnyx::RequestOptions::OrHash
95
+ ).returns(Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse)
96
+ end
97
+ def retrieve_ship_inspection(
98
+ # Function ID
99
+ id,
100
+ request_options: {}
101
+ )
102
+ end
103
+
104
+ # @api private
105
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
106
+ def self.new(client:)
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,15 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Compute
6
+ sig { returns(Telnyx::Resources::Compute::Funcs) }
7
+ attr_reader :funcs
8
+
9
+ # @api private
10
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
11
+ def self.new(client:)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -210,7 +210,9 @@ module Telnyx
210
210
  )
211
211
  end
212
212
 
213
- # Creates up to 50 email messages in a single request.
213
+ # Creates up to 1,000 email messages in a single request. Each message is
214
+ # validated and sent independently; per-message failures do not affect other
215
+ # messages in the batch. All responses use 207 Multi-Status.
214
216
  sig do
215
217
  params(
216
218
  messages: T::Array[Telnyx::EmailMessageBatchParams::Message::OrHash],
@@ -220,7 +222,9 @@ module Telnyx
220
222
  ).returns(Telnyx::Models::EmailMessageBatchResponse)
221
223
  end
222
224
  def batch(
223
- # Body param
225
+ # Body param: Array of email messages to send. Up to 1,000 messages per batch
226
+ # request. Each message is validated and sent independently; per-message failures
227
+ # do not affect other messages in the batch.
224
228
  messages:,
225
229
  # Body param: Applies sandbox mode to all messages in the batch. Overrides any
226
230
  # per-message sandbox_mode in the messages array.
@@ -21,6 +21,7 @@ module Telnyx
21
21
  daily_spend_limit: String,
22
22
  daily_spend_limit_enabled: T::Boolean,
23
23
  enabled: T::Boolean,
24
+ features: T.nilable(Telnyx::MessagingProfileFeatures::OrHash),
24
25
  health_webhook_url: T.nilable(String),
25
26
  mms_fall_back_to_sms: T::Boolean,
26
27
  mms_transcoding: T::Boolean,
@@ -56,6 +57,10 @@ module Telnyx
56
57
  daily_spend_limit_enabled: nil,
57
58
  # Specifies whether the messaging profile is enabled or not.
58
59
  enabled: nil,
60
+ # Telnyx product features the messaging customer can enable on the messaging
61
+ # profile. Keys map to individual feature flags; unknown keys are accepted and
62
+ # preserved for forward compatibility with rolling deployments.
63
+ features: nil,
59
64
  # A URL to receive health check webhooks for numbers in this profile.
60
65
  health_webhook_url: nil,
61
66
  # enables SMS fallback for MMS messages.
@@ -121,6 +126,7 @@ module Telnyx
121
126
  daily_spend_limit: String,
122
127
  daily_spend_limit_enabled: T::Boolean,
123
128
  enabled: T::Boolean,
129
+ features: T.nilable(Telnyx::MessagingProfileFeatures::OrHash),
124
130
  mms_fall_back_to_sms: T::Boolean,
125
131
  mms_transcoding: T::Boolean,
126
132
  mobile_only: T::Boolean,
@@ -155,6 +161,10 @@ module Telnyx
155
161
  daily_spend_limit_enabled: nil,
156
162
  # Specifies whether the messaging profile is enabled or not.
157
163
  enabled: nil,
164
+ # Telnyx product features the messaging customer can enable on the messaging
165
+ # profile. Keys map to individual feature flags; unknown keys are accepted and
166
+ # preserved for forward compatibility with rolling deployments.
167
+ features: nil,
158
168
  # enables SMS fallback for MMS messages.
159
169
  mms_fall_back_to_sms: nil,
160
170
  # enables automated resizing of MMS media.
@@ -78,7 +78,9 @@ module Telnyx
78
78
  Telnyx::ReplacedLinkClickWebhookEvent,
79
79
  Telnyx::SessionStatusChangedWebhookEvent,
80
80
  Telnyx::TranscriptCompletedWebhookEvent,
81
- Telnyx::TranscriptionWebhookEvent
81
+ Telnyx::TranscriptionWebhookEvent,
82
+ Telnyx::WhatsappAccountUpdate,
83
+ Telnyx::WhatsappMessageEcho
82
84
  )
83
85
  )
84
86
  end
@@ -167,7 +169,9 @@ module Telnyx
167
169
  Telnyx::ReplacedLinkClickWebhookEvent,
168
170
  Telnyx::SessionStatusChangedWebhookEvent,
169
171
  Telnyx::TranscriptCompletedWebhookEvent,
170
- Telnyx::TranscriptionWebhookEvent
172
+ Telnyx::TranscriptionWebhookEvent,
173
+ Telnyx::WhatsappAccountUpdate,
174
+ Telnyx::WhatsappMessageEcho
171
175
  )
172
176
  )
173
177
  end
@@ -101,6 +101,24 @@ module Telnyx
101
101
  )
102
102
  end
103
103
 
104
+ # Returns one WhatsApp phone number linked to the authenticated Telnyx account.
105
+ # For a coexistence number in the `syncing` state, the response includes
106
+ # `sync_progress`.
107
+ sig do
108
+ params(
109
+ phone_number: String,
110
+ request_options: Telnyx::RequestOptions::OrHash
111
+ ).returns(
112
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse
113
+ )
114
+ end
115
+ def retrieve_phone_number(
116
+ # Phone number (E.164 format)
117
+ phone_number,
118
+ request_options: {}
119
+ )
120
+ end
121
+
104
122
  # Submits the verification code received for the specified WhatsApp phone number.
105
123
  sig do
106
124
  params(