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,94 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Compute
6
+ # @see Telnyx::Resources::Compute::Funcs#retrieve_ship_inspection
7
+ class FuncRetrieveShipInspectionResponse < Telnyx::Internal::Type::BaseModel
8
+ # @!attribute data
9
+ #
10
+ # @return [Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data, nil]
11
+ optional :data, -> { Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data }
12
+
13
+ # @!method initialize(data: nil)
14
+ # @param data [Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data]
15
+
16
+ # @see Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse#data
17
+ class Data < Telnyx::Internal::Type::BaseModel
18
+ # @!attribute created_at
19
+ #
20
+ # @return [Time, nil]
21
+ optional :created_at, Time
22
+
23
+ # @!attribute reason
24
+ #
25
+ # @return [String, nil]
26
+ optional :reason, String
27
+
28
+ # @!attribute record_type
29
+ # Stable record type retained by both inspection path aliases.
30
+ #
31
+ # @return [Symbol, Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::RecordType, nil]
32
+ optional :record_type,
33
+ enum: -> { Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::RecordType }
34
+
35
+ # @!attribute runtime
36
+ #
37
+ # @return [String, nil]
38
+ optional :runtime, String
39
+
40
+ # @!attribute snippet
41
+ #
42
+ # @return [String, nil]
43
+ optional :snippet, String
44
+
45
+ # @!attribute stage
46
+ #
47
+ # @return [Symbol, Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::Stage, nil]
48
+ optional :stage, enum: -> { Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::Stage }
49
+
50
+ # @!method initialize(created_at: nil, reason: nil, record_type: nil, runtime: nil, snippet: nil, stage: nil)
51
+ # @param created_at [Time]
52
+ #
53
+ # @param reason [String]
54
+ #
55
+ # @param record_type [Symbol, Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::RecordType] Stable record type retained by both inspection path aliases.
56
+ #
57
+ # @param runtime [String]
58
+ #
59
+ # @param snippet [String]
60
+ #
61
+ # @param stage [Symbol, Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data::Stage]
62
+
63
+ # Stable record type retained by both inspection path aliases.
64
+ #
65
+ # @see Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data#record_type
66
+ module RecordType
67
+ extend Telnyx::Internal::Type::Enum
68
+
69
+ BUILD_LOG_INSPECTION = :build_log_inspection
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+
75
+ # @see Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse::Data#stage
76
+ module Stage
77
+ extend Telnyx::Internal::Type::Enum
78
+
79
+ BUILD = :build
80
+ PLATFORM = :platform
81
+ PRE_BUILD = :pre_build
82
+ DEPLOY = :deploy
83
+ SECURITY_REVIEW = :security_review
84
+ NONE = :none
85
+ PENDING = :pending
86
+
87
+ # @!method self.values
88
+ # @return [Array<Symbol>]
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Compute
6
+ class FunctionsObservabilityPaginationMeta < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute page_number
8
+ #
9
+ # @return [Integer, nil]
10
+ optional :page_number, Integer
11
+
12
+ # @!attribute page_size
13
+ #
14
+ # @return [Integer, nil]
15
+ optional :page_size, Integer
16
+
17
+ # @!attribute total_pages
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :total_pages, Integer
21
+
22
+ # @!attribute total_results
23
+ #
24
+ # @return [Integer, nil]
25
+ optional :total_results, Integer
26
+
27
+ # @!method initialize(page_number: nil, page_size: nil, total_pages: nil, total_results: nil)
28
+ # @param page_number [Integer]
29
+ # @param page_size [Integer]
30
+ # @param total_pages [Integer]
31
+ # @param total_results [Integer]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Compute
6
+ class LogsMeta < Telnyx::Internal::Type::BaseModel
7
+ # @!attribute has_more
8
+ #
9
+ # @return [Boolean, nil]
10
+ optional :has_more, Telnyx::Internal::Type::Boolean
11
+
12
+ # @!attribute partial
13
+ #
14
+ # @return [Boolean, nil]
15
+ optional :partial, Telnyx::Internal::Type::Boolean
16
+
17
+ # @!method initialize(has_more: nil, partial: nil)
18
+ # @param has_more [Boolean]
19
+ # @param partial [Boolean]
20
+ end
21
+ end
22
+ end
23
+ end
@@ -138,7 +138,10 @@ module Telnyx
138
138
 
139
139
  # @!attribute password
140
140
  # The password to be used as part of the credentials. Must be 8 to 128 characters
141
- # long.
141
+ # long. For primary accounts created on or after September 8, 2026, this password
142
+ # is returned as `********`. The password is returned in full on create, and on
143
+ # update only when that update changed the password. Accounts created before
144
+ # September 8, 2026 are unaffected.
142
145
  #
143
146
  # @return [String, nil]
144
147
  optional :password, String
@@ -106,7 +106,16 @@ module Telnyx
106
106
  # @return [Time, nil]
107
107
  optional :scheduled_at, Time
108
108
 
109
- # @!method initialize(id:, attachments:, bcc:, cc:, created_at:, events:, from:, record_type:, reply_to:, status:, subject:, template_id:, template_variables:, to:, inline_css: nil, recipient_statuses: nil, sandbox: nil, scheduled_at: nil)
109
+ # @!attribute suppressed
110
+ # Recipients excluded from delivery by suppression checks, with reasons. On batch
111
+ # items, present when that item had suppressed recipients; all other recipients of
112
+ # the item still receive the message. For single sends this information appears at
113
+ # the top level of the response instead (see EmailMessageResponse.suppressed).
114
+ #
115
+ # @return [Array<Telnyx::Models::SuppressedRecipient>, nil]
116
+ optional :suppressed, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::SuppressedRecipient] }
117
+
118
+ # @!method initialize(id:, attachments:, bcc:, cc:, created_at:, events:, from:, record_type:, reply_to:, status:, subject:, template_id:, template_variables:, to:, inline_css: nil, recipient_statuses: nil, sandbox: nil, scheduled_at: nil, suppressed: nil)
110
119
  # Some parameter documentations has been truncated, see
111
120
  # {Telnyx::Models::EmailInboxes::EmailMessage} for more details.
112
121
  #
@@ -145,6 +154,8 @@ module Telnyx
145
154
  # @param sandbox [Boolean] Present when sandbox mode was used.
146
155
  #
147
156
  # @param scheduled_at [Time] Present when a scheduled_at value was stored. Persists even after the scheduled
157
+ #
158
+ # @param suppressed [Array<Telnyx::Models::SuppressedRecipient>] Recipients excluded from delivery by suppression checks, with reasons. On batch
148
159
 
149
160
  class Attachment < Telnyx::Internal::Type::BaseModel
150
161
  # @!attribute content_id
@@ -8,6 +8,9 @@ module Telnyx
8
8
  include Telnyx::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute messages
11
+ # Array of email messages to send. Up to 1,000 messages per batch request. Each
12
+ # message is validated and sent independently; per-message failures do not affect
13
+ # other messages in the batch.
11
14
  #
12
15
  # @return [Array<Telnyx::Models::EmailMessageBatchParams::Message>]
13
16
  required :messages, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::EmailMessageBatchParams::Message] }
@@ -28,7 +31,7 @@ module Telnyx
28
31
  # Some parameter documentations has been truncated, see
29
32
  # {Telnyx::Models::EmailMessageBatchParams} for more details.
30
33
  #
31
- # @param messages [Array<Telnyx::Models::EmailMessageBatchParams::Message>]
34
+ # @param messages [Array<Telnyx::Models::EmailMessageBatchParams::Message>] Array of email messages to send. Up to 1,000 messages per batch request. Each me
32
35
  #
33
36
  # @param sandbox_mode [Boolean] Applies sandbox mode to all messages in the batch. Overrides any per-message san
34
37
  #
@@ -59,6 +59,7 @@ module Telnyx
59
59
  NOT_FOUND = :not_found
60
60
  FORBIDDEN = :forbidden
61
61
  SERVICE_UNAVAILABLE = :service_unavailable
62
+ UNPROCESSABLE_ENTITY = :unprocessable_entity
62
63
  VALIDATION_ERROR = :validation_error
63
64
  RECIPIENT_SUPPRESSED = :recipient_suppressed
64
65
  REPUTATION_SUSPENDED = :reputation_suspended
@@ -168,7 +168,10 @@ module Telnyx
168
168
  optional :outbound, -> { Telnyx::OutboundFqdn }
169
169
 
170
170
  # @!attribute password
171
- # The password for the FQDN connection.
171
+ # The password for the FQDN connection. For primary accounts created on or after
172
+ # September 8, 2026, this password is returned as `********`. The password is
173
+ # returned in full on create, and on update only when that update changed the
174
+ # password. Accounts created before September 8, 2026 are unaffected.
172
175
  #
173
176
  # @return [String, nil]
174
177
  optional :password, String
@@ -323,7 +326,7 @@ module Telnyx
323
326
  #
324
327
  # @param outbound [Telnyx::Models::OutboundFqdn]
325
328
  #
326
- # @param password [String] The password for the FQDN connection.
329
+ # @param password [String] The password for the FQDN connection. For primary accounts created on or after S
327
330
  #
328
331
  # @param record_type [String] Identifies the type of the resource.
329
332
  #
@@ -43,7 +43,10 @@ module Telnyx
43
43
  optional :microsoft_teams_sbc, Telnyx::Internal::Type::Boolean
44
44
 
45
45
  # @!attribute password
46
- # The password for authentication.
46
+ # The password for authentication. For primary accounts created on or after
47
+ # September 8, 2026, this password is returned as `********`. The password is
48
+ # returned in full on create, and on update only when that update changed the
49
+ # password. Accounts created before September 8, 2026 are unaffected.
47
50
  #
48
51
  # @return [String, nil]
49
52
  optional :password, String
@@ -85,6 +88,10 @@ module Telnyx
85
88
  optional :webhook_url, String
86
89
 
87
90
  # @!method initialize(id: nil, connection_id: nil, failover_url: nil, fqdn_outbound_authentication: nil, ip_authentication_method: nil, microsoft_teams_sbc: nil, password: nil, record_type: nil, txt_name: nil, txt_ttl: nil, txt_value: nil, user_name: nil, webhook_url: nil)
91
+ # Some parameter documentations has been truncated, see
92
+ # {Telnyx::Models::FqdnConnections::FqdnConnectionsFqdnAuthentication} for more
93
+ # details.
94
+ #
88
95
  # @param id [String] Identifies the resource.
89
96
  #
90
97
  # @param connection_id [String] The ID of the FQDN connection this authentication strategy belongs to.
@@ -97,7 +104,7 @@ module Telnyx
97
104
  #
98
105
  # @param microsoft_teams_sbc [Boolean] Whether the connection is a Microsoft Teams SBC.
99
106
  #
100
- # @param password [String] The password for authentication.
107
+ # @param password [String] The password for authentication. For primary accounts created on or after Septem
101
108
  #
102
109
  # @param record_type [String] Identifies the type of the resource.
103
110
  #
@@ -9,6 +9,13 @@ module Telnyx
9
9
  # @return [String, nil]
10
10
  optional :id, String
11
11
 
12
+ # @!attribute body
13
+ # WhatsApp message body. For message edits and revocations, inspect `type` and the
14
+ # corresponding `edit` or `revoke` object.
15
+ #
16
+ # @return [Telnyx::Models::MessagingInboundMessagePayload::Body, nil]
17
+ optional :body, -> { Telnyx::MessagingInboundMessagePayload::Body }
18
+
12
19
  # @!attribute cc
13
20
  #
14
21
  # @return [Array<Telnyx::Models::MessagingInboundMessagePayload::Cc>, nil]
@@ -142,12 +149,14 @@ module Telnyx
142
149
  optional :text, String
143
150
 
144
151
  # @!attribute to
152
+ # Receiving address. SMS and MMS webhooks use an array of recipients. WhatsApp
153
+ # webhooks use one E.164 phone number.
145
154
  #
146
- # @return [Array<Telnyx::Models::MessagingInboundMessagePayload::To>, nil]
147
- optional :to, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::MessagingInboundMessagePayload::To] }
155
+ # @return [Array<Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0>, String, nil]
156
+ optional :to, union: -> { Telnyx::MessagingInboundMessagePayload::To }
148
157
 
149
158
  # @!attribute type
150
- # The type of message. This value can be either 'sms' or 'mms'.
159
+ # The messaging channel used for the message.
151
160
  #
152
161
  # @return [Symbol, Telnyx::Models::MessagingInboundMessagePayload::Type, nil]
153
162
  optional :type, enum: -> { Telnyx::MessagingInboundMessagePayload::Type }
@@ -171,12 +180,14 @@ module Telnyx
171
180
  # @return [String, nil]
172
181
  optional :webhook_url, String, nil?: true
173
182
 
174
- # @!method initialize(id: nil, cc: nil, completed_at: nil, cost: nil, cost_breakdown: nil, direction: nil, encoding: nil, errors: nil, from: nil, media: nil, messaging_profile_id: nil, num_chars: nil, organization_id: nil, parts: nil, received_at: nil, record_type: nil, sent_at: nil, subject: nil, tags: nil, tcr_campaign_billable: nil, tcr_campaign_id: nil, tcr_campaign_registered: nil, text: nil, to: nil, type: nil, valid_until: nil, webhook_failover_url: nil, webhook_url: nil)
183
+ # @!method initialize(id: nil, body: nil, cc: nil, completed_at: nil, cost: nil, cost_breakdown: nil, direction: nil, encoding: nil, errors: nil, from: nil, media: nil, messaging_profile_id: nil, num_chars: nil, organization_id: nil, parts: nil, received_at: nil, record_type: nil, sent_at: nil, subject: nil, tags: nil, tcr_campaign_billable: nil, tcr_campaign_id: nil, tcr_campaign_registered: nil, text: nil, to: nil, type: nil, valid_until: nil, webhook_failover_url: nil, webhook_url: nil)
175
184
  # Some parameter documentations has been truncated, see
176
185
  # {Telnyx::Models::MessagingInboundMessagePayload} for more details.
177
186
  #
178
187
  # @param id [String] Identifies the type of resource.
179
188
  #
189
+ # @param body [Telnyx::Models::MessagingInboundMessagePayload::Body] WhatsApp message body. For message edits and revocations, inspect `type` and the
190
+ #
180
191
  # @param cc [Array<Telnyx::Models::MessagingInboundMessagePayload::Cc>]
181
192
  #
182
193
  # @param completed_at [Time, nil] Not used for inbound messages.
@@ -221,9 +232,9 @@ module Telnyx
221
232
  #
222
233
  # @param text [String] Message body (i.e., content) as a non-empty string.
223
234
  #
224
- # @param to [Array<Telnyx::Models::MessagingInboundMessagePayload::To>]
235
+ # @param to [Array<Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0>, String] Receiving address. SMS and MMS webhooks use an array of recipients. WhatsApp web
225
236
  #
226
- # @param type [Symbol, Telnyx::Models::MessagingInboundMessagePayload::Type] The type of message. This value can be either 'sms' or 'mms'.
237
+ # @param type [Symbol, Telnyx::Models::MessagingInboundMessagePayload::Type] The messaging channel used for the message.
227
238
  #
228
239
  # @param valid_until [Time, nil] Not used for inbound messages.
229
240
  #
@@ -231,6 +242,117 @@ module Telnyx
231
242
  #
232
243
  # @param webhook_url [String, nil] The URL where webhooks related to this message will be sent.
233
244
 
245
+ # @see Telnyx::Models::MessagingInboundMessagePayload#body
246
+ class Body < Telnyx::Internal::Type::BaseModel
247
+ # @!attribute id
248
+ # Telnyx identifier for this webhook message.
249
+ #
250
+ # @return [String, nil]
251
+ optional :id, String
252
+
253
+ # @!attribute edit
254
+ # Details for an edited WhatsApp message.
255
+ #
256
+ # @return [Telnyx::Models::MessagingInboundMessagePayload::Body::Edit, nil]
257
+ optional :edit, -> { Telnyx::MessagingInboundMessagePayload::Body::Edit }
258
+
259
+ # @!attribute foreign_id
260
+ # Meta WhatsApp message identifier for this webhook event.
261
+ #
262
+ # @return [String, nil]
263
+ optional :foreign_id, String
264
+
265
+ # @!attribute from
266
+ # WhatsApp sender in E.164 format.
267
+ #
268
+ # @return [String, nil]
269
+ optional :from, String
270
+
271
+ # @!attribute revoke
272
+ # Details for a revoked WhatsApp message.
273
+ #
274
+ # @return [Telnyx::Models::MessagingInboundMessagePayload::Body::Revoke, nil]
275
+ optional :revoke, -> { Telnyx::MessagingInboundMessagePayload::Body::Revoke }
276
+
277
+ # @!attribute timestamp
278
+ # Unix timestamp supplied by Meta.
279
+ #
280
+ # @return [String, nil]
281
+ optional :timestamp, String
282
+
283
+ # @!attribute type
284
+ # WhatsApp message body type. Edit and revoke events use `edit` and `revoke`,
285
+ # respectively.
286
+ #
287
+ # @return [String, nil]
288
+ optional :type, String
289
+
290
+ # @!method initialize(id: nil, edit: nil, foreign_id: nil, from: nil, revoke: nil, timestamp: nil, type: nil)
291
+ # Some parameter documentations has been truncated, see
292
+ # {Telnyx::Models::MessagingInboundMessagePayload::Body} for more details.
293
+ #
294
+ # WhatsApp message body. For message edits and revocations, inspect `type` and the
295
+ # corresponding `edit` or `revoke` object.
296
+ #
297
+ # @param id [String] Telnyx identifier for this webhook message.
298
+ #
299
+ # @param edit [Telnyx::Models::MessagingInboundMessagePayload::Body::Edit] Details for an edited WhatsApp message.
300
+ #
301
+ # @param foreign_id [String] Meta WhatsApp message identifier for this webhook event.
302
+ #
303
+ # @param from [String] WhatsApp sender in E.164 format.
304
+ #
305
+ # @param revoke [Telnyx::Models::MessagingInboundMessagePayload::Body::Revoke] Details for a revoked WhatsApp message.
306
+ #
307
+ # @param timestamp [String] Unix timestamp supplied by Meta.
308
+ #
309
+ # @param type [String] WhatsApp message body type. Edit and revoke events use `edit` and `revoke`, resp
310
+
311
+ # @see Telnyx::Models::MessagingInboundMessagePayload::Body#edit
312
+ class Edit < Telnyx::Internal::Type::BaseModel
313
+ # @!attribute message
314
+ # Replacement WhatsApp message content. Its shape depends on the message type.
315
+ #
316
+ # @return [Hash{Symbol=>Object}]
317
+ required :message, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
318
+
319
+ # @!attribute original_message_id
320
+ # Telnyx message ID when a mapping exists, otherwise the original Meta WhatsApp
321
+ # message ID. Treat this value as opaque.
322
+ #
323
+ # @return [String]
324
+ required :original_message_id, String
325
+
326
+ # @!method initialize(message:, original_message_id:)
327
+ # Some parameter documentations has been truncated, see
328
+ # {Telnyx::Models::MessagingInboundMessagePayload::Body::Edit} for more details.
329
+ #
330
+ # Details for an edited WhatsApp message.
331
+ #
332
+ # @param message [Hash{Symbol=>Object}] Replacement WhatsApp message content. Its shape depends on the message type.
333
+ #
334
+ # @param original_message_id [String] Telnyx message ID when a mapping exists, otherwise the original Meta WhatsApp me
335
+ end
336
+
337
+ # @see Telnyx::Models::MessagingInboundMessagePayload::Body#revoke
338
+ class Revoke < Telnyx::Internal::Type::BaseModel
339
+ # @!attribute original_message_id
340
+ # Telnyx message ID when a mapping exists, otherwise the original Meta WhatsApp
341
+ # message ID. Treat this value as opaque.
342
+ #
343
+ # @return [String]
344
+ required :original_message_id, String
345
+
346
+ # @!method initialize(original_message_id:)
347
+ # Some parameter documentations has been truncated, see
348
+ # {Telnyx::Models::MessagingInboundMessagePayload::Body::Revoke} for more details.
349
+ #
350
+ # Details for a revoked WhatsApp message.
351
+ #
352
+ # @param original_message_id [String] Telnyx message ID when a mapping exists, otherwise the original Meta WhatsApp me
353
+ end
354
+ end
355
+
234
356
  class Cc < Telnyx::Internal::Type::BaseModel
235
357
  # @!attribute carrier
236
358
  # The carrier of the receiver.
@@ -304,18 +426,18 @@ module Telnyx
304
426
  # The amount deducted from your account.
305
427
  #
306
428
  # @return [String, nil]
307
- optional :amount, String
429
+ optional :amount, String, nil?: true
308
430
 
309
431
  # @!attribute currency
310
432
  # The ISO 4217 currency identifier.
311
433
  #
312
434
  # @return [String, nil]
313
- optional :currency, String
435
+ optional :currency, String, nil?: true
314
436
 
315
437
  # @!method initialize(amount: nil, currency: nil)
316
- # @param amount [String] The amount deducted from your account.
438
+ # @param amount [String, nil] The amount deducted from your account.
317
439
  #
318
- # @param currency [String] The ISO 4217 currency identifier.
440
+ # @param currency [String, nil] The ISO 4217 currency identifier.
319
441
  end
320
442
 
321
443
  # @see Telnyx::Models::MessagingInboundMessagePayload#cost_breakdown
@@ -504,75 +626,95 @@ module Telnyx
504
626
  # @return [Array<Symbol>]
505
627
  end
506
628
 
507
- class To < Telnyx::Internal::Type::BaseModel
508
- # @!attribute carrier
509
- # The carrier of the receiver.
510
- #
511
- # @return [String, nil]
512
- optional :carrier, String
629
+ # Receiving address. SMS and MMS webhooks use an array of recipients. WhatsApp
630
+ # webhooks use one E.164 phone number.
631
+ #
632
+ # @see Telnyx::Models::MessagingInboundMessagePayload#to
633
+ module To
634
+ extend Telnyx::Internal::Type::Union
513
635
 
514
- # @!attribute line_type
515
- # The line-type of the receiver.
516
- #
517
- # @return [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::LineType, nil]
518
- optional :line_type, enum: -> { Telnyx::MessagingInboundMessagePayload::To::LineType }
636
+ variant -> { Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0Array }
519
637
 
520
- # @!attribute phone_number
521
- # Receiving address (+E.164 formatted phone number or short code).
522
- #
523
- # @return [String, nil]
524
- optional :phone_number, String
638
+ # WhatsApp receiving address in E.164 format.
639
+ variant String
525
640
 
526
- # @!attribute status
527
- #
528
- # @return [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::Status, nil]
529
- optional :status, enum: -> { Telnyx::MessagingInboundMessagePayload::To::Status }
641
+ class UnionMember0 < Telnyx::Internal::Type::BaseModel
642
+ # @!attribute carrier
643
+ # The carrier of the receiver.
644
+ #
645
+ # @return [String, nil]
646
+ optional :carrier, String
530
647
 
531
- # @!method initialize(carrier: nil, line_type: nil, phone_number: nil, status: nil)
532
- # @param carrier [String] The carrier of the receiver.
533
- #
534
- # @param line_type [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::LineType] The line-type of the receiver.
535
- #
536
- # @param phone_number [String] Receiving address (+E.164 formatted phone number or short code).
537
- #
538
- # @param status [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::Status]
648
+ # @!attribute line_type
649
+ # The line-type of the receiver.
650
+ #
651
+ # @return [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0::LineType, nil]
652
+ optional :line_type, enum: -> { Telnyx::MessagingInboundMessagePayload::To::UnionMember0::LineType }
539
653
 
540
- # The line-type of the receiver.
541
- #
542
- # @see Telnyx::Models::MessagingInboundMessagePayload::To#line_type
543
- module LineType
544
- extend Telnyx::Internal::Type::Enum
654
+ # @!attribute phone_number
655
+ # Receiving address (+E.164 formatted phone number or short code).
656
+ #
657
+ # @return [String, nil]
658
+ optional :phone_number, String
545
659
 
546
- WIRELINE = :Wireline
547
- WIRELESS = :Wireless
548
- VO_WI_FI = :VoWiFi
549
- VO_IP = :VoIP
550
- PRE_PAID_WIRELESS = :"Pre-Paid Wireless"
551
- EMPTY = :""
660
+ # @!attribute status
661
+ #
662
+ # @return [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0::Status, nil]
663
+ optional :status, enum: -> { Telnyx::MessagingInboundMessagePayload::To::UnionMember0::Status }
552
664
 
553
- # @!method self.values
554
- # @return [Array<Symbol>]
555
- end
665
+ # @!method initialize(carrier: nil, line_type: nil, phone_number: nil, status: nil)
666
+ # @param carrier [String] The carrier of the receiver.
667
+ #
668
+ # @param line_type [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0::LineType] The line-type of the receiver.
669
+ #
670
+ # @param phone_number [String] Receiving address (+E.164 formatted phone number or short code).
671
+ #
672
+ # @param status [Symbol, Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0::Status]
556
673
 
557
- # @see Telnyx::Models::MessagingInboundMessagePayload::To#status
558
- module Status
559
- extend Telnyx::Internal::Type::Enum
674
+ # The line-type of the receiver.
675
+ #
676
+ # @see Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0#line_type
677
+ module LineType
678
+ extend Telnyx::Internal::Type::Enum
679
+
680
+ WIRELINE = :Wireline
681
+ WIRELESS = :Wireless
682
+ VO_WI_FI = :VoWiFi
683
+ VO_IP = :VoIP
684
+ PRE_PAID_WIRELESS = :"Pre-Paid Wireless"
685
+ EMPTY = :""
686
+
687
+ # @!method self.values
688
+ # @return [Array<Symbol>]
689
+ end
690
+
691
+ # @see Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0#status
692
+ module Status
693
+ extend Telnyx::Internal::Type::Enum
694
+
695
+ QUEUED = :queued
696
+ SENDING = :sending
697
+ SENT = :sent
698
+ DELIVERED = :delivered
699
+ SENDING_FAILED = :sending_failed
700
+ DELIVERY_FAILED = :delivery_failed
701
+ DELIVERY_UNCONFIRMED = :delivery_unconfirmed
702
+ WEBHOOK_DELIVERED = :webhook_delivered
703
+
704
+ # @!method self.values
705
+ # @return [Array<Symbol>]
706
+ end
707
+ end
560
708
 
561
- QUEUED = :queued
562
- SENDING = :sending
563
- SENT = :sent
564
- DELIVERED = :delivered
565
- SENDING_FAILED = :sending_failed
566
- DELIVERY_FAILED = :delivery_failed
567
- DELIVERY_UNCONFIRMED = :delivery_unconfirmed
568
- WEBHOOK_DELIVERED = :webhook_delivered
709
+ # @!method self.variants
710
+ # @return [Array(Array<Telnyx::Models::MessagingInboundMessagePayload::To::UnionMember0>, String)]
569
711
 
570
- # @!method self.values
571
- # @return [Array<Symbol>]
572
- end
712
+ # @type [Telnyx::Internal::Type::Converter]
713
+ UnionMember0Array =
714
+ Telnyx::Internal::Type::ArrayOf[-> { Telnyx::MessagingInboundMessagePayload::To::UnionMember0 }]
573
715
  end
574
716
 
575
- # The type of message. This value can be either 'sms' or 'mms'.
717
+ # The messaging channel used for the message.
576
718
  #
577
719
  # @see Telnyx::Models::MessagingInboundMessagePayload#type
578
720
  module Type
@@ -580,6 +722,7 @@ module Telnyx
580
722
 
581
723
  SMS = :SMS
582
724
  MMS = :MMS
725
+ WHATSAPP = :WHATSAPP
583
726
 
584
727
  # @!method self.values
585
728
  # @return [Array<Symbol>]