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
@@ -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,11 +126,14 @@ 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,
127
133
  name: String,
128
134
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings::OrHash),
135
+ redaction_enabled: T::Boolean,
136
+ redaction_level: Integer,
129
137
  smart_encoding: T::Boolean,
130
138
  url_shortener_settings:
131
139
  T.nilable(Telnyx::URLShortenerSettings::OrHash),
@@ -153,6 +161,10 @@ module Telnyx
153
161
  daily_spend_limit_enabled: nil,
154
162
  # Specifies whether the messaging profile is enabled or not.
155
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,
156
168
  # enables SMS fallback for MMS messages.
157
169
  mms_fall_back_to_sms: nil,
158
170
  # enables automated resizing of MMS media.
@@ -167,6 +179,15 @@ module Telnyx
167
179
  #
168
180
  # To disable this feature, set the object field to `null`.
169
181
  number_pool_settings: nil,
182
+ # Set to true to enable message content redaction on this profile, or false to
183
+ # disable it. Ignored if the organization is not on the redaction allowlist. See
184
+ # the [Message Redaction guide](/docs/messaging/messages/message-redaction) for
185
+ # what is redacted.
186
+ redaction_enabled: nil,
187
+ # The redaction level to apply when redaction is enabled. 1: redact message
188
+ # records and reporting only. 2 (default): also redact inbound webhook payloads.
189
+ # See the [Message Redaction guide](/docs/messaging/messages/message-redaction).
190
+ redaction_level: nil,
170
191
  # Enables automatic character encoding optimization for SMS messages. When
171
192
  # enabled, the system automatically selects the most efficient encoding (GSM-7 or
172
193
  # UCS-2) based on message content to maximize character limits and minimize costs.
@@ -210,7 +231,9 @@ module Telnyx
210
231
  page_size: Integer,
211
232
  request_options: Telnyx::RequestOptions::OrHash
212
233
  ).returns(
213
- Telnyx::Internal::DefaultFlatPagination[Telnyx::MessagingProfile]
234
+ Telnyx::Internal::DefaultFlatPagination[
235
+ Telnyx::MessagingMessagingProfile
236
+ ]
214
237
  )
215
238
  end
216
239
  def list(
@@ -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(
@@ -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]
@@ -13,6 +13,8 @@ module Telnyx
13
13
  max_retries: Integer,
14
14
  mcp_servers: ::Array[::Hash[Symbol, top]],
15
15
  metadata: ::Hash[Symbol, top],
16
+ mode: Telnyx::Models::AI::Anthropic::V1MessagesParams::mode,
17
+ region: Telnyx::Models::AI::Anthropic::V1MessagesParams::region,
16
18
  service_tier: String,
17
19
  stop_sequences: ::Array[String],
18
20
  stream: bool,
@@ -63,6 +65,18 @@ module Telnyx
63
65
 
64
66
  def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
65
67
 
68
+ attr_reader mode: Telnyx::Models::AI::Anthropic::V1MessagesParams::mode?
69
+
70
+ def mode=: (
71
+ Telnyx::Models::AI::Anthropic::V1MessagesParams::mode
72
+ ) -> Telnyx::Models::AI::Anthropic::V1MessagesParams::mode
73
+
74
+ attr_reader region: Telnyx::Models::AI::Anthropic::V1MessagesParams::region?
75
+
76
+ def region=: (
77
+ Telnyx::Models::AI::Anthropic::V1MessagesParams::region
78
+ ) -> Telnyx::Models::AI::Anthropic::V1MessagesParams::region
79
+
66
80
  attr_reader service_tier: String?
67
81
 
68
82
  def service_tier=: (String) -> String
@@ -121,6 +135,8 @@ module Telnyx
121
135
  ?max_retries: Integer,
122
136
  ?mcp_servers: ::Array[::Hash[Symbol, top]],
123
137
  ?metadata: ::Hash[Symbol, top],
138
+ ?mode: Telnyx::Models::AI::Anthropic::V1MessagesParams::mode,
139
+ ?region: Telnyx::Models::AI::Anthropic::V1MessagesParams::region,
124
140
  ?service_tier: String,
125
141
  ?stop_sequences: ::Array[String],
126
142
  ?stream: bool,
@@ -145,6 +161,8 @@ module Telnyx
145
161
  max_retries: Integer,
146
162
  mcp_servers: ::Array[::Hash[Symbol, top]],
147
163
  metadata: ::Hash[Symbol, top],
164
+ mode: Telnyx::Models::AI::Anthropic::V1MessagesParams::mode,
165
+ region: Telnyx::Models::AI::Anthropic::V1MessagesParams::region,
148
166
  service_tier: String,
149
167
  stop_sequences: ::Array[String],
150
168
  stream: bool,
@@ -159,6 +177,30 @@ module Telnyx
159
177
  request_options: Telnyx::RequestOptions
160
178
  }
161
179
 
180
+ type mode = :preferred | :strict
181
+
182
+ module Mode
183
+ extend Telnyx::Internal::Type::Enum
184
+
185
+ PREFERRED: :preferred
186
+ STRICT: :strict
187
+
188
+ def self?.values: -> ::Array[Telnyx::Models::AI::Anthropic::V1MessagesParams::mode]
189
+ end
190
+
191
+ type region = :USA | :EU | :AUS | :UAE
192
+
193
+ module Region
194
+ extend Telnyx::Internal::Type::Enum
195
+
196
+ USA: :USA
197
+ EU: :EU
198
+ AUS: :AUS
199
+ UAE: :UAE
200
+
201
+ def self?.values: -> ::Array[Telnyx::Models::AI::Anthropic::V1MessagesParams::region]
202
+ end
203
+
162
204
  type system_ = String | ::Array[::Hash[Symbol, top]]
163
205
 
164
206
  module System
@@ -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],