pnap_network_api 2.0.1 → 2.1.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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +19 -7
  3. data/VERSION +1 -1
  4. data/docs/AsnDetails.md +24 -0
  5. data/docs/BGPPeerGroupsApi.md +361 -0
  6. data/docs/BgpIPv4Prefix.md +26 -0
  7. data/docs/BgpPeerGroup.md +46 -0
  8. data/docs/BgpPeerGroupCreate.md +24 -0
  9. data/docs/BgpPeerGroupPatch.md +22 -0
  10. data/docs/PublicNetwork.md +3 -1
  11. data/docs/PublicNetworkCreate.md +4 -2
  12. data/docs/PublicNetworkIpBlock.md +5 -1
  13. data/docs/PublicNetworkIpBlockCreate.md +18 -0
  14. data/docs/PublicNetworkModify.md +3 -1
  15. data/docs/PublicNetworksApi.md +6 -6
  16. data/lib/pnap_network_api/api/bgp_peer_groups_api.rb +350 -0
  17. data/lib/pnap_network_api/api/private_networks_api.rb +1 -1
  18. data/lib/pnap_network_api/api/public_networks_api.rb +10 -10
  19. data/lib/pnap_network_api/api_client.rb +1 -1
  20. data/lib/pnap_network_api/api_error.rb +1 -1
  21. data/lib/pnap_network_api/configuration.rb +1 -1
  22. data/lib/pnap_network_api/models/asn_details.rb +267 -0
  23. data/lib/pnap_network_api/models/bgp_ipv4_prefix.rb +312 -0
  24. data/lib/pnap_network_api/models/bgp_peer_group.rb +481 -0
  25. data/lib/pnap_network_api/models/bgp_peer_group_create.rb +306 -0
  26. data/lib/pnap_network_api/models/bgp_peer_group_patch.rb +275 -0
  27. data/lib/pnap_network_api/models/error.rb +1 -1
  28. data/lib/pnap_network_api/models/network_membership.rb +1 -1
  29. data/lib/pnap_network_api/models/private_network.rb +1 -1
  30. data/lib/pnap_network_api/models/private_network_create.rb +1 -1
  31. data/lib/pnap_network_api/models/private_network_modify.rb +1 -1
  32. data/lib/pnap_network_api/models/private_network_server.rb +1 -1
  33. data/lib/pnap_network_api/models/public_network.rb +15 -5
  34. data/lib/pnap_network_api/models/public_network_create.rb +21 -11
  35. data/lib/pnap_network_api/models/public_network_ip_block.rb +39 -5
  36. data/lib/pnap_network_api/models/public_network_ip_block_create.rb +223 -0
  37. data/lib/pnap_network_api/models/public_network_modify.rb +15 -5
  38. data/lib/pnap_network_api/version.rb +1 -1
  39. data/lib/pnap_network_api.rb +8 -1
  40. data/pnap_network_api.gemspec +1 -1
  41. data/spec/api/bgp_peer_groups_api_spec.rb +96 -0
  42. data/spec/api/private_networks_api_spec.rb +1 -1
  43. data/spec/api/public_networks_api_spec.rb +2 -2
  44. data/spec/models/asn_details_spec.rb +54 -0
  45. data/spec/models/bgp_ipv4_prefix_spec.rb +60 -0
  46. data/spec/models/bgp_peer_group_create_spec.rb +54 -0
  47. data/spec/models/bgp_peer_group_patch_spec.rb +48 -0
  48. data/spec/models/bgp_peer_group_spec.rb +120 -0
  49. data/spec/models/error_spec.rb +1 -1
  50. data/spec/models/network_membership_spec.rb +1 -1
  51. data/spec/models/private_network_create_spec.rb +1 -1
  52. data/spec/models/private_network_modify_spec.rb +1 -1
  53. data/spec/models/private_network_server_spec.rb +1 -1
  54. data/spec/models/private_network_spec.rb +1 -1
  55. data/spec/models/public_network_create_spec.rb +7 -1
  56. data/spec/models/public_network_ip_block_create_spec.rb +36 -0
  57. data/spec/models/public_network_ip_block_spec.rb +13 -1
  58. data/spec/models/public_network_modify_spec.rb +7 -1
  59. data/spec/models/public_network_spec.rb +7 -1
  60. data/spec/spec_helper.rb +1 -1
  61. metadata +40 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 99d72cbb0918fa0a0d12ea8d5192b17dc2e218125bcdd7d184979c75567a5680
4
- data.tar.gz: a2aeef405b920b5cf35ed651f881a934164a020296545315f405bfb01c781171
3
+ metadata.gz: b1e556d92c4b695520b3317f213ce1aac7377542c3ead77b085240801e786c60
4
+ data.tar.gz: 93df056082fccedf427a4178246ca35e59ec2d61f9a90858e3af06848872d84a
5
5
  SHA512:
6
- metadata.gz: 3430a0c5e06a4732abcf3bc9356fbca36cc41b578a7fa569b590917c9b0817906ac9e2a2de53f4a4997ceb46c36f5d2c21f222358ee2f7c2ac526e5ba4b9e62e
7
- data.tar.gz: d17895beb67bd7acc5ce4c3852a2adf2cf7acf6bcfa439eba9c36a407dc882343f611123a0f1ba004de083e038a5e4ca8709e854a4b4124aa438a381bf390401
6
+ metadata.gz: 0b30f615277dc1cc50abfbfe88528aef752b7af55a87329bc01e129d7b184361643ea4e27fdbce8110b5f3207717809f5b72ae5849e1c765d0b79545a6ef49fa
7
+ data.tar.gz: 744d2b4e35efac7432f4fd3b3278fed8c29dd73118492cbb4756a8c965940bf199b187e247e45047f837ca4e977b0553b28ff47e55cb45014a9985cd5916bbab
data/README.md CHANGED
@@ -8,8 +8,9 @@ networks to avoid unnecessary egress data charges. Model your networks according
8
8
  <br>
9
9
  <span class='pnap-api-knowledge-base-link'>
10
10
  Helpful knowledge base articles are available for
11
- <a href='https://phoenixnap.com/kb/bmc-server-management-via-api#multi-private-backend-network-api' target='_blank'>multi-private backend networks</a>
12
- and <a href='https://phoenixnap.com/kb/bmc-server-management-via-api#ftoc-heading-15' target='_blank'>public networks</a>.
11
+ <a href='https://phoenixnap.com/kb/bmc-server-management-via-api#multi-private-backend-network-api' target='_blank'>multi-private backend networks</a>,
12
+ <a href='https://phoenixnap.com/kb/bmc-server-management-via-api#ftoc-heading-15' target='_blank'>public networks</a> and
13
+ <a href='https://phoenixnap.com/kb/border-gateway-protocol-bmc' target='_blank'>border gateway protocol peer groups</a>.
13
14
  </span><br>
14
15
  <br>
15
16
  <b>All URLs are relative to (https://api.phoenixnap.com/networks/v1/)</b>
@@ -80,17 +81,17 @@ NetworkApi.configure do |config|
80
81
  config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' }
81
82
  end
82
83
 
83
- api_instance = NetworkApi::PrivateNetworksApi.new
84
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
84
85
  opts = {
85
- location: 'PHX' # String | If present will filter the result by the given location of the Private Networks.
86
+ location: 'PHX' # String | If present will filter the result by the given location of the BGP Peer Group.
86
87
  }
87
88
 
88
89
  begin
89
- #List Private Networks.
90
- result = api_instance.private_networks_get(opts)
90
+ #List BGP Peer Groups.
91
+ result = api_instance.bgp_peer_groups_get(opts)
91
92
  p result
92
93
  rescue NetworkApi::ApiError => e
93
- puts "Exception when calling PrivateNetworksApi->private_networks_get: #{e}"
94
+ puts "Exception when calling BGPPeerGroupsApi->bgp_peer_groups_get: #{e}"
94
95
  end
95
96
 
96
97
  ```
@@ -126,6 +127,11 @@ All URIs are relative to *https://api.phoenixnap.com/networks/v1*
126
127
 
127
128
  Class | Method | HTTP request | Description
128
129
  ------------ | ------------- | ------------- | -------------
130
+ *NetworkApi::BGPPeerGroupsApi* | [**bgp_peer_groups_get**](docs/BGPPeerGroupsApi.md#bgp_peer_groups_get) | **GET** /bgp-peer-groups | List BGP Peer Groups.
131
+ *NetworkApi::BGPPeerGroupsApi* | [**bgp_peer_groups_peer_group_id_delete**](docs/BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_delete) | **DELETE** /bgp-peer-groups/{bgpPeerGroupId} | Delete a BGP Peer Group.
132
+ *NetworkApi::BGPPeerGroupsApi* | [**bgp_peer_groups_peer_group_id_get**](docs/BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_get) | **GET** /bgp-peer-groups/{bgpPeerGroupId} | Get a BGP Peer Group.
133
+ *NetworkApi::BGPPeerGroupsApi* | [**bgp_peer_groups_peer_group_id_patch**](docs/BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_patch) | **PATCH** /bgp-peer-groups/{bgpPeerGroupId} | Modify a BGP Peer Group.
134
+ *NetworkApi::BGPPeerGroupsApi* | [**bgp_peer_groups_post**](docs/BGPPeerGroupsApi.md#bgp_peer_groups_post) | **POST** /bgp-peer-groups | Create a BGP Peer Group.
129
135
  *NetworkApi::PrivateNetworksApi* | [**private_networks_get**](docs/PrivateNetworksApi.md#private_networks_get) | **GET** /private-networks | List Private Networks.
130
136
  *NetworkApi::PrivateNetworksApi* | [**private_networks_network_id_delete**](docs/PrivateNetworksApi.md#private_networks_network_id_delete) | **DELETE** /private-networks/{privateNetworkId} | Delete a Private Network.
131
137
  *NetworkApi::PrivateNetworksApi* | [**private_networks_network_id_get**](docs/PrivateNetworksApi.md#private_networks_network_id_get) | **GET** /private-networks/{privateNetworkId} | Get a Private Network.
@@ -142,6 +148,11 @@ Class | Method | HTTP request | Description
142
148
 
143
149
  ## Documentation for Models
144
150
 
151
+ - [NetworkApi::AsnDetails](docs/AsnDetails.md)
152
+ - [NetworkApi::BgpIPv4Prefix](docs/BgpIPv4Prefix.md)
153
+ - [NetworkApi::BgpPeerGroup](docs/BgpPeerGroup.md)
154
+ - [NetworkApi::BgpPeerGroupCreate](docs/BgpPeerGroupCreate.md)
155
+ - [NetworkApi::BgpPeerGroupPatch](docs/BgpPeerGroupPatch.md)
145
156
  - [NetworkApi::Error](docs/Error.md)
146
157
  - [NetworkApi::NetworkMembership](docs/NetworkMembership.md)
147
158
  - [NetworkApi::PrivateNetwork](docs/PrivateNetwork.md)
@@ -151,6 +162,7 @@ Class | Method | HTTP request | Description
151
162
  - [NetworkApi::PublicNetwork](docs/PublicNetwork.md)
152
163
  - [NetworkApi::PublicNetworkCreate](docs/PublicNetworkCreate.md)
153
164
  - [NetworkApi::PublicNetworkIpBlock](docs/PublicNetworkIpBlock.md)
165
+ - [NetworkApi::PublicNetworkIpBlockCreate](docs/PublicNetworkIpBlockCreate.md)
154
166
  - [NetworkApi::PublicNetworkModify](docs/PublicNetworkModify.md)
155
167
 
156
168
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.1
1
+ 2.1.0
@@ -0,0 +1,24 @@
1
+ # NetworkApi::AsnDetails
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **asn** | **Integer** | The BGP Peer Group ASN. | |
8
+ | **is_bring_your_own** | **Boolean** | True if the BGP Peer Group ASN is a &#x60;bring your own&#x60; ASN. | |
9
+ | **verification_status** | **String** | The BGP Peer Group ASN verification status. Can have one of the following values: &#x60;PENDING_VERIFICATION&#x60;, &#x60;FAILED_VERIFICATION&#x60; and &#x60;VERIFIED&#x60;. | |
10
+ | **verification_reason** | **String** | The BGP Peer Group ASN verification reason for the respective status. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'pnap_network_api'
16
+
17
+ instance = NetworkApi::AsnDetails.new(
18
+ asn: 65401,
19
+ is_bring_your_own: false,
20
+ verification_status: VERIFIED,
21
+ verification_reason: Bring Your Own ASN verification succeeded all checks.
22
+ )
23
+ ```
24
+
@@ -0,0 +1,361 @@
1
+ # NetworkApi::BGPPeerGroupsApi
2
+
3
+ All URIs are relative to *https://api.phoenixnap.com/networks/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**bgp_peer_groups_get**](BGPPeerGroupsApi.md#bgp_peer_groups_get) | **GET** /bgp-peer-groups | List BGP Peer Groups. |
8
+ | [**bgp_peer_groups_peer_group_id_delete**](BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_delete) | **DELETE** /bgp-peer-groups/{bgpPeerGroupId} | Delete a BGP Peer Group. |
9
+ | [**bgp_peer_groups_peer_group_id_get**](BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_get) | **GET** /bgp-peer-groups/{bgpPeerGroupId} | Get a BGP Peer Group. |
10
+ | [**bgp_peer_groups_peer_group_id_patch**](BGPPeerGroupsApi.md#bgp_peer_groups_peer_group_id_patch) | **PATCH** /bgp-peer-groups/{bgpPeerGroupId} | Modify a BGP Peer Group. |
11
+ | [**bgp_peer_groups_post**](BGPPeerGroupsApi.md#bgp_peer_groups_post) | **POST** /bgp-peer-groups | Create a BGP Peer Group. |
12
+
13
+
14
+ ## bgp_peer_groups_get
15
+
16
+ > <Array<BgpPeerGroup>> bgp_peer_groups_get(opts)
17
+
18
+ List BGP Peer Groups.
19
+
20
+ List all BGP Peer Groups owned by account.
21
+
22
+ ### Examples
23
+
24
+ ```ruby
25
+ require 'time'
26
+ require 'pnap_network_api'
27
+ # setup authorization
28
+ NetworkApi.configure do |config|
29
+ # Configure OAuth2 access token for authorization: OAuth2
30
+ config.access_token = 'YOUR ACCESS TOKEN'
31
+ end
32
+
33
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
34
+ opts = {
35
+ location: 'PHX' # String | If present will filter the result by the given location of the BGP Peer Group.
36
+ }
37
+
38
+ begin
39
+ # List BGP Peer Groups.
40
+ result = api_instance.bgp_peer_groups_get(opts)
41
+ p result
42
+ rescue NetworkApi::ApiError => e
43
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_get: #{e}"
44
+ end
45
+ ```
46
+
47
+ #### Using the bgp_peer_groups_get_with_http_info variant
48
+
49
+ This returns an Array which contains the response data, status code and headers.
50
+
51
+ > <Array(<Array<BgpPeerGroup>>, Integer, Hash)> bgp_peer_groups_get_with_http_info(opts)
52
+
53
+ ```ruby
54
+ begin
55
+ # List BGP Peer Groups.
56
+ data, status_code, headers = api_instance.bgp_peer_groups_get_with_http_info(opts)
57
+ p status_code # => 2xx
58
+ p headers # => { ... }
59
+ p data # => <Array<BgpPeerGroup>>
60
+ rescue NetworkApi::ApiError => e
61
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_get_with_http_info: #{e}"
62
+ end
63
+ ```
64
+
65
+ ### Parameters
66
+
67
+ | Name | Type | Description | Notes |
68
+ | ---- | ---- | ----------- | ----- |
69
+ | **location** | **String** | If present will filter the result by the given location of the BGP Peer Group. | [optional] |
70
+
71
+ ### Return type
72
+
73
+ [**Array&lt;BgpPeerGroup&gt;**](BgpPeerGroup.md)
74
+
75
+ ### Authorization
76
+
77
+ [OAuth2](../README.md#OAuth2)
78
+
79
+ ### HTTP request headers
80
+
81
+ - **Content-Type**: Not defined
82
+ - **Accept**: application/json
83
+
84
+
85
+ ## bgp_peer_groups_peer_group_id_delete
86
+
87
+ > <BgpPeerGroup> bgp_peer_groups_peer_group_id_delete(bgp_peer_group_id)
88
+
89
+ Delete a BGP Peer Group.
90
+
91
+ Deletes BGP Peer Group by ID.
92
+
93
+ ### Examples
94
+
95
+ ```ruby
96
+ require 'time'
97
+ require 'pnap_network_api'
98
+ # setup authorization
99
+ NetworkApi.configure do |config|
100
+ # Configure OAuth2 access token for authorization: OAuth2
101
+ config.access_token = 'YOUR ACCESS TOKEN'
102
+ end
103
+
104
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
105
+ bgp_peer_group_id = '603f3b2cfcaf050643b89a4b' # String | The BGP peer group ID.
106
+
107
+ begin
108
+ # Delete a BGP Peer Group.
109
+ result = api_instance.bgp_peer_groups_peer_group_id_delete(bgp_peer_group_id)
110
+ p result
111
+ rescue NetworkApi::ApiError => e
112
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_delete: #{e}"
113
+ end
114
+ ```
115
+
116
+ #### Using the bgp_peer_groups_peer_group_id_delete_with_http_info variant
117
+
118
+ This returns an Array which contains the response data, status code and headers.
119
+
120
+ > <Array(<BgpPeerGroup>, Integer, Hash)> bgp_peer_groups_peer_group_id_delete_with_http_info(bgp_peer_group_id)
121
+
122
+ ```ruby
123
+ begin
124
+ # Delete a BGP Peer Group.
125
+ data, status_code, headers = api_instance.bgp_peer_groups_peer_group_id_delete_with_http_info(bgp_peer_group_id)
126
+ p status_code # => 2xx
127
+ p headers # => { ... }
128
+ p data # => <BgpPeerGroup>
129
+ rescue NetworkApi::ApiError => e
130
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_delete_with_http_info: #{e}"
131
+ end
132
+ ```
133
+
134
+ ### Parameters
135
+
136
+ | Name | Type | Description | Notes |
137
+ | ---- | ---- | ----------- | ----- |
138
+ | **bgp_peer_group_id** | **String** | The BGP peer group ID. | |
139
+
140
+ ### Return type
141
+
142
+ [**BgpPeerGroup**](BgpPeerGroup.md)
143
+
144
+ ### Authorization
145
+
146
+ [OAuth2](../README.md#OAuth2)
147
+
148
+ ### HTTP request headers
149
+
150
+ - **Content-Type**: Not defined
151
+ - **Accept**: application/json
152
+
153
+
154
+ ## bgp_peer_groups_peer_group_id_get
155
+
156
+ > <BgpPeerGroup> bgp_peer_groups_peer_group_id_get(bgp_peer_group_id)
157
+
158
+ Get a BGP Peer Group.
159
+
160
+ Retrieves BGP Peer Group by ID.
161
+
162
+ ### Examples
163
+
164
+ ```ruby
165
+ require 'time'
166
+ require 'pnap_network_api'
167
+ # setup authorization
168
+ NetworkApi.configure do |config|
169
+ # Configure OAuth2 access token for authorization: OAuth2
170
+ config.access_token = 'YOUR ACCESS TOKEN'
171
+ end
172
+
173
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
174
+ bgp_peer_group_id = '603f3b2cfcaf050643b89a4b' # String | The BGP peer group ID.
175
+
176
+ begin
177
+ # Get a BGP Peer Group.
178
+ result = api_instance.bgp_peer_groups_peer_group_id_get(bgp_peer_group_id)
179
+ p result
180
+ rescue NetworkApi::ApiError => e
181
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_get: #{e}"
182
+ end
183
+ ```
184
+
185
+ #### Using the bgp_peer_groups_peer_group_id_get_with_http_info variant
186
+
187
+ This returns an Array which contains the response data, status code and headers.
188
+
189
+ > <Array(<BgpPeerGroup>, Integer, Hash)> bgp_peer_groups_peer_group_id_get_with_http_info(bgp_peer_group_id)
190
+
191
+ ```ruby
192
+ begin
193
+ # Get a BGP Peer Group.
194
+ data, status_code, headers = api_instance.bgp_peer_groups_peer_group_id_get_with_http_info(bgp_peer_group_id)
195
+ p status_code # => 2xx
196
+ p headers # => { ... }
197
+ p data # => <BgpPeerGroup>
198
+ rescue NetworkApi::ApiError => e
199
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_get_with_http_info: #{e}"
200
+ end
201
+ ```
202
+
203
+ ### Parameters
204
+
205
+ | Name | Type | Description | Notes |
206
+ | ---- | ---- | ----------- | ----- |
207
+ | **bgp_peer_group_id** | **String** | The BGP peer group ID. | |
208
+
209
+ ### Return type
210
+
211
+ [**BgpPeerGroup**](BgpPeerGroup.md)
212
+
213
+ ### Authorization
214
+
215
+ [OAuth2](../README.md#OAuth2)
216
+
217
+ ### HTTP request headers
218
+
219
+ - **Content-Type**: Not defined
220
+ - **Accept**: application/json
221
+
222
+
223
+ ## bgp_peer_groups_peer_group_id_patch
224
+
225
+ > <BgpPeerGroup> bgp_peer_groups_peer_group_id_patch(bgp_peer_group_id, bgp_peer_group_patch)
226
+
227
+ Modify a BGP Peer Group.
228
+
229
+ Modifies BGP Peer Group by ID.
230
+
231
+ ### Examples
232
+
233
+ ```ruby
234
+ require 'time'
235
+ require 'pnap_network_api'
236
+ # setup authorization
237
+ NetworkApi.configure do |config|
238
+ # Configure OAuth2 access token for authorization: OAuth2
239
+ config.access_token = 'YOUR ACCESS TOKEN'
240
+ end
241
+
242
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
243
+ bgp_peer_group_id = '603f3b2cfcaf050643b89a4b' # String | The BGP peer group ID.
244
+ bgp_peer_group_patch = NetworkApi::BgpPeerGroupPatch.new # BgpPeerGroupPatch |
245
+
246
+ begin
247
+ # Modify a BGP Peer Group.
248
+ result = api_instance.bgp_peer_groups_peer_group_id_patch(bgp_peer_group_id, bgp_peer_group_patch)
249
+ p result
250
+ rescue NetworkApi::ApiError => e
251
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_patch: #{e}"
252
+ end
253
+ ```
254
+
255
+ #### Using the bgp_peer_groups_peer_group_id_patch_with_http_info variant
256
+
257
+ This returns an Array which contains the response data, status code and headers.
258
+
259
+ > <Array(<BgpPeerGroup>, Integer, Hash)> bgp_peer_groups_peer_group_id_patch_with_http_info(bgp_peer_group_id, bgp_peer_group_patch)
260
+
261
+ ```ruby
262
+ begin
263
+ # Modify a BGP Peer Group.
264
+ data, status_code, headers = api_instance.bgp_peer_groups_peer_group_id_patch_with_http_info(bgp_peer_group_id, bgp_peer_group_patch)
265
+ p status_code # => 2xx
266
+ p headers # => { ... }
267
+ p data # => <BgpPeerGroup>
268
+ rescue NetworkApi::ApiError => e
269
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_peer_group_id_patch_with_http_info: #{e}"
270
+ end
271
+ ```
272
+
273
+ ### Parameters
274
+
275
+ | Name | Type | Description | Notes |
276
+ | ---- | ---- | ----------- | ----- |
277
+ | **bgp_peer_group_id** | **String** | The BGP peer group ID. | |
278
+ | **bgp_peer_group_patch** | [**BgpPeerGroupPatch**](BgpPeerGroupPatch.md) | | |
279
+
280
+ ### Return type
281
+
282
+ [**BgpPeerGroup**](BgpPeerGroup.md)
283
+
284
+ ### Authorization
285
+
286
+ [OAuth2](../README.md#OAuth2)
287
+
288
+ ### HTTP request headers
289
+
290
+ - **Content-Type**: application/json
291
+ - **Accept**: application/json
292
+
293
+
294
+ ## bgp_peer_groups_post
295
+
296
+ > <BgpPeerGroup> bgp_peer_groups_post(bgp_peer_group_create)
297
+
298
+ Create a BGP Peer Group.
299
+
300
+ Create a BGP Peer Group.
301
+
302
+ ### Examples
303
+
304
+ ```ruby
305
+ require 'time'
306
+ require 'pnap_network_api'
307
+ # setup authorization
308
+ NetworkApi.configure do |config|
309
+ # Configure OAuth2 access token for authorization: OAuth2
310
+ config.access_token = 'YOUR ACCESS TOKEN'
311
+ end
312
+
313
+ api_instance = NetworkApi::BGPPeerGroupsApi.new
314
+ bgp_peer_group_create = NetworkApi::BgpPeerGroupCreate.new({location: 'ASH', asn: 65401, advertised_routes: 'DEFAULT'}) # BgpPeerGroupCreate |
315
+
316
+ begin
317
+ # Create a BGP Peer Group.
318
+ result = api_instance.bgp_peer_groups_post(bgp_peer_group_create)
319
+ p result
320
+ rescue NetworkApi::ApiError => e
321
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_post: #{e}"
322
+ end
323
+ ```
324
+
325
+ #### Using the bgp_peer_groups_post_with_http_info variant
326
+
327
+ This returns an Array which contains the response data, status code and headers.
328
+
329
+ > <Array(<BgpPeerGroup>, Integer, Hash)> bgp_peer_groups_post_with_http_info(bgp_peer_group_create)
330
+
331
+ ```ruby
332
+ begin
333
+ # Create a BGP Peer Group.
334
+ data, status_code, headers = api_instance.bgp_peer_groups_post_with_http_info(bgp_peer_group_create)
335
+ p status_code # => 2xx
336
+ p headers # => { ... }
337
+ p data # => <BgpPeerGroup>
338
+ rescue NetworkApi::ApiError => e
339
+ puts "Error when calling BGPPeerGroupsApi->bgp_peer_groups_post_with_http_info: #{e}"
340
+ end
341
+ ```
342
+
343
+ ### Parameters
344
+
345
+ | Name | Type | Description | Notes |
346
+ | ---- | ---- | ----------- | ----- |
347
+ | **bgp_peer_group_create** | [**BgpPeerGroupCreate**](BgpPeerGroupCreate.md) | | |
348
+
349
+ ### Return type
350
+
351
+ [**BgpPeerGroup**](BgpPeerGroup.md)
352
+
353
+ ### Authorization
354
+
355
+ [OAuth2](../README.md#OAuth2)
356
+
357
+ ### HTTP request headers
358
+
359
+ - **Content-Type**: application/json
360
+ - **Accept**: application/json
361
+
@@ -0,0 +1,26 @@
1
+ # NetworkApi::BgpIPv4Prefix
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **ipv4_allocation_id** | **String** | IPv4 allocation ID. | |
8
+ | **cidr** | **String** | The IP block in CIDR format. | |
9
+ | **status** | **String** | The BGP IPv4 Prefix status. Can have one of the following values: &#x60;PENDING&#x60;, &#x60;BUSY&#x60;, &#x60;READY&#x60;, &#x60;ERROR&#x60; and &#x60;DELETING&#x60;. | |
10
+ | **is_bring_your_own_ip** | **Boolean** | Identifies IP as a &#x60;bring your own&#x60; IP block. | |
11
+ | **in_use** | **Boolean** | The Boolean value of the BGP IPv4 Prefix is in use. | |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'pnap_network_api'
17
+
18
+ instance = NetworkApi::BgpIPv4Prefix.new(
19
+ ipv4_allocation_id: 6047127fed34ecc3ba8402d2,
20
+ cidr: 10.111.14.40/29,
21
+ status: READY,
22
+ is_bring_your_own_ip: false,
23
+ in_use: false
24
+ )
25
+ ```
26
+
@@ -0,0 +1,46 @@
1
+ # NetworkApi::BgpPeerGroup
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The unique identifier of the BGP Peer Group. | |
8
+ | **status** | **String** | The BGP Peer Group status. Can have one of the following values: &#x60;PENDING&#x60;, &#x60;ON_HOLD&#x60;, &#x60;BUSY&#x60;, &#x60;READY&#x60;, &#x60;ERROR&#x60;, &#x60;PENDING_DELETION&#x60; and &#x60;DELETING&#x60;. | |
9
+ | **location** | **String** | The BGP Peer Group location. Can have one of the following values: &#x60;PHX&#x60;, &#x60;ASH&#x60;, &#x60;SGP&#x60;, &#x60;NLD&#x60;, &#x60;CHI&#x60;, &#x60;SEA&#x60; and &#x60;AUS&#x60;. | |
10
+ | **ipv4_prefixes** | [**Array&lt;BgpIPv4Prefix&gt;**](BgpIPv4Prefix.md) | The List of the BGP Peer Group IPv4 prefixes. | |
11
+ | **target_asn_details** | [**AsnDetails**](AsnDetails.md) | | |
12
+ | **active_asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] |
13
+ | **password** | **String** | The BGP Peer Group password. | |
14
+ | **advertised_routes** | **String** | The Advertised routes for the BGP Peer Group. Can have one of the following values: &#x60;DEFAULT&#x60; and &#x60;NONE&#x60;. | |
15
+ | **rpki_roa_origin_asn** | **Integer** | The RPKI ROA Origin ASN of the BGP Peer Group based on location. | |
16
+ | **e_bgp_multi_hop** | **Integer** | The eBGP Multi-hop of the BGP Peer Group. | |
17
+ | **peering_loopbacks_v4** | **Array&lt;String&gt;** | The IPv4 Peering Loopback addresses of the BGP Peer Group. Valid IP formats are IPv4 addresses. | |
18
+ | **keep_alive_timer_seconds** | **Integer** | The Keep Alive Timer in seconds of the BGP Peer Group. | |
19
+ | **hold_timer_seconds** | **Integer** | The Hold Timer in seconds of the BGP Peer Group. | |
20
+ | **created_on** | **String** | Date and time of creation. | [optional] |
21
+ | **last_updated_on** | **String** | Date and time of last update. | [optional] |
22
+
23
+ ## Example
24
+
25
+ ```ruby
26
+ require 'pnap_network_api'
27
+
28
+ instance = NetworkApi::BgpPeerGroup.new(
29
+ id: 60473c2509268bc77fd06d29,
30
+ status: READY,
31
+ location: ASH,
32
+ ipv4_prefixes: null,
33
+ target_asn_details: null,
34
+ active_asn_details: null,
35
+ password: E!73423ghhjfge45,
36
+ advertised_routes: DEFAULT,
37
+ rpki_roa_origin_asn: 20454,
38
+ e_bgp_multi_hop: 7,
39
+ peering_loopbacks_v4: [&quot;169.254.247.0&quot;,&quot;169.254.247.1&quot;],
40
+ keep_alive_timer_seconds: 10,
41
+ hold_timer_seconds: 30,
42
+ created_on: 2024-03-01T10:30:00Z,
43
+ last_updated_on: 2024-03-01T14:30:00Z
44
+ )
45
+ ```
46
+
@@ -0,0 +1,24 @@
1
+ # NetworkApi::BgpPeerGroupCreate
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **location** | **String** | The BGP Peer Group location. Can have one of the following values: &#x60;PHX&#x60;, &#x60;ASH&#x60;, &#x60;SGP&#x60;, &#x60;NLD&#x60;, &#x60;CHI&#x60;, &#x60;SEA&#x60; and &#x60;AUS&#x60;. | |
8
+ | **asn** | **Integer** | The BGP Peer Group ASN. | [default to 65401] |
9
+ | **password** | **String** | The BGP Peer Group password. | [optional] |
10
+ | **advertised_routes** | **String** | The Advertised routes for the BGP Peer Group. Can have one of the following values: &#x60;DEFAULT&#x60; and &#x60;NONE&#x60;. | [default to &#39;NONE&#39;] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'pnap_network_api'
16
+
17
+ instance = NetworkApi::BgpPeerGroupCreate.new(
18
+ location: ASH,
19
+ asn: 65401,
20
+ password: E!73423ghhjfge45,
21
+ advertised_routes: DEFAULT
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # NetworkApi::BgpPeerGroupPatch
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **asn** | **Integer** | The BGP Peer Group ASN. | [optional] |
8
+ | **password** | **String** | The BGP Peer Group password. | [optional] |
9
+ | **advertised_routes** | **String** | The Advertised routes for the BGP Peer Group. Can have one of the following values: &#x60;DEFAULT&#x60; and &#x60;NONE&#x60;. | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'pnap_network_api'
15
+
16
+ instance = NetworkApi::BgpPeerGroupPatch.new(
17
+ asn: 65401,
18
+ password: E!73423ghijfge45,
19
+ advertised_routes: DEFAULT
20
+ )
21
+ ```
22
+
@@ -13,6 +13,7 @@
13
13
  | **status** | **String** | The status of the public network. Can have one of the following values: &#x60;BUSY&#x60;, &#x60;READY&#x60;, &#x60;DELETING&#x60; or &#x60;ERROR&#x60;. | |
14
14
  | **created_on** | **Time** | Date and time when this public network was created. | |
15
15
  | **ip_blocks** | [**Array&lt;PublicNetworkIpBlock&gt;**](PublicNetworkIpBlock.md) | A list of IP Blocks that are associated with this public network. | |
16
+ | **ra_enabled** | **Boolean** | Boolean indicating whether Router Advertisement is enabled. Only applicable for Network with IPv6 Blocks. | [optional] |
16
17
 
17
18
  ## Example
18
19
 
@@ -28,7 +29,8 @@ instance = NetworkApi::PublicNetwork.new(
28
29
  description: Further details on the network.,
29
30
  status: READY,
30
31
  created_on: 2022-04-05T13:50:30.491Z,
31
- ip_blocks: null
32
+ ip_blocks: null,
33
+ ra_enabled: true
32
34
  )
33
35
  ```
34
36
 
@@ -8,7 +8,8 @@
8
8
  | **description** | **String** | The description of this public network. | [optional] |
9
9
  | **location** | **String** | The location of this public network. Supported values are &#x60;PHX&#x60;, &#x60;ASH&#x60;, &#x60;SGP&#x60;, &#x60;NLD&#x60;, &#x60;CHI&#x60;, &#x60;SEA&#x60; and &#x60;AUS&#x60;. | |
10
10
  | **vlan_id** | **Integer** | The VLAN that will be assigned to this network. | [optional] |
11
- | **ip_blocks** | [**Array&lt;PublicNetworkIpBlock&gt;**](PublicNetworkIpBlock.md) | A list of IP Blocks that will be associated with this public network. | [optional] |
11
+ | **ip_blocks** | [**Array&lt;PublicNetworkIpBlockCreate&gt;**](PublicNetworkIpBlockCreate.md) | A list of IP Blocks that will be associated with this public network. Supported maximum of 10 IPv4 Blocks and 1 IPv6 Block. | [optional] |
12
+ | **ra_enabled** | **Boolean** | Boolean indicating whether Router Advertisement is enabled. Only applicable for Network with IPv6 Blocks. | [optional] |
12
13
 
13
14
  ## Example
14
15
 
@@ -20,7 +21,8 @@ instance = NetworkApi::PublicNetworkCreate.new(
20
21
  description: Further details on the network.,
21
22
  location: PHX,
22
23
  vlan_id: 10,
23
- ip_blocks: null
24
+ ip_blocks: null,
25
+ ra_enabled: true
24
26
  )
25
27
  ```
26
28
 
@@ -5,6 +5,8 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **id** | **String** | The IP Block identifier. | |
8
+ | **cidr** | **String** | The CIDR notation of the IP block. | |
9
+ | **used_ips_count** | **String** | The number of IPs used in the IP block. | |
8
10
 
9
11
  ## Example
10
12
 
@@ -12,7 +14,9 @@
12
14
  require 'pnap_network_api'
13
15
 
14
16
  instance = NetworkApi::PublicNetworkIpBlock.new(
15
- id: 60473a6115e34466c9f8f083
17
+ id: 60473a6115e34466c9f8f083,
18
+ cidr: 10.111.14.0/29,
19
+ used_ips_count: 3
16
20
  )
17
21
  ```
18
22
 
@@ -0,0 +1,18 @@
1
+ # NetworkApi::PublicNetworkIpBlockCreate
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The IP Block identifier. | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'pnap_network_api'
13
+
14
+ instance = NetworkApi::PublicNetworkIpBlockCreate.new(
15
+ id: 60473a6115e34466c9f8f083
16
+ )
17
+ ```
18
+