telnyx 5.26.0 → 5.28.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 (214) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/mission_create_response.rb +3 -73
  5. data/lib/telnyx/models/ai/{mission_list_response.rb → mission_data.rb} +5 -5
  6. data/lib/telnyx/models/ai/mission_retrieve_response.rb +3 -73
  7. data/lib/telnyx/models/ai/mission_update_mission_response.rb +3 -74
  8. data/lib/telnyx/models/ai/missions/{run_list_response.rb → mission_run_data.rb} +7 -5
  9. data/lib/telnyx/models/ai/missions/run_cancel_run_response.rb +3 -89
  10. data/lib/telnyx/models/ai/missions/run_create_response.rb +3 -89
  11. data/lib/telnyx/models/ai/missions/run_pause_run_response.rb +3 -89
  12. data/lib/telnyx/models/ai/missions/run_resume_run_response.rb +3 -89
  13. data/lib/telnyx/models/ai/missions/run_retrieve_response.rb +3 -89
  14. data/lib/telnyx/models/ai/missions/run_update_response.rb +3 -89
  15. data/lib/telnyx/models/ai/missions/runs/plan_add_steps_to_plan_response.rb +3 -77
  16. data/lib/telnyx/models/ai/missions/runs/plan_create_response.rb +3 -76
  17. data/lib/telnyx/models/ai/missions/runs/plan_get_step_details_response.rb +3 -77
  18. data/lib/telnyx/models/ai/missions/runs/plan_retrieve_response.rb +3 -76
  19. data/lib/telnyx/models/ai/missions/runs/plan_step_data.rb +83 -0
  20. data/lib/telnyx/models/ai/missions/runs/plan_update_step_response.rb +3 -76
  21. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +4 -39
  22. data/lib/telnyx/models/calls/action_speak_params.rb +4 -39
  23. data/lib/telnyx/models/conferences/action_speak_params.rb +4 -39
  24. data/lib/telnyx/models/global_ip_assignment.rb +1 -0
  25. data/lib/telnyx/models/global_ip_assignment_create_response.rb +2 -2
  26. data/lib/telnyx/models/global_ip_assignment_delete_response.rb +2 -2
  27. data/lib/telnyx/models/global_ip_assignment_retrieve_response.rb +2 -2
  28. data/lib/telnyx/models/global_ip_assignment_update_params.rb +1 -1
  29. data/lib/telnyx/models/global_ip_assignment_update_response.rb +2 -2
  30. data/lib/telnyx/models/global_ip_create_response.rb +2 -34
  31. data/lib/telnyx/models/global_ip_delete_response.rb +2 -34
  32. data/lib/telnyx/models/global_ip_health_check_create_response.rb +2 -36
  33. data/lib/telnyx/models/global_ip_health_check_delete_response.rb +2 -36
  34. data/lib/telnyx/models/global_ip_health_check_list_response.rb +2 -36
  35. data/lib/telnyx/models/global_ip_health_check_retrieve_response.rb +2 -36
  36. data/lib/telnyx/models/global_ip_list_response.rb +2 -34
  37. data/lib/telnyx/models/global_ip_retrieve_response.rb +2 -34
  38. data/lib/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_params.rb +24 -0
  39. data/lib/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_response.rb +82 -0
  40. data/lib/telnyx/models/minimax_voice_settings.rb +52 -0
  41. data/lib/telnyx/models/network_create.rb +2 -36
  42. data/lib/telnyx/models/network_create_response.rb +2 -36
  43. data/lib/telnyx/models/network_delete_response.rb +2 -36
  44. data/lib/telnyx/models/network_list_interfaces_response.rb +2 -112
  45. data/lib/telnyx/models/network_list_response.rb +2 -36
  46. data/lib/telnyx/models/network_retrieve_response.rb +2 -36
  47. data/lib/telnyx/models/network_update_response.rb +2 -36
  48. data/lib/telnyx/models/networks/default_gateway_create_response.rb +2 -34
  49. data/lib/telnyx/models/networks/default_gateway_delete_response.rb +2 -34
  50. data/lib/telnyx/models/networks/default_gateway_retrieve_response.rb +2 -34
  51. data/lib/telnyx/models/public_internet_gateway_create_response.rb +2 -75
  52. data/lib/telnyx/models/public_internet_gateway_delete_response.rb +2 -75
  53. data/lib/telnyx/models/public_internet_gateway_list_response.rb +2 -75
  54. data/lib/telnyx/models/public_internet_gateway_retrieve_response.rb +2 -75
  55. data/lib/telnyx/models/record.rb +42 -0
  56. data/lib/telnyx/models/virtual_cross_connect_create_response.rb +272 -2
  57. data/lib/telnyx/models/virtual_cross_connect_delete_response.rb +272 -2
  58. data/lib/telnyx/models/virtual_cross_connect_list_response.rb +271 -2
  59. data/lib/telnyx/models/virtual_cross_connect_retrieve_response.rb +272 -2
  60. data/lib/telnyx/models/virtual_cross_connect_update_response.rb +272 -2
  61. data/lib/telnyx/models/wireguard_interface_create_response.rb +2 -128
  62. data/lib/telnyx/models/wireguard_interface_delete_response.rb +2 -128
  63. data/lib/telnyx/models/wireguard_interface_list_response.rb +2 -128
  64. data/lib/telnyx/models/wireguard_interface_retrieve_response.rb +2 -128
  65. data/lib/telnyx/models/wireguard_peer_create_response.rb +75 -2
  66. data/lib/telnyx/models/wireguard_peer_delete_response.rb +75 -2
  67. data/lib/telnyx/models/wireguard_peer_list_response.rb +75 -2
  68. data/lib/telnyx/models/wireguard_peer_retrieve_response.rb +75 -2
  69. data/lib/telnyx/models/wireguard_peer_update_response.rb +75 -2
  70. data/lib/telnyx/models.rb +4 -0
  71. data/lib/telnyx/resources/ai/missions/runs.rb +4 -4
  72. data/lib/telnyx/resources/ai/missions.rb +2 -2
  73. data/lib/telnyx/resources/calls/actions.rb +2 -2
  74. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  75. data/lib/telnyx/resources/global_ip_assignments.rb +1 -1
  76. data/lib/telnyx/resources/messaging_10dlc/brand.rb +35 -0
  77. data/lib/telnyx/version.rb +1 -1
  78. data/lib/telnyx.rb +8 -4
  79. data/rbi/telnyx/models/ai/mission_create_response.rbi +6 -147
  80. data/rbi/telnyx/models/ai/{mission_list_response.rbi → mission_data.rbi} +9 -22
  81. data/rbi/telnyx/models/ai/mission_retrieve_response.rbi +6 -147
  82. data/rbi/telnyx/models/ai/mission_update_mission_response.rbi +6 -147
  83. data/rbi/telnyx/models/ai/missions/{run_list_response.rbi → mission_run_data.rbi} +15 -19
  84. data/rbi/telnyx/models/ai/missions/run_cancel_run_response.rbi +6 -185
  85. data/rbi/telnyx/models/ai/missions/run_create_response.rbi +6 -183
  86. data/rbi/telnyx/models/ai/missions/run_pause_run_response.rbi +6 -185
  87. data/rbi/telnyx/models/ai/missions/run_resume_run_response.rbi +6 -185
  88. data/rbi/telnyx/models/ai/missions/run_retrieve_response.rbi +6 -185
  89. data/rbi/telnyx/models/ai/missions/run_update_response.rbi +6 -183
  90. data/rbi/telnyx/models/ai/missions/runs/plan_add_steps_to_plan_response.rbi +3 -165
  91. data/rbi/telnyx/models/ai/missions/runs/plan_create_response.rbi +3 -165
  92. data/rbi/telnyx/models/ai/missions/runs/plan_get_step_details_response.rbi +4 -161
  93. data/rbi/telnyx/models/ai/missions/runs/plan_retrieve_response.rbi +3 -165
  94. data/rbi/telnyx/models/ai/missions/runs/plan_step_data.rbi +159 -0
  95. data/rbi/telnyx/models/ai/missions/runs/plan_update_step_response.rbi +4 -161
  96. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +5 -68
  97. data/rbi/telnyx/models/calls/action_speak_params.rbi +5 -68
  98. data/rbi/telnyx/models/conferences/action_speak_params.rbi +5 -68
  99. data/rbi/telnyx/models/global_ip_assignment_update_params.rbi +2 -11
  100. data/rbi/telnyx/models/global_ip_create_response.rbi +1 -45
  101. data/rbi/telnyx/models/global_ip_delete_response.rbi +1 -45
  102. data/rbi/telnyx/models/global_ip_health_check_create_response.rbi +1 -45
  103. data/rbi/telnyx/models/global_ip_health_check_delete_response.rbi +1 -45
  104. data/rbi/telnyx/models/global_ip_health_check_list_response.rbi +1 -45
  105. data/rbi/telnyx/models/global_ip_health_check_retrieve_response.rbi +1 -45
  106. data/rbi/telnyx/models/global_ip_list_response.rbi +1 -45
  107. data/rbi/telnyx/models/global_ip_retrieve_response.rbi +1 -45
  108. data/rbi/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_params.rbi +48 -0
  109. data/rbi/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_response.rbi +110 -0
  110. data/rbi/telnyx/models/minimax_voice_settings.rbi +90 -0
  111. data/rbi/telnyx/models/network_create.rbi +4 -58
  112. data/rbi/telnyx/models/network_create_response.rbi +3 -57
  113. data/rbi/telnyx/models/network_delete_response.rbi +3 -57
  114. data/rbi/telnyx/models/network_list_interfaces_response.rbi +4 -181
  115. data/rbi/telnyx/models/network_list_response.rbi +3 -57
  116. data/rbi/telnyx/models/network_retrieve_response.rbi +3 -57
  117. data/rbi/telnyx/models/network_update_response.rbi +3 -57
  118. data/rbi/telnyx/models/networks/default_gateway_create_response.rbi +1 -45
  119. data/rbi/telnyx/models/networks/default_gateway_delete_response.rbi +1 -45
  120. data/rbi/telnyx/models/networks/default_gateway_retrieve_response.rbi +1 -45
  121. data/rbi/telnyx/models/public_internet_gateway_create_response.rbi +4 -112
  122. data/rbi/telnyx/models/public_internet_gateway_delete_response.rbi +4 -112
  123. data/rbi/telnyx/models/public_internet_gateway_list_response.rbi +4 -112
  124. data/rbi/telnyx/models/public_internet_gateway_retrieve_response.rbi +4 -112
  125. data/rbi/telnyx/models/record.rbi +70 -0
  126. data/rbi/telnyx/models/virtual_cross_connect_create_response.rbi +449 -4
  127. data/rbi/telnyx/models/virtual_cross_connect_delete_response.rbi +449 -4
  128. data/rbi/telnyx/models/virtual_cross_connect_list_response.rbi +444 -4
  129. data/rbi/telnyx/models/virtual_cross_connect_retrieve_response.rbi +449 -4
  130. data/rbi/telnyx/models/virtual_cross_connect_update_response.rbi +449 -4
  131. data/rbi/telnyx/models/wireguard_interface_create_response.rbi +4 -210
  132. data/rbi/telnyx/models/wireguard_interface_delete_response.rbi +4 -210
  133. data/rbi/telnyx/models/wireguard_interface_list_response.rbi +4 -204
  134. data/rbi/telnyx/models/wireguard_interface_retrieve_response.rbi +4 -210
  135. data/rbi/telnyx/models/wireguard_peer_create_response.rbi +111 -4
  136. data/rbi/telnyx/models/wireguard_peer_delete_response.rbi +111 -4
  137. data/rbi/telnyx/models/wireguard_peer_list_response.rbi +111 -4
  138. data/rbi/telnyx/models/wireguard_peer_retrieve_response.rbi +111 -4
  139. data/rbi/telnyx/models/wireguard_peer_update_response.rbi +111 -4
  140. data/rbi/telnyx/models.rbi +4 -0
  141. data/rbi/telnyx/resources/ai/missions/runs.rbi +2 -2
  142. data/rbi/telnyx/resources/ai/missions.rbi +1 -3
  143. data/rbi/telnyx/resources/calls/actions.rbi +2 -2
  144. data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
  145. data/rbi/telnyx/resources/messaging_10dlc/brand.rbi +30 -0
  146. data/sig/telnyx/models/ai/mission_create_response.rbs +4 -85
  147. data/sig/telnyx/models/ai/{mission_list_response.rbs → mission_data.rbs} +7 -7
  148. data/sig/telnyx/models/ai/mission_retrieve_response.rbs +4 -85
  149. data/sig/telnyx/models/ai/mission_update_mission_response.rbs +4 -85
  150. data/sig/telnyx/models/ai/missions/{run_list_response.rbs → mission_run_data.rbs} +9 -7
  151. data/sig/telnyx/models/ai/missions/run_cancel_run_response.rbs +4 -103
  152. data/sig/telnyx/models/ai/missions/run_create_response.rbs +4 -103
  153. data/sig/telnyx/models/ai/missions/run_pause_run_response.rbs +4 -103
  154. data/sig/telnyx/models/ai/missions/run_resume_run_response.rbs +4 -103
  155. data/sig/telnyx/models/ai/missions/run_retrieve_response.rbs +4 -103
  156. data/sig/telnyx/models/ai/missions/run_update_response.rbs +4 -103
  157. data/sig/telnyx/models/ai/missions/runs/plan_add_steps_to_plan_response.rbs +4 -86
  158. data/sig/telnyx/models/ai/missions/runs/plan_create_response.rbs +4 -86
  159. data/sig/telnyx/models/ai/missions/runs/plan_get_step_details_response.rbs +4 -88
  160. data/sig/telnyx/models/ai/missions/runs/plan_retrieve_response.rbs +4 -86
  161. data/sig/telnyx/models/ai/missions/runs/plan_step_data.rbs +89 -0
  162. data/sig/telnyx/models/ai/missions/runs/plan_update_step_response.rbs +4 -88
  163. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -34
  164. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -34
  165. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -34
  166. data/sig/telnyx/models/global_ip_assignment_update_params.rbs +3 -17
  167. data/sig/telnyx/models/global_ip_create_response.rbs +9 -37
  168. data/sig/telnyx/models/global_ip_delete_response.rbs +9 -37
  169. data/sig/telnyx/models/global_ip_health_check_create_response.rbs +7 -35
  170. data/sig/telnyx/models/global_ip_health_check_delete_response.rbs +7 -35
  171. data/sig/telnyx/models/global_ip_health_check_list_response.rbs +7 -35
  172. data/sig/telnyx/models/global_ip_health_check_retrieve_response.rbs +7 -35
  173. data/sig/telnyx/models/global_ip_list_response.rbs +9 -37
  174. data/sig/telnyx/models/global_ip_retrieve_response.rbs +9 -37
  175. data/sig/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_params.rbs +27 -0
  176. data/sig/telnyx/models/messaging_10dlc/brand_get_sms_otp_by_reference_response.rbs +63 -0
  177. data/sig/telnyx/models/minimax_voice_settings.rbs +51 -0
  178. data/sig/telnyx/models/network_create.rbs +6 -39
  179. data/sig/telnyx/models/network_create_response.rbs +6 -41
  180. data/sig/telnyx/models/network_delete_response.rbs +6 -41
  181. data/sig/telnyx/models/network_list_interfaces_response.rbs +4 -106
  182. data/sig/telnyx/models/network_list_response.rbs +6 -41
  183. data/sig/telnyx/models/network_retrieve_response.rbs +6 -41
  184. data/sig/telnyx/models/network_update_response.rbs +6 -41
  185. data/sig/telnyx/models/networks/default_gateway_create_response.rbs +7 -35
  186. data/sig/telnyx/models/networks/default_gateway_delete_response.rbs +7 -35
  187. data/sig/telnyx/models/networks/default_gateway_retrieve_response.rbs +7 -35
  188. data/sig/telnyx/models/public_internet_gateway_create_response.rbs +4 -73
  189. data/sig/telnyx/models/public_internet_gateway_delete_response.rbs +4 -73
  190. data/sig/telnyx/models/public_internet_gateway_list_response.rbs +4 -73
  191. data/sig/telnyx/models/public_internet_gateway_retrieve_response.rbs +4 -73
  192. data/sig/telnyx/models/record.rbs +43 -0
  193. data/sig/telnyx/models/virtual_cross_connect_create_response.rbs +225 -4
  194. data/sig/telnyx/models/virtual_cross_connect_delete_response.rbs +225 -4
  195. data/sig/telnyx/models/virtual_cross_connect_list_response.rbs +225 -4
  196. data/sig/telnyx/models/virtual_cross_connect_retrieve_response.rbs +225 -4
  197. data/sig/telnyx/models/virtual_cross_connect_update_response.rbs +225 -4
  198. data/sig/telnyx/models/wireguard_interface_create_response.rbs +4 -120
  199. data/sig/telnyx/models/wireguard_interface_delete_response.rbs +4 -120
  200. data/sig/telnyx/models/wireguard_interface_list_response.rbs +4 -120
  201. data/sig/telnyx/models/wireguard_interface_retrieve_response.rbs +4 -120
  202. data/sig/telnyx/models/wireguard_peer_create_response.rbs +64 -4
  203. data/sig/telnyx/models/wireguard_peer_delete_response.rbs +64 -4
  204. data/sig/telnyx/models/wireguard_peer_list_response.rbs +64 -4
  205. data/sig/telnyx/models/wireguard_peer_retrieve_response.rbs +64 -4
  206. data/sig/telnyx/models/wireguard_peer_update_response.rbs +64 -4
  207. data/sig/telnyx/models.rbs +4 -0
  208. data/sig/telnyx/resources/ai/missions/runs.rbs +2 -2
  209. data/sig/telnyx/resources/ai/missions.rbs +1 -1
  210. data/sig/telnyx/resources/messaging_10dlc/brand.rbs +6 -0
  211. metadata +23 -11
  212. data/lib/telnyx/models/ai/missions/run_list_runs_response.rb +0 -95
  213. data/rbi/telnyx/models/ai/missions/run_list_runs_response.rbi +0 -180
  214. data/sig/telnyx/models/ai/missions/run_list_runs_response.rbs +0 -102
@@ -41,7 +41,7 @@ module Telnyx
41
41
  def to_hash
42
42
  end
43
43
 
44
- class Data < Telnyx::Models::NetworkInterfaceRegion
44
+ class Data < Telnyx::Internal::Type::BaseModel
45
45
  OrHash =
46
46
  T.type_alias do
47
47
  T.any(
@@ -50,13 +50,458 @@ module Telnyx
50
50
  )
51
51
  end
52
52
 
53
- sig { returns(T.attached_class) }
54
- def self.new
53
+ # A user specified name for the interface.
54
+ sig { returns(T.nilable(String)) }
55
+ attr_reader :name
56
+
57
+ sig { params(name: String).void }
58
+ attr_writer :name
59
+
60
+ # The id of the network associated with the interface.
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :network_id
63
+
64
+ sig { params(network_id: String).void }
65
+ attr_writer :network_id
66
+
67
+ # The region the interface should be deployed to.
68
+ sig { returns(T.nilable(String)) }
69
+ attr_reader :region_code
70
+
71
+ sig { params(region_code: String).void }
72
+ attr_writer :region_code
73
+
74
+ # The desired throughput in Megabits per Second (Mbps) for your Virtual Cross
75
+ # Connect.<br /><br />The available bandwidths can be found using the
76
+ # /virtual_cross_connect_regions endpoint.
77
+ sig { returns(T.nilable(Float)) }
78
+ attr_reader :bandwidth_mbps
79
+
80
+ sig { params(bandwidth_mbps: Float).void }
81
+ attr_writer :bandwidth_mbps
82
+
83
+ # The Border Gateway Protocol (BGP) Autonomous System Number (ASN). If null, value
84
+ # will be assigned by Telnyx.
85
+ sig { returns(T.nilable(Float)) }
86
+ attr_reader :bgp_asn
87
+
88
+ sig { params(bgp_asn: Float).void }
89
+ attr_writer :bgp_asn
90
+
91
+ # The Virtual Private Cloud with which you would like to establish a cross
92
+ # connect.
93
+ sig do
94
+ returns(
95
+ T.nilable(
96
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol
97
+ )
98
+ )
99
+ end
100
+ attr_reader :cloud_provider
101
+
102
+ sig do
103
+ params(
104
+ cloud_provider:
105
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::OrSymbol
106
+ ).void
107
+ end
108
+ attr_writer :cloud_provider
109
+
110
+ # The region where your Virtual Private Cloud hosts are located.<br /><br />The
111
+ # available regions can be found using the /virtual_cross_connect_regions
112
+ # endpoint.
113
+ sig { returns(T.nilable(String)) }
114
+ attr_reader :cloud_provider_region
115
+
116
+ sig { params(cloud_provider_region: String).void }
117
+ attr_writer :cloud_provider_region
118
+
119
+ # The authentication key for BGP peer configuration.
120
+ sig { returns(T.nilable(String)) }
121
+ attr_reader :primary_bgp_key
122
+
123
+ sig { params(primary_bgp_key: String).void }
124
+ attr_writer :primary_bgp_key
125
+
126
+ # The identifier for your Virtual Private Cloud. The number will be different
127
+ # based upon your Cloud provider.
128
+ sig { returns(T.nilable(String)) }
129
+ attr_reader :primary_cloud_account_id
130
+
131
+ sig { params(primary_cloud_account_id: String).void }
132
+ attr_writer :primary_cloud_account_id
133
+
134
+ # The IP address assigned for your side of the Virtual Cross
135
+ # Connect.<br /><br />If none is provided, one will be generated for
136
+ # you.<br /><br />This value can not be patched once the VXC has bene provisioned.
137
+ sig { returns(T.nilable(String)) }
138
+ attr_reader :primary_cloud_ip
139
+
140
+ sig { params(primary_cloud_ip: String).void }
141
+ attr_writer :primary_cloud_ip
142
+
143
+ # Indicates whether the primary circuit is enabled. Setting this to `false` will
144
+ # disable the circuit.
145
+ sig { returns(T.nilable(T::Boolean)) }
146
+ attr_reader :primary_enabled
147
+
148
+ sig { params(primary_enabled: T::Boolean).void }
149
+ attr_writer :primary_enabled
150
+
151
+ # Whether the primary BGP route is being announced.
152
+ sig { returns(T.nilable(T::Boolean)) }
153
+ attr_reader :primary_routing_announcement
154
+
155
+ sig { params(primary_routing_announcement: T::Boolean).void }
156
+ attr_writer :primary_routing_announcement
157
+
158
+ # The IP address assigned to the Telnyx side of the Virtual Cross
159
+ # Connect.<br /><br />If none is provided, one will be generated for
160
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
161
+ # of your assigned IP once the connection has been accepted.
162
+ sig { returns(T.nilable(String)) }
163
+ attr_reader :primary_telnyx_ip
164
+
165
+ sig { params(primary_telnyx_ip: String).void }
166
+ attr_writer :primary_telnyx_ip
167
+
168
+ sig do
169
+ returns(
170
+ T.nilable(
171
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::Region
172
+ )
173
+ )
174
+ end
175
+ attr_reader :region
176
+
177
+ sig do
178
+ params(
179
+ region:
180
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::Region::OrHash
181
+ ).void
182
+ end
183
+ attr_writer :region
184
+
185
+ # The authentication key for BGP peer configuration.
186
+ sig { returns(T.nilable(String)) }
187
+ attr_reader :secondary_bgp_key
188
+
189
+ sig { params(secondary_bgp_key: String).void }
190
+ attr_writer :secondary_bgp_key
191
+
192
+ # The identifier for your Virtual Private Cloud. The number will be different
193
+ # based upon your Cloud provider.<br /><br />This attribute is only necessary for
194
+ # GCE.
195
+ sig { returns(T.nilable(String)) }
196
+ attr_reader :secondary_cloud_account_id
197
+
198
+ sig { params(secondary_cloud_account_id: String).void }
199
+ attr_writer :secondary_cloud_account_id
200
+
201
+ # The IP address assigned for your side of the Virtual Cross
202
+ # Connect.<br /><br />If none is provided, one will be generated for
203
+ # you.<br /><br />This value can not be patched once the VXC has bene provisioned.
204
+ sig { returns(T.nilable(String)) }
205
+ attr_reader :secondary_cloud_ip
206
+
207
+ sig { params(secondary_cloud_ip: String).void }
208
+ attr_writer :secondary_cloud_ip
209
+
210
+ # Indicates whether the secondary circuit is enabled. Setting this to `false` will
211
+ # disable the circuit.
212
+ sig { returns(T.nilable(T::Boolean)) }
213
+ attr_reader :secondary_enabled
214
+
215
+ sig { params(secondary_enabled: T::Boolean).void }
216
+ attr_writer :secondary_enabled
217
+
218
+ # Whether the secondary BGP route is being announced.
219
+ sig { returns(T.nilable(T::Boolean)) }
220
+ attr_reader :secondary_routing_announcement
221
+
222
+ sig { params(secondary_routing_announcement: T::Boolean).void }
223
+ attr_writer :secondary_routing_announcement
224
+
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
+ sig { returns(T.nilable(String)) }
230
+ attr_reader :secondary_telnyx_ip
231
+
232
+ sig { params(secondary_telnyx_ip: String).void }
233
+ attr_writer :secondary_telnyx_ip
234
+
235
+ # Identifies the resource.
236
+ sig { returns(T.nilable(String)) }
237
+ attr_reader :id
238
+
239
+ sig { params(id: String).void }
240
+ attr_writer :id
241
+
242
+ # ISO 8601 formatted date-time indicating when the resource was created.
243
+ sig { returns(T.nilable(String)) }
244
+ attr_reader :created_at
245
+
246
+ sig { params(created_at: String).void }
247
+ attr_writer :created_at
248
+
249
+ # Identifies the type of the resource.
250
+ sig { returns(T.nilable(String)) }
251
+ attr_reader :record_type
252
+
253
+ sig { params(record_type: String).void }
254
+ attr_writer :record_type
255
+
256
+ # ISO 8601 formatted date-time indicating when the resource was updated.
257
+ sig { returns(T.nilable(String)) }
258
+ attr_reader :updated_at
259
+
260
+ sig { params(updated_at: String).void }
261
+ attr_writer :updated_at
262
+
263
+ # The current status of the interface deployment.
264
+ sig { returns(T.nilable(Telnyx::InterfaceStatus::TaggedSymbol)) }
265
+ attr_reader :status
266
+
267
+ sig { params(status: Telnyx::InterfaceStatus::OrSymbol).void }
268
+ attr_writer :status
269
+
270
+ sig do
271
+ params(
272
+ id: String,
273
+ created_at: String,
274
+ record_type: String,
275
+ updated_at: String,
276
+ name: String,
277
+ network_id: String,
278
+ status: Telnyx::InterfaceStatus::OrSymbol,
279
+ region_code: String,
280
+ bandwidth_mbps: Float,
281
+ bgp_asn: Float,
282
+ cloud_provider:
283
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::OrSymbol,
284
+ cloud_provider_region: String,
285
+ primary_bgp_key: String,
286
+ primary_cloud_account_id: String,
287
+ primary_cloud_ip: String,
288
+ primary_enabled: T::Boolean,
289
+ primary_routing_announcement: T::Boolean,
290
+ primary_telnyx_ip: String,
291
+ region:
292
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::Region::OrHash,
293
+ secondary_bgp_key: String,
294
+ secondary_cloud_account_id: String,
295
+ secondary_cloud_ip: String,
296
+ secondary_enabled: T::Boolean,
297
+ secondary_routing_announcement: T::Boolean,
298
+ secondary_telnyx_ip: String
299
+ ).returns(T.attached_class)
300
+ end
301
+ def self.new(
302
+ # Identifies the resource.
303
+ id: nil,
304
+ # ISO 8601 formatted date-time indicating when the resource was created.
305
+ created_at: nil,
306
+ # Identifies the type of the resource.
307
+ record_type: nil,
308
+ # ISO 8601 formatted date-time indicating when the resource was updated.
309
+ updated_at: nil,
310
+ # A user specified name for the interface.
311
+ name: nil,
312
+ # The id of the network associated with the interface.
313
+ network_id: nil,
314
+ # The current status of the interface deployment.
315
+ status: nil,
316
+ # The region the interface should be deployed to.
317
+ region_code: nil,
318
+ # The desired throughput in Megabits per Second (Mbps) for your Virtual Cross
319
+ # Connect.<br /><br />The available bandwidths can be found using the
320
+ # /virtual_cross_connect_regions endpoint.
321
+ bandwidth_mbps: nil,
322
+ # The Border Gateway Protocol (BGP) Autonomous System Number (ASN). If null, value
323
+ # will be assigned by Telnyx.
324
+ bgp_asn: nil,
325
+ # The Virtual Private Cloud with which you would like to establish a cross
326
+ # connect.
327
+ cloud_provider: nil,
328
+ # The region where your Virtual Private Cloud hosts are located.<br /><br />The
329
+ # available regions can be found using the /virtual_cross_connect_regions
330
+ # endpoint.
331
+ cloud_provider_region: nil,
332
+ # The authentication key for BGP peer configuration.
333
+ primary_bgp_key: nil,
334
+ # The identifier for your Virtual Private Cloud. The number will be different
335
+ # based upon your Cloud provider.
336
+ primary_cloud_account_id: nil,
337
+ # The IP address assigned for your side of the Virtual Cross
338
+ # Connect.<br /><br />If none is provided, one will be generated for
339
+ # you.<br /><br />This value can not be patched once the VXC has bene provisioned.
340
+ primary_cloud_ip: nil,
341
+ # Indicates whether the primary circuit is enabled. Setting this to `false` will
342
+ # disable the circuit.
343
+ primary_enabled: nil,
344
+ # Whether the primary BGP route is being announced.
345
+ primary_routing_announcement: nil,
346
+ # The IP address assigned to the Telnyx side of the Virtual Cross
347
+ # Connect.<br /><br />If none is provided, one will be generated for
348
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
349
+ # of your assigned IP once the connection has been accepted.
350
+ primary_telnyx_ip: nil,
351
+ region: nil,
352
+ # The authentication key for BGP peer configuration.
353
+ secondary_bgp_key: nil,
354
+ # The identifier for your Virtual Private Cloud. The number will be different
355
+ # based upon your Cloud provider.<br /><br />This attribute is only necessary for
356
+ # GCE.
357
+ secondary_cloud_account_id: nil,
358
+ # The IP address assigned for your side of the Virtual Cross
359
+ # Connect.<br /><br />If none is provided, one will be generated for
360
+ # you.<br /><br />This value can not be patched once the VXC has bene provisioned.
361
+ secondary_cloud_ip: nil,
362
+ # Indicates whether the secondary circuit is enabled. Setting this to `false` will
363
+ # disable the circuit.
364
+ secondary_enabled: nil,
365
+ # Whether the secondary BGP route is being announced.
366
+ secondary_routing_announcement: nil,
367
+ # The IP address assigned to the Telnyx side of the Virtual Cross
368
+ # Connect.<br /><br />If none is provided, one will be generated for
369
+ # you.<br /><br />This value should be null for GCE as Google will only inform you
370
+ # of your assigned IP once the connection has been accepted.
371
+ secondary_telnyx_ip: nil
372
+ )
55
373
  end
56
374
 
57
- sig { override.returns({}) }
375
+ sig do
376
+ override.returns(
377
+ {
378
+ id: String,
379
+ created_at: String,
380
+ record_type: String,
381
+ updated_at: String,
382
+ name: String,
383
+ network_id: String,
384
+ status: Telnyx::InterfaceStatus::TaggedSymbol,
385
+ region_code: String,
386
+ bandwidth_mbps: Float,
387
+ bgp_asn: Float,
388
+ cloud_provider:
389
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol,
390
+ cloud_provider_region: String,
391
+ primary_bgp_key: String,
392
+ primary_cloud_account_id: String,
393
+ primary_cloud_ip: String,
394
+ primary_enabled: T::Boolean,
395
+ primary_routing_announcement: T::Boolean,
396
+ primary_telnyx_ip: String,
397
+ region:
398
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::Region,
399
+ secondary_bgp_key: String,
400
+ secondary_cloud_account_id: String,
401
+ secondary_cloud_ip: String,
402
+ secondary_enabled: T::Boolean,
403
+ secondary_routing_announcement: T::Boolean,
404
+ secondary_telnyx_ip: String
405
+ }
406
+ )
407
+ end
58
408
  def to_hash
59
409
  end
410
+
411
+ # The Virtual Private Cloud with which you would like to establish a cross
412
+ # connect.
413
+ module CloudProvider
414
+ extend Telnyx::Internal::Type::Enum
415
+
416
+ TaggedSymbol =
417
+ T.type_alias do
418
+ T.all(
419
+ Symbol,
420
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider
421
+ )
422
+ end
423
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
424
+
425
+ AWS =
426
+ T.let(
427
+ :aws,
428
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol
429
+ )
430
+ AZURE =
431
+ T.let(
432
+ :azure,
433
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol
434
+ )
435
+ GCE =
436
+ T.let(
437
+ :gce,
438
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol
439
+ )
440
+
441
+ sig do
442
+ override.returns(
443
+ T::Array[
444
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::CloudProvider::TaggedSymbol
445
+ ]
446
+ )
447
+ end
448
+ def self.values
449
+ end
450
+ end
451
+
452
+ class Region < Telnyx::Internal::Type::BaseModel
453
+ OrHash =
454
+ T.type_alias do
455
+ T.any(
456
+ Telnyx::Models::VirtualCrossConnectDeleteResponse::Data::Region,
457
+ Telnyx::Internal::AnyHash
458
+ )
459
+ end
460
+
461
+ # Region code of the interface.
462
+ sig { returns(T.nilable(String)) }
463
+ attr_reader :code
464
+
465
+ sig { params(code: String).void }
466
+ attr_writer :code
467
+
468
+ # Region name of the interface.
469
+ sig { returns(T.nilable(String)) }
470
+ attr_reader :name
471
+
472
+ sig { params(name: String).void }
473
+ attr_writer :name
474
+
475
+ # Identifies the type of the resource.
476
+ sig { returns(T.nilable(String)) }
477
+ attr_reader :record_type
478
+
479
+ sig { params(record_type: String).void }
480
+ attr_writer :record_type
481
+
482
+ sig do
483
+ params(code: String, name: String, record_type: String).returns(
484
+ T.attached_class
485
+ )
486
+ end
487
+ def self.new(
488
+ # Region code of the interface.
489
+ code: nil,
490
+ # Region name of the interface.
491
+ name: nil,
492
+ # Identifies the type of the resource.
493
+ record_type: nil
494
+ )
495
+ end
496
+
497
+ sig do
498
+ override.returns(
499
+ { code: String, name: String, record_type: String }
500
+ )
501
+ end
502
+ def to_hash
503
+ end
504
+ end
60
505
  end
61
506
  end
62
507
  end