telnyx 5.150.0 → 5.152.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 (186) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -531
  3. data/README.md +10 -1
  4. data/lib/telnyx/models/advanced_order_create_params.rb +1 -86
  5. data/lib/telnyx/models/advanced_order_update_requirement_group_params.rb +1 -88
  6. data/lib/telnyx/models/ai_retrieve_conversation_histories_params.rb +22 -48
  7. data/lib/telnyx/models/ai_retrieve_conversation_histories_response.rb +10 -50
  8. data/lib/telnyx/models/calls/deepgram_nova2_config.rb +23 -1
  9. data/lib/telnyx/models/calls/deepgram_nova3_config.rb +22 -1
  10. data/lib/telnyx/models/calls/transcription_start_request.rb +5 -3
  11. data/lib/telnyx/models/dir/email_verification_status_wrapped.rb +82 -0
  12. data/lib/telnyx/models/dir/reference.rb +125 -0
  13. data/lib/telnyx/models/dir/reference_create_params.rb +43 -0
  14. data/lib/telnyx/models/dir/reference_input.rb +74 -0
  15. data/lib/telnyx/models/dir/reference_list.rb +18 -0
  16. data/lib/telnyx/models/dir/{phone_number_delete_all_params.rb → reference_list_params.rb} +3 -9
  17. data/lib/telnyx/models/dir/reference_update_params.rb +103 -0
  18. data/lib/telnyx/models/dir/reference_update_response.rb +23 -0
  19. data/lib/telnyx/models/dir/verify_email_confirm_params.rb +31 -0
  20. data/lib/telnyx/models/dir/verify_email_create_params.rb +22 -0
  21. data/lib/telnyx/models/dir/verify_email_list_params.rb +22 -0
  22. data/lib/telnyx/models/dir_update_infringement_params.rb +6 -2
  23. data/lib/telnyx/models/enterprises/dir_create_params.rb +10 -10
  24. data/lib/telnyx/models/public_internet_gateway.rb +24 -1
  25. data/lib/telnyx/models/storage/kv_create_params.rb +24 -0
  26. data/lib/telnyx/models/storage/kv_delete_params.rb +22 -0
  27. data/lib/telnyx/models/storage/kv_list_params.rb +32 -0
  28. data/lib/telnyx/models/storage/kv_namespace.rb +75 -0
  29. data/lib/telnyx/models/storage/kv_namespace_response_wrapper.rb +18 -0
  30. data/lib/telnyx/models/storage/kv_retrieve_params.rb +22 -0
  31. data/lib/telnyx/models/storage/kvs/key_delete_params.rb +30 -0
  32. data/lib/telnyx/models/storage/kvs/key_list_params.rb +49 -0
  33. data/lib/telnyx/models/storage/kvs/key_list_response.rb +82 -0
  34. data/lib/telnyx/models/storage/kvs/key_retrieve_params.rb +30 -0
  35. data/lib/telnyx/models/storage/kvs/key_update_params.rb +53 -0
  36. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +9 -69
  37. data/lib/telnyx/models/virtual_cross_connect_create.rb +176 -2
  38. data/lib/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rb +31 -0
  39. data/lib/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rb +54 -0
  40. data/lib/telnyx/models/wireguard_interface.rb +24 -1
  41. data/lib/telnyx/resources/ai.rb +20 -21
  42. data/lib/telnyx/resources/calls/actions.rb +1 -1
  43. data/lib/telnyx/resources/dir/references.rb +139 -0
  44. data/lib/telnyx/resources/dir/verify_email.rb +91 -0
  45. data/lib/telnyx/resources/dir.rb +17 -1
  46. data/lib/telnyx/resources/documents.rb +1 -1
  47. data/lib/telnyx/resources/enterprises/dir.rb +3 -3
  48. data/lib/telnyx/resources/storage/kvs/keys.rb +154 -0
  49. data/lib/telnyx/resources/storage/kvs.rb +115 -0
  50. data/lib/telnyx/resources/storage.rb +5 -0
  51. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +27 -0
  52. data/lib/telnyx/version.rb +1 -1
  53. data/lib/telnyx.rb +29 -2
  54. data/rbi/telnyx/models/advanced_order_create_params.rbi +4 -198
  55. data/rbi/telnyx/models/advanced_order_update_requirement_group_params.rbi +2 -219
  56. data/rbi/telnyx/models/ai/assistant_get_texml_response.rbi +1 -1
  57. data/rbi/telnyx/models/ai/assistants/instruction_enhance_response.rbi +1 -1
  58. data/rbi/telnyx/models/ai_retrieve_conversation_histories_params.rbi +30 -97
  59. data/rbi/telnyx/models/ai_retrieve_conversation_histories_response.rbi +10 -85
  60. data/rbi/telnyx/models/calls/deepgram_nova2_config.rbi +34 -0
  61. data/rbi/telnyx/models/calls/deepgram_nova3_config.rbi +32 -0
  62. data/rbi/telnyx/models/calls/transcription_start_request.rbi +5 -0
  63. data/rbi/telnyx/models/dir/email_verification_status_wrapped.rbi +184 -0
  64. data/rbi/telnyx/models/dir/reference.rbi +162 -0
  65. data/rbi/telnyx/models/dir/reference_create_params.rbi +66 -0
  66. data/rbi/telnyx/models/dir/reference_input.rbi +93 -0
  67. data/rbi/telnyx/models/dir/reference_list.rbi +29 -0
  68. data/rbi/telnyx/models/dir/reference_list_params.rbi +37 -0
  69. data/rbi/telnyx/models/dir/reference_update_params.rbi +154 -0
  70. data/rbi/telnyx/models/dir/reference_update_response.rbi +39 -0
  71. data/rbi/telnyx/models/dir/{phone_number_delete_all_params.rbi → verify_email_confirm_params.rbi} +13 -7
  72. data/rbi/telnyx/models/dir/verify_email_create_params.rbi +40 -0
  73. data/rbi/telnyx/models/dir/verify_email_list_params.rbi +37 -0
  74. data/rbi/telnyx/models/dir_update_infringement_params.rbi +4 -2
  75. data/rbi/telnyx/models/enterprises/dir_create_params.rbi +10 -13
  76. data/rbi/telnyx/models/messaging_profiles/autoresp_config_delete_response.rbi +1 -1
  77. data/rbi/telnyx/models/public_internet_gateway.rbi +45 -3
  78. data/rbi/telnyx/models/storage/kv_create_params.rbi +42 -0
  79. data/rbi/telnyx/models/storage/kv_delete_params.rbi +37 -0
  80. data/rbi/telnyx/models/storage/kv_list_params.rbi +59 -0
  81. data/rbi/telnyx/models/storage/kv_namespace.rbi +131 -0
  82. data/rbi/telnyx/models/storage/kv_namespace_response_wrapper.rbi +35 -0
  83. data/rbi/telnyx/models/storage/kv_retrieve_params.rbi +37 -0
  84. data/rbi/telnyx/models/storage/kvs/key_delete_params.rbi +50 -0
  85. data/rbi/telnyx/models/storage/kvs/key_list_params.rbi +81 -0
  86. data/rbi/telnyx/models/storage/kvs/key_list_response.rbi +179 -0
  87. data/rbi/telnyx/models/storage/kvs/key_retrieve_params.rbi +50 -0
  88. data/rbi/telnyx/models/storage/kvs/key_update_params.rbi +77 -0
  89. data/rbi/telnyx/models/sub_number_orders_report_download_response.rbi +1 -1
  90. data/rbi/telnyx/models/telephony_credential_create_token_response.rbi +1 -1
  91. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +12 -189
  92. data/rbi/telnyx/models/virtual_cross_connect_create.rbi +265 -7
  93. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rbi +54 -0
  94. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbi +125 -0
  95. data/rbi/telnyx/models/wireguard_interface.rbi +48 -3
  96. data/rbi/telnyx/models/wireguard_peer_retrieve_config_response.rbi +1 -1
  97. data/rbi/telnyx/models.rbi +0 -7
  98. data/rbi/telnyx/resources/ai.rbi +21 -28
  99. data/rbi/telnyx/resources/calls/actions.rbi +1 -0
  100. data/rbi/telnyx/resources/dir/references.rbi +114 -0
  101. data/rbi/telnyx/resources/dir/verify_email.rbi +70 -0
  102. data/rbi/telnyx/resources/dir.rbi +13 -1
  103. data/rbi/telnyx/resources/enterprises/dir.rbi +4 -4
  104. data/rbi/telnyx/resources/storage/kvs/keys.rbi +115 -0
  105. data/rbi/telnyx/resources/storage/kvs.rbi +87 -0
  106. data/rbi/telnyx/resources/storage.rbi +4 -0
  107. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +21 -0
  108. data/sig/telnyx/models/advanced_order_create_params.rbs +3 -99
  109. data/sig/telnyx/models/advanced_order_update_requirement_group_params.rbs +3 -94
  110. data/sig/telnyx/models/ai_retrieve_conversation_histories_params.rbs +15 -34
  111. data/sig/telnyx/models/ai_retrieve_conversation_histories_response.rbs +0 -24
  112. data/sig/telnyx/models/calls/deepgram_nova2_config.rbs +14 -0
  113. data/sig/telnyx/models/calls/deepgram_nova3_config.rbs +14 -0
  114. data/sig/telnyx/models/calls/transcription_start_request.rbs +1 -0
  115. data/sig/telnyx/models/dir/email_verification_status_wrapped.rbs +69 -0
  116. data/sig/telnyx/models/dir/reference.rbs +88 -0
  117. data/sig/telnyx/models/dir/reference_create_params.rbs +38 -0
  118. data/sig/telnyx/models/dir/reference_input.rbs +52 -0
  119. data/sig/telnyx/models/dir/reference_list.rbs +15 -0
  120. data/sig/telnyx/models/dir/reference_list_params.rbs +25 -0
  121. data/sig/telnyx/models/dir/reference_update_params.rbs +92 -0
  122. data/sig/telnyx/models/dir/reference_update_response.rbs +15 -0
  123. data/sig/telnyx/models/dir/{phone_number_delete_all_params.rbs → verify_email_confirm_params.rbs} +6 -6
  124. data/sig/telnyx/models/dir/verify_email_create_params.rbs +25 -0
  125. data/sig/telnyx/models/dir/verify_email_list_params.rbs +25 -0
  126. data/sig/telnyx/models/enterprises/dir_create_params.rbs +5 -7
  127. data/sig/telnyx/models/public_internet_gateway.rbs +32 -3
  128. data/sig/telnyx/models/storage/kv_create_params.rbs +25 -0
  129. data/sig/telnyx/models/storage/kv_delete_params.rbs +22 -0
  130. data/sig/telnyx/models/storage/kv_list_params.rbs +34 -0
  131. data/sig/telnyx/models/storage/kv_namespace.rbs +80 -0
  132. data/sig/telnyx/models/storage/kv_namespace_response_wrapper.rbs +20 -0
  133. data/sig/telnyx/models/storage/kv_retrieve_params.rbs +22 -0
  134. data/sig/telnyx/models/storage/kvs/key_delete_params.rbs +32 -0
  135. data/sig/telnyx/models/storage/kvs/key_list_params.rbs +46 -0
  136. data/sig/telnyx/models/storage/kvs/key_list_response.rbs +88 -0
  137. data/sig/telnyx/models/{enterprises/reputation/loa_patch_all_params.rbs → storage/kvs/key_retrieve_params.rbs} +11 -11
  138. data/sig/telnyx/models/storage/kvs/key_update_params.rbs +47 -0
  139. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +15 -63
  140. data/sig/telnyx/models/virtual_cross_connect_create.rbs +138 -7
  141. data/sig/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_params.rbs +30 -0
  142. data/sig/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbs +66 -0
  143. data/sig/telnyx/models/wireguard_interface.rbs +34 -3
  144. data/sig/telnyx/models.rbs +0 -1
  145. data/sig/telnyx/resources/ai.rbs +2 -3
  146. data/sig/telnyx/resources/dir/references.rbs +35 -0
  147. data/sig/telnyx/resources/dir/verify_email.rbs +25 -0
  148. data/sig/telnyx/resources/dir.rbs +4 -0
  149. data/sig/telnyx/resources/enterprises/dir.rbs +1 -1
  150. data/sig/telnyx/resources/storage/kvs/keys.rbs +39 -0
  151. data/sig/telnyx/resources/storage/kvs.rbs +32 -0
  152. data/sig/telnyx/resources/storage.rbs +2 -0
  153. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +6 -0
  154. metadata +86 -38
  155. data/lib/telnyx/models/dir/phone_number_create_params.rb +0 -47
  156. data/lib/telnyx/models/dir/phone_number_create_response.rb +0 -32
  157. data/lib/telnyx/models/dir/phone_number_delete_all_response.rb +0 -103
  158. data/lib/telnyx/models/dir_loa_params.rb +0 -79
  159. data/lib/telnyx/models/dir_retrieve_document_types_params.rb +0 -14
  160. data/lib/telnyx/models/dir_retrieve_document_types_response.rb +0 -51
  161. data/lib/telnyx/models/dir_retrieve_infringement_claims_params.rb +0 -40
  162. data/lib/telnyx/models/dir_retrieve_infringement_claims_response.rb +0 -30
  163. data/lib/telnyx/models/dir_update_infringement_update_params.rb +0 -134
  164. data/lib/telnyx/models/enterprises/reputation/loa_create_params.rb +0 -146
  165. data/lib/telnyx/models/enterprises/reputation/loa_patch_all_params.rb +0 -38
  166. data/rbi/telnyx/models/dir/phone_number_create_params.rbi +0 -72
  167. data/rbi/telnyx/models/dir/phone_number_create_response.rbi +0 -48
  168. data/rbi/telnyx/models/dir/phone_number_delete_all_response.rbi +0 -206
  169. data/rbi/telnyx/models/dir_loa_params.rbi +0 -120
  170. data/rbi/telnyx/models/dir_retrieve_document_types_params.rbi +0 -30
  171. data/rbi/telnyx/models/dir_retrieve_document_types_response.rbi +0 -103
  172. data/rbi/telnyx/models/dir_retrieve_infringement_claims_params.rbi +0 -66
  173. data/rbi/telnyx/models/dir_retrieve_infringement_claims_response.rbi +0 -55
  174. data/rbi/telnyx/models/dir_update_infringement_update_params.rbi +0 -256
  175. data/rbi/telnyx/models/enterprises/reputation/loa_create_params.rbi +0 -238
  176. data/rbi/telnyx/models/enterprises/reputation/loa_patch_all_params.rbi +0 -60
  177. data/sig/telnyx/models/dir/phone_number_create_params.rbs +0 -38
  178. data/sig/telnyx/models/dir/phone_number_create_response.rbs +0 -16
  179. data/sig/telnyx/models/dir/phone_number_delete_all_response.rbs +0 -86
  180. data/sig/telnyx/models/dir_loa_params.rbs +0 -61
  181. data/sig/telnyx/models/dir_retrieve_document_types_params.rbs +0 -15
  182. data/sig/telnyx/models/dir_retrieve_document_types_response.rbs +0 -41
  183. data/sig/telnyx/models/dir_retrieve_infringement_claims_params.rbs +0 -36
  184. data/sig/telnyx/models/dir_retrieve_infringement_claims_response.rbs +0 -25
  185. data/sig/telnyx/models/dir_update_infringement_update_params.rbs +0 -111
  186. data/sig/telnyx/models/enterprises/reputation/loa_create_params.rbs +0 -135
@@ -8,11 +8,272 @@ module Telnyx
8
8
  T.any(Telnyx::VirtualCrossConnectCreate, Telnyx::Internal::AnyHash)
9
9
  end
10
10
 
11
- sig { returns(T.attached_class) }
12
- def self.new
11
+ # A user specified name for the interface.
12
+ sig { returns(T.nilable(String)) }
13
+ attr_reader :name
14
+
15
+ sig { params(name: String).void }
16
+ attr_writer :name
17
+
18
+ # The id of the network associated with the interface.
19
+ sig { returns(T.nilable(String)) }
20
+ attr_reader :network_id
21
+
22
+ sig { params(network_id: String).void }
23
+ attr_writer :network_id
24
+
25
+ # The region the interface should be deployed to.
26
+ sig { returns(String) }
27
+ attr_accessor :region_code
28
+
29
+ # The desired throughput in Megabits per Second (Mbps) for your Virtual Cross
30
+ # Connect.<br /><br />The available bandwidths can be found using the
31
+ # /virtual_cross_connect_regions endpoint.
32
+ sig { returns(T.nilable(Float)) }
33
+ attr_reader :bandwidth_mbps
34
+
35
+ sig { params(bandwidth_mbps: Float).void }
36
+ attr_writer :bandwidth_mbps
37
+
38
+ # The Border Gateway Protocol (BGP) Autonomous System Number (ASN). If null, value
39
+ # will be assigned by Telnyx.
40
+ sig { returns(T.nilable(Float)) }
41
+ attr_reader :bgp_asn
42
+
43
+ sig { params(bgp_asn: Float).void }
44
+ attr_writer :bgp_asn
45
+
46
+ # The Virtual Private Cloud with which you would like to establish a cross
47
+ # connect.
48
+ sig do
49
+ returns(
50
+ T.nilable(Telnyx::VirtualCrossConnectCreate::CloudProvider::OrSymbol)
51
+ )
13
52
  end
53
+ attr_reader :cloud_provider
54
+
55
+ sig do
56
+ params(
57
+ cloud_provider:
58
+ Telnyx::VirtualCrossConnectCreate::CloudProvider::OrSymbol
59
+ ).void
60
+ end
61
+ attr_writer :cloud_provider
62
+
63
+ # The region where your Virtual Private Cloud hosts are located.<br /><br />The
64
+ # available regions can be found using the /virtual_cross_connect_regions
65
+ # endpoint.
66
+ sig { returns(T.nilable(String)) }
67
+ attr_reader :cloud_provider_region
68
+
69
+ sig { params(cloud_provider_region: String).void }
70
+ attr_writer :cloud_provider_region
71
+
72
+ # The authentication key for BGP peer configuration.
73
+ sig { returns(T.nilable(String)) }
74
+ attr_reader :primary_bgp_key
75
+
76
+ sig { params(primary_bgp_key: String).void }
77
+ attr_writer :primary_bgp_key
78
+
79
+ # The identifier for your Virtual Private Cloud. The number will be different
80
+ # based upon your Cloud provider.
81
+ sig { returns(T.nilable(String)) }
82
+ attr_reader :primary_cloud_account_id
83
+
84
+ sig { params(primary_cloud_account_id: String).void }
85
+ attr_writer :primary_cloud_account_id
86
+
87
+ # The IP address assigned for your side of the Virtual Cross
88
+ # Connect.<br /><br />If none is provided, one will be generated for
89
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
90
+ # of your assigned IP once the connection has been accepted.
91
+ sig { returns(T.nilable(String)) }
92
+ attr_reader :primary_cloud_ip
93
+
94
+ sig { params(primary_cloud_ip: String).void }
95
+ attr_writer :primary_cloud_ip
14
96
 
15
- sig { override.returns({}) }
97
+ # The IP address assigned to the Telnyx side of the Virtual Cross
98
+ # Connect.<br /><br />If none is provided, one will be generated for
99
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
100
+ # of your assigned IP once the connection has been accepted.
101
+ sig { returns(T.nilable(String)) }
102
+ attr_reader :primary_telnyx_ip
103
+
104
+ sig { params(primary_telnyx_ip: String).void }
105
+ attr_writer :primary_telnyx_ip
106
+
107
+ # The authentication key for BGP peer configuration.
108
+ sig { returns(T.nilable(String)) }
109
+ attr_reader :secondary_bgp_key
110
+
111
+ sig { params(secondary_bgp_key: String).void }
112
+ attr_writer :secondary_bgp_key
113
+
114
+ # The identifier for your Virtual Private Cloud. The number will be different
115
+ # based upon your Cloud provider.<br /><br />This attribute is only necessary for
116
+ # GCE.
117
+ sig { returns(T.nilable(String)) }
118
+ attr_reader :secondary_cloud_account_id
119
+
120
+ sig { params(secondary_cloud_account_id: String).void }
121
+ attr_writer :secondary_cloud_account_id
122
+
123
+ # The IP address assigned for your side of the Virtual Cross
124
+ # Connect.<br /><br />If none is provided, one will be generated for
125
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
126
+ # of your assigned IP once the connection has been accepted.
127
+ sig { returns(T.nilable(String)) }
128
+ attr_reader :secondary_cloud_ip
129
+
130
+ sig { params(secondary_cloud_ip: String).void }
131
+ attr_writer :secondary_cloud_ip
132
+
133
+ # The IP address assigned to the Telnyx side of the Virtual Cross
134
+ # Connect.<br /><br />If none is provided, one will be generated for
135
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
136
+ # of your assigned IP once the connection has been accepted.
137
+ sig { returns(T.nilable(String)) }
138
+ attr_reader :secondary_telnyx_ip
139
+
140
+ sig { params(secondary_telnyx_ip: String).void }
141
+ attr_writer :secondary_telnyx_ip
142
+
143
+ # The current status of the interface deployment.
144
+ sig { returns(T.nilable(Telnyx::InterfaceStatus::OrSymbol)) }
145
+ attr_reader :status
146
+
147
+ sig { params(status: Telnyx::InterfaceStatus::OrSymbol).void }
148
+ attr_writer :status
149
+
150
+ # Indicates whether the primary circuit is enabled. Setting this to `false` will
151
+ # disable the circuit.
152
+ sig { returns(T.nilable(T::Boolean)) }
153
+ attr_reader :primary_enabled
154
+
155
+ sig { params(primary_enabled: T::Boolean).void }
156
+ attr_writer :primary_enabled
157
+
158
+ # Indicates whether the secondary circuit is enabled. Setting this to `false` will
159
+ # disable the circuit.
160
+ sig { returns(T.nilable(T::Boolean)) }
161
+ attr_reader :secondary_enabled
162
+
163
+ sig { params(secondary_enabled: T::Boolean).void }
164
+ attr_writer :secondary_enabled
165
+
166
+ sig do
167
+ params(
168
+ region_code: String,
169
+ name: String,
170
+ network_id: String,
171
+ status: Telnyx::InterfaceStatus::OrSymbol,
172
+ bandwidth_mbps: Float,
173
+ bgp_asn: Float,
174
+ cloud_provider:
175
+ Telnyx::VirtualCrossConnectCreate::CloudProvider::OrSymbol,
176
+ cloud_provider_region: String,
177
+ primary_bgp_key: String,
178
+ primary_cloud_account_id: String,
179
+ primary_cloud_ip: String,
180
+ primary_enabled: T::Boolean,
181
+ primary_telnyx_ip: String,
182
+ secondary_bgp_key: String,
183
+ secondary_cloud_account_id: String,
184
+ secondary_cloud_ip: String,
185
+ secondary_enabled: T::Boolean,
186
+ secondary_telnyx_ip: String
187
+ ).returns(T.attached_class)
188
+ end
189
+ def self.new(
190
+ # The region the interface should be deployed to.
191
+ region_code:,
192
+ # A user specified name for the interface.
193
+ name: nil,
194
+ # The id of the network associated with the interface.
195
+ network_id: nil,
196
+ # The current status of the interface deployment.
197
+ status: nil,
198
+ # The desired throughput in Megabits per Second (Mbps) for your Virtual Cross
199
+ # Connect.<br /><br />The available bandwidths can be found using the
200
+ # /virtual_cross_connect_regions endpoint.
201
+ bandwidth_mbps: nil,
202
+ # The Border Gateway Protocol (BGP) Autonomous System Number (ASN). If null, value
203
+ # will be assigned by Telnyx.
204
+ bgp_asn: nil,
205
+ # The Virtual Private Cloud with which you would like to establish a cross
206
+ # connect.
207
+ cloud_provider: nil,
208
+ # The region where your Virtual Private Cloud hosts are located.<br /><br />The
209
+ # available regions can be found using the /virtual_cross_connect_regions
210
+ # endpoint.
211
+ cloud_provider_region: nil,
212
+ # The authentication key for BGP peer configuration.
213
+ primary_bgp_key: nil,
214
+ # The identifier for your Virtual Private Cloud. The number will be different
215
+ # based upon your Cloud provider.
216
+ primary_cloud_account_id: nil,
217
+ # The IP address assigned for your side of the Virtual Cross
218
+ # Connect.<br /><br />If none is provided, one will be generated for
219
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
220
+ # of your assigned IP once the connection has been accepted.
221
+ primary_cloud_ip: nil,
222
+ # Indicates whether the primary circuit is enabled. Setting this to `false` will
223
+ # disable the circuit.
224
+ primary_enabled: nil,
225
+ # The IP address assigned to the Telnyx side of the Virtual Cross
226
+ # Connect.<br /><br />If none is provided, one will be generated for
227
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
228
+ # of your assigned IP once the connection has been accepted.
229
+ primary_telnyx_ip: nil,
230
+ # The authentication key for BGP peer configuration.
231
+ secondary_bgp_key: nil,
232
+ # The identifier for your Virtual Private Cloud. The number will be different
233
+ # based upon your Cloud provider.<br /><br />This attribute is only necessary for
234
+ # GCE.
235
+ secondary_cloud_account_id: nil,
236
+ # The IP address assigned for your side of the Virtual Cross
237
+ # Connect.<br /><br />If none is provided, one will be generated for
238
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
239
+ # of your assigned IP once the connection has been accepted.
240
+ secondary_cloud_ip: nil,
241
+ # Indicates whether the secondary circuit is enabled. Setting this to `false` will
242
+ # disable the circuit.
243
+ secondary_enabled: nil,
244
+ # The IP address assigned to the Telnyx side of the Virtual Cross
245
+ # Connect.<br /><br />If none is provided, one will be generated for
246
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
247
+ # of your assigned IP once the connection has been accepted.
248
+ secondary_telnyx_ip: nil
249
+ )
250
+ end
251
+
252
+ sig do
253
+ override.returns(
254
+ {
255
+ name: String,
256
+ network_id: String,
257
+ status: Telnyx::InterfaceStatus::OrSymbol,
258
+ region_code: String,
259
+ bandwidth_mbps: Float,
260
+ bgp_asn: Float,
261
+ cloud_provider:
262
+ Telnyx::VirtualCrossConnectCreate::CloudProvider::OrSymbol,
263
+ cloud_provider_region: String,
264
+ primary_bgp_key: String,
265
+ primary_cloud_account_id: String,
266
+ primary_cloud_ip: String,
267
+ primary_enabled: T::Boolean,
268
+ primary_telnyx_ip: String,
269
+ secondary_bgp_key: String,
270
+ secondary_cloud_account_id: String,
271
+ secondary_cloud_ip: String,
272
+ secondary_enabled: T::Boolean,
273
+ secondary_telnyx_ip: String
274
+ }
275
+ )
276
+ end
16
277
  def to_hash
17
278
  end
18
279
 
@@ -23,10 +284,7 @@ module Telnyx
23
284
 
24
285
  TaggedSymbol =
25
286
  T.type_alias do
26
- T.all(
27
- Symbol,
28
- Telnyx::VirtualCrossConnectCreate::CloudProvider
29
- )
287
+ T.all(Symbol, Telnyx::VirtualCrossConnectCreate::CloudProvider)
30
288
  end
31
289
  OrSymbol = T.type_alias { T.any(Symbol, String) }
32
290
 
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Whatsapp
6
+ class PhoneNumberRetrieveConversationWindowParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Telnyx::Whatsapp::PhoneNumberRetrieveConversationWindowParams,
14
+ Telnyx::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :phone_number
20
+
21
+ # Destination phone number in E.164 format
22
+ sig { returns(String) }
23
+ attr_accessor :destination_number
24
+
25
+ sig do
26
+ params(
27
+ phone_number: String,
28
+ destination_number: String,
29
+ request_options: Telnyx::RequestOptions::OrHash
30
+ ).returns(T.attached_class)
31
+ end
32
+ def self.new(
33
+ phone_number:,
34
+ # Destination phone number in E.164 format
35
+ destination_number:,
36
+ request_options: {}
37
+ )
38
+ end
39
+
40
+ sig do
41
+ override.returns(
42
+ {
43
+ phone_number: String,
44
+ destination_number: String,
45
+ request_options: Telnyx::RequestOptions
46
+ }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,125 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Whatsapp
6
+ class PhoneNumberRetrieveConversationWindowResponse < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ T.nilable(
18
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data
19
+ )
20
+ )
21
+ end
22
+ attr_reader :data
23
+
24
+ sig do
25
+ params(
26
+ data:
27
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data::OrHash
28
+ ).void
29
+ end
30
+ attr_writer :data
31
+
32
+ sig do
33
+ params(
34
+ data:
35
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data::OrHash
36
+ ).returns(T.attached_class)
37
+ end
38
+ def self.new(data: nil)
39
+ end
40
+
41
+ sig do
42
+ override.returns(
43
+ {
44
+ data:
45
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data
46
+ }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+
52
+ class Data < Telnyx::Internal::Type::BaseModel
53
+ OrHash =
54
+ T.type_alias do
55
+ T.any(
56
+ Telnyx::Models::Whatsapp::PhoneNumberRetrieveConversationWindowResponse::Data,
57
+ Telnyx::Internal::AnyHash
58
+ )
59
+ end
60
+
61
+ # Timestamp of the last inbound message that opened the window
62
+ sig { returns(T.nilable(Time)) }
63
+ attr_reader :last_user_message_at
64
+
65
+ sig { params(last_user_message_at: Time).void }
66
+ attr_writer :last_user_message_at
67
+
68
+ # Whether the 24-hour conversation window is currently open
69
+ sig { returns(T.nilable(T::Boolean)) }
70
+ attr_reader :window_active
71
+
72
+ sig { params(window_active: T::Boolean).void }
73
+ attr_writer :window_active
74
+
75
+ # When the window closes. Null if no active window.
76
+ sig { returns(T.nilable(Time)) }
77
+ attr_reader :window_expires_at
78
+
79
+ sig { params(window_expires_at: Time).void }
80
+ attr_writer :window_expires_at
81
+
82
+ # Window type. Currently always 24h when present.
83
+ sig { returns(T.nilable(String)) }
84
+ attr_reader :window_type
85
+
86
+ sig { params(window_type: String).void }
87
+ attr_writer :window_type
88
+
89
+ sig do
90
+ params(
91
+ last_user_message_at: Time,
92
+ window_active: T::Boolean,
93
+ window_expires_at: Time,
94
+ window_type: String
95
+ ).returns(T.attached_class)
96
+ end
97
+ def self.new(
98
+ # Timestamp of the last inbound message that opened the window
99
+ last_user_message_at: nil,
100
+ # Whether the 24-hour conversation window is currently open
101
+ window_active: nil,
102
+ # When the window closes. Null if no active window.
103
+ window_expires_at: nil,
104
+ # Window type. Currently always 24h when present.
105
+ window_type: nil
106
+ )
107
+ end
108
+
109
+ sig do
110
+ override.returns(
111
+ {
112
+ last_user_message_at: Time,
113
+ window_active: T::Boolean,
114
+ window_expires_at: Time,
115
+ window_type: String
116
+ }
117
+ )
118
+ end
119
+ def to_hash
120
+ end
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end
@@ -8,11 +8,56 @@ module Telnyx
8
8
  T.any(Telnyx::WireguardInterface, Telnyx::Internal::AnyHash)
9
9
  end
10
10
 
11
- sig { returns(T.attached_class) }
12
- def self.new
11
+ # A user specified name for the interface.
12
+ sig { returns(T.nilable(String)) }
13
+ attr_reader :name
14
+
15
+ sig { params(name: String).void }
16
+ attr_writer :name
17
+
18
+ # The id of the network associated with the interface.
19
+ sig { returns(T.nilable(String)) }
20
+ attr_reader :network_id
21
+
22
+ sig { params(network_id: String).void }
23
+ attr_writer :network_id
24
+
25
+ # Enable SIP traffic forwarding over VPN interface.
26
+ sig { returns(T.nilable(T::Boolean)) }
27
+ attr_reader :enable_sip_trunking
28
+
29
+ sig { params(enable_sip_trunking: T::Boolean).void }
30
+ attr_writer :enable_sip_trunking
31
+
32
+ sig do
33
+ params(
34
+ name: String,
35
+ network_id: String,
36
+ enable_sip_trunking: T::Boolean
37
+ ).returns(T.attached_class)
38
+ end
39
+ def self.new(
40
+ # A user specified name for the interface.
41
+ name: nil,
42
+ # The id of the network associated with the interface.
43
+ network_id: nil,
44
+ # Enable SIP traffic forwarding over VPN interface.
45
+ enable_sip_trunking: nil
46
+ )
13
47
  end
14
48
 
15
- sig { override.returns({}) }
49
+ sig do
50
+ override.returns(
51
+ {
52
+ name: String,
53
+ network_id: String,
54
+ status: Telnyx::InterfaceStatus::OrSymbol,
55
+ enable_sip_trunking: T::Boolean,
56
+ endpoint: String,
57
+ public_key: String
58
+ }
59
+ )
60
+ end
16
61
  def to_hash
17
62
  end
18
63
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- WireguardPeerRetrieveConfigResponse = String
5
+ WireguardPeerRetrieveConfigResponse = T.type_alias { String }
6
6
  end
7
7
  end
@@ -613,14 +613,9 @@ module Telnyx
613
613
  Telnyx::Models::DirListInfringementClaimsParams
614
614
 
615
615
  DirListParams = Telnyx::Models::DirListParams
616
- DirLoaParams = Telnyx::Models::DirLoaParams
617
616
 
618
617
  DirNewLoaParams = Telnyx::Models::DirNewLoaParams
619
618
 
620
- DirRetrieveDocumentTypesParams =
621
- Telnyx::Models::DirRetrieveDocumentTypesParams
622
- DirRetrieveInfringementClaimsParams =
623
- Telnyx::Models::DirRetrieveInfringementClaimsParams
624
619
  DirRetrieveParams = Telnyx::Models::DirRetrieveParams
625
620
 
626
621
  DirStatus = Telnyx::Models::DirStatus
@@ -628,8 +623,6 @@ module Telnyx
628
623
  DirSubmitParams = Telnyx::Models::DirSubmitParams
629
624
 
630
625
  DirUpdateInfringementParams = Telnyx::Models::DirUpdateInfringementParams
631
- DirUpdateInfringementUpdateParams =
632
- Telnyx::Models::DirUpdateInfringementUpdateParams
633
626
 
634
627
  DirUpdateParams = Telnyx::Models::DirUpdateParams
635
628
 
@@ -66,12 +66,12 @@ module Telnyx
66
66
  #
67
67
  # 1. The query text is embedded into a 1024-dimensional vector using the
68
68
  # multilingual-e5-large model.
69
- # 2. The vector is sent to regional OpenSearch clusters for kNN search using HNSW
70
- # cosine similarity.
69
+ # 2. The vector is compared against indexed record chunks using semantic
70
+ # similarity search.
71
71
  # 3. When no region is specified, all regions are queried in parallel (fan-out)
72
72
  # and results are merged by score.
73
- # 4. Results are ranked by cosine similarity score (descending) and truncated to
74
- # `top_k`.
73
+ # 4. Results are ranked by similarity score (descending) and paginated via
74
+ # `page[number]` / `page[size]`.
75
75
  #
76
76
  # **Authentication:** Requires a Telnyx API key via `Authorization: Bearer <key>`.
77
77
  # Results are automatically scoped to the caller's organization —
@@ -85,14 +85,14 @@ module Telnyx
85
85
  # **Filtering:** Use `filter[field][operator]=value` query parameters to narrow
86
86
  # results before vector search.
87
87
  #
88
- # Top-level filterable fields: `user_id`, `record_type`, `region`, `document_id`,
89
- # `record_id`, `record_created_at`, `ingested_at`, `retention`
88
+ # Top-level filterable fields: `user_id`, `region`, `record_id`,
89
+ # `record_created_at`, `ingested_at`, `retention`
90
90
  #
91
91
  # Note: `retention` is filter-only — it can be used to narrow results but is not
92
92
  # returned in the response body.
93
93
  #
94
94
  # Metadata fields: any field not in the list above is resolved to
95
- # `data.metadata.<field>` in OpenSearch (e.g., `filter[language]=en` →
95
+ # `data.metadata.<field>` (e.g., `filter[language]=en` →
96
96
  # `data.metadata.language`).
97
97
  #
98
98
  # Supported filter operators:
@@ -105,18 +105,15 @@ module Telnyx
105
105
  # **Examples:**
106
106
  #
107
107
  # ```
108
- # GET /v2/ai/conversation_histories?q=billing+issue&record_type=voice&top_k=10
109
- # GET /v2/ai/conversation_histories?q=setup+guide&record_type=knowledge_base&region=USA&min_score=0.5
110
- # GET /v2/ai/conversation_histories?q=refund&record_type=voice&filter[record_created_at][gte]=2026-01-01T00:00:00Z
111
- # GET /v2/ai/conversation_histories?q=outage&record_type=voice&filter[region][in]=USA,DEU
112
- # GET /v2/ai/conversation_histories?q=hold+time&record_type=voice&filter[language]=en
108
+ # GET /v2/ai/conversation_histories?q=billing+issue&page[size]=10
109
+ # GET /v2/ai/conversation_histories?q=setup+guide&region=USA&min_score=0.5
110
+ # GET /v2/ai/conversation_histories?q=refund&filter[record_created_at][gte]=2026-01-01T00:00:00Z
111
+ # GET /v2/ai/conversation_histories?q=outage&filter[region][in]=USA,DEU
112
+ # GET /v2/ai/conversation_histories?q=hold+time&filter[language]=en
113
113
  # ```
114
114
  sig do
115
115
  params(
116
116
  q: String,
117
- record_type:
118
- Telnyx::AIRetrieveConversationHistoriesParams::RecordType::OrSymbol,
119
- filter_document_id: String,
120
117
  filter_ingested_at_gte: Time,
121
118
  filter_ingested_at_lte: Time,
122
119
  filter_record_created_at_gte: Time,
@@ -126,22 +123,17 @@ module Telnyx
126
123
  filter_retention: String,
127
124
  filter_user_id: String,
128
125
  min_score: Float,
126
+ page_number: Integer,
127
+ page_size: Integer,
129
128
  region:
130
129
  Telnyx::AIRetrieveConversationHistoriesParams::Region::OrSymbol,
131
- top_k: Integer,
132
130
  request_options: Telnyx::RequestOptions::OrHash
133
131
  ).returns(Telnyx::Models::AIRetrieveConversationHistoriesResponse)
134
132
  end
135
133
  def retrieve_conversation_histories(
136
134
  # Natural language search query. The text is embedded into a 1024-dimensional
137
- # vector and compared against indexed record chunks using kNN cosine similarity.
135
+ # vector and compared against indexed record chunks using semantic similarity.
138
136
  q:,
139
- # The type of records to search. Each record type is stored in a separate vector
140
- # index.
141
- record_type:,
142
- # Filter by document identifier (exact match). Populated for knowledge_base
143
- # records.
144
- filter_document_id: nil,
145
137
  # Only include records ingested (chunked, embedded, and indexed) on or after this
146
138
  # ISO 8601 timestamp.
147
139
  filter_ingested_at_gte: nil,
@@ -168,12 +160,13 @@ module Telnyx
168
160
  # Minimum cosine similarity score threshold (0.0 to 1.0). Results below this
169
161
  # threshold are excluded.
170
162
  min_score: nil,
171
- # Restrict search to a specific region's OpenSearch cluster. When omitted, all
172
- # regions are queried in parallel (fan-out) and results are merged by cosine
173
- # similarity score.
163
+ # Page number to return (1-based). Defaults to 1.
164
+ page_number: nil,
165
+ # Number of results per page. Defaults to 20, maximum 100.
166
+ page_size: nil,
167
+ # Restrict search to a specific region. When omitted, all regions are queried in
168
+ # parallel (fan-out) and results are merged by similarity score.
174
169
  region: nil,
175
- # Maximum number of results to return. Defaults to 20, maximum 100.
176
- top_k: nil,
177
170
  request_options: {}
178
171
  )
179
172
  end
@@ -1839,6 +1839,7 @@ module Telnyx
1839
1839
  Telnyx::Calls::TranscriptionEngineAssemblyaiConfig::OrHash,
1840
1840
  Telnyx::Calls::TranscriptionEngineSpeechmaticsConfig::OrHash,
1841
1841
  Telnyx::Calls::TranscriptionEngineSonioxConfig::OrHash,
1842
+ Telnyx::Calls::TranscriptionEngineParakeetConfig::OrHash,
1842
1843
  Telnyx::Calls::TranscriptionEngineAConfig::OrHash,
1843
1844
  Telnyx::Calls::TranscriptionEngineBConfig::OrHash,
1844
1845
  Telnyx::Calls::DeepgramNova2Config::OrHash,