@scaleway/sdk 1.2.0 → 1.5.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 (52) hide show
  1. package/dist/api/account/index.js +0 -2
  2. package/dist/api/account/v2/api.gen.js +16 -6
  3. package/dist/api/applesilicon/v1alpha1/api.gen.js +31 -13
  4. package/dist/api/baremetal/index.js +2 -2
  5. package/dist/api/baremetal/v1/api.gen.js +59 -45
  6. package/dist/api/billing/index.js +2 -0
  7. package/dist/api/billing/v2alpha1/api.gen.js +52 -0
  8. package/dist/api/billing/v2alpha1/index.gen.js +3 -0
  9. package/dist/api/billing/v2alpha1/marshalling.gen.js +52 -0
  10. package/dist/api/cockpit/v1beta1/api.gen.js +36 -23
  11. package/dist/api/cockpit/v1beta1/marshalling.gen.js +2 -1
  12. package/dist/api/container/v1beta1/api.gen.js +34 -27
  13. package/dist/api/domain/v2beta1/api.gen.js +89 -78
  14. package/dist/api/flexibleip/v1alpha1/api.gen.js +18 -11
  15. package/dist/api/function/v1beta1/api.gen.js +39 -30
  16. package/dist/api/function/v1beta1/marshalling.gen.js +3 -0
  17. package/dist/api/iam/v1alpha1/api.gen.js +147 -39
  18. package/dist/api/instance/index.js +2 -2
  19. package/dist/api/instance/v1/api.gen.js +72 -61
  20. package/dist/api/iot/v1/api.gen.js +37 -37
  21. package/dist/api/k8s/index.js +2 -2
  22. package/dist/api/k8s/v1/api.gen.js +65 -46
  23. package/dist/api/k8s/v1/marshalling.gen.js +6 -1
  24. package/dist/api/lb/index.js +2 -2
  25. package/dist/api/lb/v1/api.gen.js +231 -110
  26. package/dist/api/lb/v1/marshalling.gen.js +2 -2
  27. package/dist/api/marketplace/v1/api.gen.js +2 -2
  28. package/dist/api/marketplace/v2/api.gen.js +3 -3
  29. package/dist/api/mnq/v1alpha1/api.gen.js +11 -10
  30. package/dist/api/rdb/v1/api.gen.js +195 -63
  31. package/dist/api/rdb/v1/marshalling.gen.js +16 -2
  32. package/dist/api/redis/v1/api.gen.js +88 -25
  33. package/dist/api/registry/v1/api.gen.js +15 -13
  34. package/dist/api/secret/v1alpha1/api.gen.js +43 -18
  35. package/dist/api/tem/v1alpha1/api.gen.js +26 -14
  36. package/dist/api/tem/v1alpha1/marshalling.gen.js +2 -0
  37. package/dist/api/test/v1/api.gen.js +11 -10
  38. package/dist/api/vpc/v1/api.gen.js +5 -5
  39. package/dist/api/vpcgw/v1/api.gen.js +130 -41
  40. package/dist/api/vpcgw/v1/marshalling.gen.js +18 -15
  41. package/dist/api/webhosting/v1alpha1/api.gen.js +10 -9
  42. package/dist/api/webhosting/v1alpha1/marshalling.gen.js +3 -1
  43. package/dist/helpers/is-response.js +10 -0
  44. package/dist/index.cjs +1598 -928
  45. package/dist/index.d.ts +3970 -2960
  46. package/dist/index.js +44 -42
  47. package/dist/scw/constants.js +1 -1
  48. package/dist/scw/fetch/response-parser.js +2 -1
  49. package/package.json +2 -2
  50. package/dist/api/account/v2alpha1/api.gen.js +0 -85
  51. package/dist/api/account/v2alpha1/index.js +0 -1
  52. package/dist/api/account/v2alpha1/marshalling.gen.js +0 -57
@@ -11,9 +11,9 @@ const jsonContentHeaders = {
11
11
  };
12
12
 
13
13
  /**
14
- * Transactional Email API.
14
+ * Transactional Email API documentation.
15
15
  *
16
- * Tem.
16
+ * Tem. Transactional Email API documentation.
17
17
  */
18
18
  class API extends API$1 {
19
19
  constructor() {
@@ -21,7 +21,10 @@ class API extends API$1 {
21
21
  super(...arguments);
22
22
  _this = this;
23
23
  /**
24
- * Send an email
24
+ * Send an email. You must specify the `region`, the sender and the
25
+ * recipient's information and the `project_id` to send an email from a
26
+ * checked domain. The subject of the email must contain at least 6
27
+ * characters.
25
28
  *
26
29
  * @param request - The request {@link CreateEmailRequest}
27
30
  * @returns A Promise of CreateEmailResponse
@@ -33,7 +36,8 @@ class API extends API$1 {
33
36
  path: `/transactional-email/v1alpha1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/emails`
34
37
  }, unmarshalCreateEmailResponse);
35
38
  /**
36
- * Get information about an email
39
+ * Get an email. Retrieve information about a specific email using the
40
+ * `email_id` and `region` parameters.
37
41
  *
38
42
  * @param request - The request {@link GetEmailRequest}
39
43
  * @returns A Promise of Email
@@ -57,12 +61,12 @@ class API extends API$1 {
57
61
  return _this.client.fetch({
58
62
  method: 'GET',
59
63
  path: `/transactional-email/v1alpha1/regions/${validatePathParam('region', request.region ?? _this.client.settings.defaultRegion)}/emails`,
60
- urlParams: urlParams(['domain_id', request.domainId], ['mail_from', request.mailFrom], ['mail_to', request.mailTo], ['message_id', request.messageId], ['page', request.page], ['page_size', request.pageSize ?? _this.client.settings.defaultPageSize], ['project_id', request.projectId], ['since', request.since], ['statuses', request.statuses], ['until', request.until])
64
+ urlParams: urlParams(['domain_id', request.domainId], ['mail_from', request.mailFrom], ['mail_to', request.mailTo], ['message_id', request.messageId], ['page', request.page], ['page_size', request.pageSize ?? _this.client.settings.defaultPageSize], ['project_id', request.projectId], ['since', request.since], ['statuses', request.statuses], ['subject', request.subject], ['until', request.until])
61
65
  }, unmarshalListEmailsResponse);
62
66
  };
63
67
  /**
64
- * List emails sent from a domain and/or for a project and/or for an
65
- * organization
68
+ * List emails. Retrieve the list of emails sent from a specific domain or for
69
+ * a specific Project or Organization. You must specify the `region`.
66
70
  *
67
71
  * @param request - The request {@link ListEmailsRequest}
68
72
  * @returns A Promise of ListEmailsResponse
@@ -74,7 +78,7 @@ class API extends API$1 {
74
78
  return enrichForPagination('emails', _this.pageOfListEmails, request);
75
79
  };
76
80
  /**
77
- * Get statistics on the email statuses
81
+ * Email statuses. Get information on your emails' statuses.
78
82
  *
79
83
  * @param request - The request {@link GetStatisticsRequest}
80
84
  * @returns A Promise of Statistics
@@ -90,7 +94,9 @@ class API extends API$1 {
90
94
  }, unmarshalStatistics);
91
95
  };
92
96
  /**
93
- * Try to cancel an email if it has not yet been sent
97
+ * Cancel an email. You can cancel the sending of an email if it has not been
98
+ * sent yet. You must specify the `region` and the `email_id` of the email you
99
+ * want to cancel.
94
100
  *
95
101
  * @param request - The request {@link CancelEmailRequest}
96
102
  * @returns A Promise of Email
@@ -102,7 +108,8 @@ class API extends API$1 {
102
108
  path: `/transactional-email/v1alpha1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/emails/${validatePathParam('emailId', request.emailId)}/cancel`
103
109
  }, unmarshalEmail);
104
110
  /**
105
- * Register a domain in a project
111
+ * Register a domain in a project. You must specify the `region`, `project_id`
112
+ * and `domain_name` to register a domain in a specific Project.
106
113
  *
107
114
  * @param request - The request {@link CreateDomainRequest}
108
115
  * @returns A Promise of Domain
@@ -114,7 +121,8 @@ class API extends API$1 {
114
121
  path: `/transactional-email/v1alpha1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/domains`
115
122
  }, unmarshalDomain);
116
123
  /**
117
- * Get information about a domain
124
+ * Get information about a domain. Retrieve information about a specific
125
+ * domain using the `region` and `domain_id` parameters.
118
126
  *
119
127
  * @param request - The request {@link GetDomainRequest}
120
128
  * @returns A Promise of Domain
@@ -142,7 +150,8 @@ class API extends API$1 {
142
150
  }, unmarshalListDomainsResponse);
143
151
  };
144
152
  /**
145
- * List domains in a project and/or in an organization
153
+ * List domains. Retrieve domains in a specific project or in a specific
154
+ * Organization using the `region` parameter.
146
155
  *
147
156
  * @param request - The request {@link ListDomainsRequest}
148
157
  * @returns A Promise of ListDomainsResponse
@@ -154,7 +163,9 @@ class API extends API$1 {
154
163
  return enrichForPagination('domains', _this.pageOfListDomains, request);
155
164
  };
156
165
  /**
157
- * Revoke a domain
166
+ * Delete a domain. You must specify the domain you want to delete by the
167
+ * `region` and `domain_id`. Deleting a domain is permanent and cannot be
168
+ * undone.
158
169
  *
159
170
  * @param request - The request {@link RevokeDomainRequest}
160
171
  * @returns A Promise of Domain
@@ -166,7 +177,8 @@ class API extends API$1 {
166
177
  path: `/transactional-email/v1alpha1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/domains/${validatePathParam('domainId', request.domainId)}/revoke`
167
178
  }, unmarshalDomain);
168
179
  /**
169
- * Ask for an immediate check of a domain (DNS check)
180
+ * Domain DNS check. Perform an immediate DNS check of a domain using the
181
+ * `region` and `domain_id` parameters.
170
182
  *
171
183
  * @param request - The request {@link CheckDomainRequest}
172
184
  * @returns A Promise of Domain
@@ -60,6 +60,7 @@ const unmarshalEmail = data => {
60
60
  rcptType: data.rcpt_type,
61
61
  status: data.status,
62
62
  statusDetails: data.status_details,
63
+ subject: data.subject,
63
64
  tryCount: data.try_count,
64
65
  updatedAt: unmarshalDate(data.updated_at)
65
66
  };
@@ -113,6 +114,7 @@ const marshalCreateEmailRequestAttachment = (request, defaults) => ({
113
114
  type: request.type
114
115
  });
115
116
  const marshalCreateDomainRequest = (request, defaults) => ({
117
+ accept_tos: request.acceptTos,
116
118
  domain_name: request.domainName,
117
119
  project_id: request.projectId ?? defaults.defaultProjectId
118
120
  });
@@ -13,8 +13,8 @@ const jsonContentHeaders = {
13
13
  /**
14
14
  * Fake API.
15
15
  *
16
- * Test is a fake service that aim to manage fake humans. It is used for
17
- * internal and public end-to-end tests.
16
+ * No Auth Service for end-to-end testing. Test is a fake service that aim to
17
+ * manage fake humans. It is used for internal and public end-to-end tests.
18
18
  *
19
19
  * This service don't use the Scaleway authentication service but a fake one. It
20
20
  * allows to use this test service publicly without requiring a Scaleway
@@ -30,8 +30,8 @@ class API extends API$1 {
30
30
  super(...arguments);
31
31
  _this = this;
32
32
  /**
33
- * Register a human and return a access-key and a secret-key that must be used
34
- * in all other commands.
33
+ * Register a user. Register a human and return a access-key and a secret-key
34
+ * that must be used in all other commands.
35
35
  *
36
36
  * Hint: you can use other test commands by setting the SCW_SECRET_KEY env
37
37
  * variable.
@@ -56,7 +56,7 @@ class API extends API$1 {
56
56
  }, unmarshalListHumansResponse);
57
57
  };
58
58
  /**
59
- * List all your humans
59
+ * List all your humans.
60
60
  *
61
61
  * @param request - The request {@link ListHumansRequest}
62
62
  * @returns A Promise of ListHumansResponse
@@ -68,7 +68,7 @@ class API extends API$1 {
68
68
  return enrichForPagination('humans', _this.pageOfListHumans, request);
69
69
  };
70
70
  /**
71
- * Get the human details associated with the given id.
71
+ * Get human details. Get the human details associated with the given id.
72
72
  *
73
73
  * @param request - The request {@link GetHumanRequest}
74
74
  * @returns A Promise of Human
@@ -86,7 +86,7 @@ class API extends API$1 {
86
86
  */
87
87
  this.waitForHuman = (request, options) => waitForResource((options == null ? void 0 : options.stop) ?? (res => Promise.resolve(!HUMAN_TRANSIENT_STATUSES.includes(res.status))), this.getHuman, request, options);
88
88
  /**
89
- * Create a new human
89
+ * Create a new human.
90
90
  *
91
91
  * @param request - The request {@link CreateHumanRequest}
92
92
  * @returns A Promise of Human
@@ -98,7 +98,7 @@ class API extends API$1 {
98
98
  path: `/test/v1/humans`
99
99
  }, unmarshalHuman);
100
100
  /**
101
- * Update the human associated with the given id.
101
+ * Update an existing human. Update the human associated with the given id.
102
102
  *
103
103
  * @param request - The request {@link UpdateHumanRequest}
104
104
  * @returns A Promise of Human
@@ -110,7 +110,7 @@ class API extends API$1 {
110
110
  path: `/test/v1/humans/${validatePathParam('humanId', request.humanId)}`
111
111
  }, unmarshalHuman);
112
112
  /**
113
- * Delete the human associated with the given id.
113
+ * Delete an existing human. Delete the human associated with the given id.
114
114
  *
115
115
  * @param request - The request {@link DeleteHumanRequest}
116
116
  * @returns A Promise of Human
@@ -120,7 +120,8 @@ class API extends API$1 {
120
120
  path: `/test/v1/humans/${validatePathParam('humanId', request.humanId)}`
121
121
  }, unmarshalHuman);
122
122
  /**
123
- * Start a one hour running for the given human.
123
+ * Start a 1h running for the given human. Start a one hour running for the
124
+ * given human.
124
125
  *
125
126
  * @param request - The request {@link RunHumanRequest}
126
127
  * @returns A Promise of Human
@@ -25,7 +25,7 @@ class API extends API$1 {
25
25
  }, unmarshalListPrivateNetworksResponse);
26
26
  };
27
27
  /**
28
- * List private networks
28
+ * List private networks.
29
29
  *
30
30
  * @param request - The request {@link ListPrivateNetworksRequest}
31
31
  * @returns A Promise of ListPrivateNetworksResponse
@@ -37,7 +37,7 @@ class API extends API$1 {
37
37
  return enrichForPagination('privateNetworks', _this.pageOfListPrivateNetworks, request);
38
38
  };
39
39
  /**
40
- * Create a private network
40
+ * Create a private network.
41
41
  *
42
42
  * @param request - The request {@link CreatePrivateNetworkRequest}
43
43
  * @returns A Promise of PrivateNetwork
@@ -54,7 +54,7 @@ class API extends API$1 {
54
54
  }, unmarshalPrivateNetwork);
55
55
  };
56
56
  /**
57
- * Get a private network
57
+ * Get a private network.
58
58
  *
59
59
  * @param request - The request {@link GetPrivateNetworkRequest}
60
60
  * @returns A Promise of PrivateNetwork
@@ -64,7 +64,7 @@ class API extends API$1 {
64
64
  path: `/vpc/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/private-networks/${validatePathParam('privateNetworkId', request.privateNetworkId)}`
65
65
  }, unmarshalPrivateNetwork);
66
66
  /**
67
- * Update private network
67
+ * Update private network.
68
68
  *
69
69
  * @param request - The request {@link UpdatePrivateNetworkRequest}
70
70
  * @returns A Promise of PrivateNetwork
@@ -76,7 +76,7 @@ class API extends API$1 {
76
76
  path: `/vpc/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/private-networks/${validatePathParam('privateNetworkId', request.privateNetworkId)}`
77
77
  }, unmarshalPrivateNetwork);
78
78
  /**
79
- * Delete a private network
79
+ * Delete a private network.
80
80
  *
81
81
  * @param request - The request {@link DeletePrivateNetworkRequest}
82
82
  */
@@ -10,7 +10,7 @@ const jsonContentHeaders = {
10
10
  'Content-Type': 'application/json; charset=utf-8'
11
11
  };
12
12
 
13
- /** VPC Public Gateway API. */
13
+ /** Public Gateways API. */
14
14
  class API extends API$1 {
15
15
  constructor() {
16
16
  var _this;
@@ -27,7 +27,9 @@ class API extends API$1 {
27
27
  }, unmarshalListGatewaysResponse);
28
28
  };
29
29
  /**
30
- * List VPC Public Gateways
30
+ * List Public Gateways. List Public Gateways in a given Scaleway Organization
31
+ * or Project. By default, results are displayed in ascending order of
32
+ * creation date.
31
33
  *
32
34
  * @param request - The request {@link ListGatewaysRequest}
33
35
  * @returns A Promise of ListGatewaysResponse
@@ -39,7 +41,9 @@ class API extends API$1 {
39
41
  return enrichForPagination('gateways', _this.pageOfListGateways, request);
40
42
  };
41
43
  /**
42
- * Get a VPC Public Gateway
44
+ * Get a Public Gateway. Get details of a Public Gateway, specified by its
45
+ * gateway ID. The response object contains full details of the gateway,
46
+ * including its **name**, **type**, **status** and more.
43
47
  *
44
48
  * @param request - The request {@link GetGatewayRequest}
45
49
  * @returns A Promise of Gateway
@@ -57,7 +61,9 @@ class API extends API$1 {
57
61
  */
58
62
  this.waitForGateway = (request, options) => waitForResource((options == null ? void 0 : options.stop) ?? (res => Promise.resolve(!GATEWAY_TRANSIENT_STATUSES.includes(res.status))), this.getGateway, request, options);
59
63
  /**
60
- * Create a VPC Public Gateway
64
+ * Create a Public Gateway. Create a new Public Gateway in the specified
65
+ * Scaleway Project, defining its **name**, **type** and other configuration
66
+ * details such as whether to enable SSH bastion.
61
67
  *
62
68
  * @param request - The request {@link CreateGatewayRequest}
63
69
  * @returns A Promise of Gateway
@@ -69,7 +75,9 @@ class API extends API$1 {
69
75
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/gateways`
70
76
  }, unmarshalGateway);
71
77
  /**
72
- * Update a VPC Public Gateway
78
+ * Update a Public Gateway. Update the parameters of an existing Public
79
+ * Gateway, for example, its **name**, **tags**, **SSH bastion
80
+ * configuration**, and **DNS servers**.
73
81
  *
74
82
  * @param request - The request {@link UpdateGatewayRequest}
75
83
  * @returns A Promise of Gateway
@@ -81,7 +89,8 @@ class API extends API$1 {
81
89
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/gateways/${validatePathParam('gatewayId', request.gatewayId)}`
82
90
  }, unmarshalGateway);
83
91
  /**
84
- * Delete a VPC Public Gateway
92
+ * Delete a Public Gateway. Delete an existing Public Gateway, specified by
93
+ * its gateway ID. This action is irreversible.
85
94
  *
86
95
  * @param request - The request {@link DeleteGatewayRequest}
87
96
  */
@@ -91,7 +100,10 @@ class API extends API$1 {
91
100
  urlParams: urlParams(['cleanup_dhcp', request.cleanupDhcp])
92
101
  });
93
102
  /**
94
- * Upgrade a VPC Public Gateway to the latest version
103
+ * Upgrade a Public Gateway to the latest version. Upgrade a given Public
104
+ * Gateway to the newest software version. This applies the latest bugfixes
105
+ * and features to your Public Gateway, but its service will be interrupted
106
+ * during the update.
95
107
  *
96
108
  * @param request - The request {@link UpgradeGatewayRequest}
97
109
  * @returns A Promise of Gateway
@@ -113,7 +125,14 @@ class API extends API$1 {
113
125
  }, unmarshalListGatewayNetworksResponse);
114
126
  };
115
127
  /**
116
- * List gateway connections to Private Networks
128
+ * List Public Gateway connections to Private Networks. List the connections
129
+ * between Public Gateways and Private Networks (a connection = a
130
+ * GatewayNetwork). You can choose to filter by `gateway-id` to list all
131
+ * Private Networks attached to the specified Public Gateway, or by
132
+ * `private_network_id` to list all Public Gateways attached to the specified
133
+ * Private Network. Other query parameters are also available. The result is
134
+ * an array of GatewayNetwork objects, each giving details of the connection
135
+ * between a given Public Gateway and a given Private Network.
117
136
  *
118
137
  * @param request - The request {@link ListGatewayNetworksRequest}
119
138
  * @returns A Promise of ListGatewayNetworksResponse
@@ -125,7 +144,12 @@ class API extends API$1 {
125
144
  return enrichForPagination('gatewayNetworks', _this.pageOfListGatewayNetworks, request);
126
145
  };
127
146
  /**
128
- * Get a gateway connection to a Private Network
147
+ * Get a Public Gateway connection to a Private Network. Get details of a
148
+ * given connection between a Public Gateway and a Private Network (this
149
+ * connection = a GatewayNetwork), specified by its `gateway_network_id`. The
150
+ * response object contains details of the connection including the IDs of the
151
+ * Public Gateway and Private Network, the dates the connection was
152
+ * created/updated and its configuration settings.
129
153
  *
130
154
  * @param request - The request {@link GetGatewayNetworkRequest}
131
155
  * @returns A Promise of GatewayNetwork
@@ -143,7 +167,10 @@ class API extends API$1 {
143
167
  */
144
168
  this.waitForGatewayNetwork = (request, options) => waitForResource((options == null ? void 0 : options.stop) ?? (res => Promise.resolve(!GATEWAY_NETWORK_TRANSIENT_STATUSES.includes(res.status))), this.getGatewayNetwork, request, options);
145
169
  /**
146
- * Attach a gateway to a Private Network
170
+ * Attach a Public Gateway to a Private Network. Attach a specific Public
171
+ * Gateway to a specific Private Network (create a GatewayNetwork). You can
172
+ * configure parameters for the connection including DHCP settings, whether to
173
+ * enable masquerade (dynamic NAT), and more.
147
174
  *
148
175
  * @param request - The request {@link CreateGatewayNetworkRequest}
149
176
  * @returns A Promise of GatewayNetwork
@@ -155,7 +182,11 @@ class API extends API$1 {
155
182
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/gateway-networks`
156
183
  }, unmarshalGatewayNetwork);
157
184
  /**
158
- * Update a gateway connection to a Private Network
185
+ * Update a Public Gateway's connection to a Private Network. Update the
186
+ * configuration parameters of a connection between a given Public Gateway and
187
+ * Private Network (the connection = a GatewayNetwork). Updatable parameters
188
+ * include DHCP settings and whether to enable traffic masquerade (dynamic
189
+ * NAT).
159
190
  *
160
191
  * @param request - The request {@link UpdateGatewayNetworkRequest}
161
192
  * @returns A Promise of GatewayNetwork
@@ -167,7 +198,9 @@ class API extends API$1 {
167
198
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/gateway-networks/${validatePathParam('gatewayNetworkId', request.gatewayNetworkId)}`
168
199
  }, unmarshalGatewayNetwork);
169
200
  /**
170
- * Detach a gateway from a Private Network
201
+ * Detach a Public Gateway from a Private Network. Detach a given Public
202
+ * Gateway from a given Private Network, i.e. delete a GatewayNetwork
203
+ * specified by a gateway_network_id.
171
204
  *
172
205
  * @param request - The request {@link DeleteGatewayNetworkRequest}
173
206
  */
@@ -187,7 +220,14 @@ class API extends API$1 {
187
220
  }, unmarshalListDHCPsResponse);
188
221
  };
189
222
  /**
190
- * List DHCP configurations
223
+ * List DHCP configurations. List DHCP configurations, optionally filtering by
224
+ * Organization, Project, Public Gateway IP address or more. The response is
225
+ * an array of DHCP configuration objects, each identified by a DHCP ID and
226
+ * containing configuration settings for the assignment of IP addresses to
227
+ * devices on a Private Network attached to a Public Gateway. Note that the
228
+ * response does not contain the IDs of any Private Network / Public Gateway
229
+ * the configuration is attached to. Use the `List Public Gateway connections
230
+ * to Private Networks` method for that purpose, filtering on DHCP ID.
191
231
  *
192
232
  * @param request - The request {@link ListDHCPsRequest}
193
233
  * @returns A Promise of ListDHCPsResponse
@@ -199,7 +239,13 @@ class API extends API$1 {
199
239
  return enrichForPagination('dhcps', _this.pageOfListDHCPs, request);
200
240
  };
201
241
  /**
202
- * Get a DHCP configuration
242
+ * Get a DHCP configuration. Get a DHCP configuration object, identified by
243
+ * its DHCP ID. The response object contains configuration settings for the
244
+ * assignment of IP addresses to devices on a Private Network attached to a
245
+ * Public Gateway. Note that the response does not contain the IDs of any
246
+ * Private Network / Public Gateway the configuration is attached to. Use the
247
+ * `List Public Gateway connections to Private Networks` method for that
248
+ * purpose, filtering on DHCP ID.
203
249
  *
204
250
  * @param request - The request {@link GetDHCPRequest}
205
251
  * @returns A Promise of DHCP
@@ -209,7 +255,13 @@ class API extends API$1 {
209
255
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcps/${validatePathParam('dhcpId', request.dhcpId)}`
210
256
  }, unmarshalDHCP);
211
257
  /**
212
- * Create a DHCP configuration
258
+ * Create a DHCP configuration. Create a new DHCP configuration object,
259
+ * containing settings for the assignment of IP addresses to devices on a
260
+ * Private Network attached to a Public Gateway. The response object includes
261
+ * the ID of the DHCP configuration object. You can use this ID as part of a
262
+ * call to `Create a Public Gateway connection to a Private Network` or
263
+ * `Update a Public Gateway connection to a Private Network` to directly apply
264
+ * this DHCP configuration.
213
265
  *
214
266
  * @param request - The request {@link CreateDHCPRequest}
215
267
  * @returns A Promise of DHCP
@@ -221,7 +273,8 @@ class API extends API$1 {
221
273
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcps`
222
274
  }, unmarshalDHCP);
223
275
  /**
224
- * Update a DHCP configuration
276
+ * Update a DHCP configuration. Update a DHCP configuration object, identified
277
+ * by its DHCP ID.
225
278
  *
226
279
  * @param request - The request {@link UpdateDHCPRequest}
227
280
  * @returns A Promise of DHCP
@@ -233,7 +286,9 @@ class API extends API$1 {
233
286
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcps/${validatePathParam('dhcpId', request.dhcpId)}`
234
287
  }, unmarshalDHCP);
235
288
  /**
236
- * Delete a DHCP configuration
289
+ * Delete a DHCP configuration. Delete a DHCP configuration object, identified
290
+ * by its DHCP ID. Note that you cannot delete a DHCP configuration object
291
+ * that is currently being used by a Gateway Network.
237
292
  *
238
293
  * @param request - The request {@link DeleteDHCPRequest}
239
294
  */
@@ -252,7 +307,9 @@ class API extends API$1 {
252
307
  }, unmarshalListDHCPEntriesResponse);
253
308
  };
254
309
  /**
255
- * List DHCP entries
310
+ * List DHCP entries. List DHCP entries, whether dynamically assigned and/or
311
+ * statically reserved. DHCP entries can be filtered by the Gateway Network
312
+ * they are on, their MAC address, IP address, type or hostname.
256
313
  *
257
314
  * @param request - The request {@link ListDHCPEntriesRequest}
258
315
  * @returns A Promise of ListDHCPEntriesResponse
@@ -264,7 +321,7 @@ class API extends API$1 {
264
321
  return enrichForPagination('dhcpEntries', _this.pageOfListDHCPEntries, request);
265
322
  };
266
323
  /**
267
- * Get DHCP entries
324
+ * Get a DHCP entry. Get a DHCP entry, specified by its DHCP entry ID.
268
325
  *
269
326
  * @param request - The request {@link GetDHCPEntryRequest}
270
327
  * @returns A Promise of DHCPEntry
@@ -274,7 +331,11 @@ class API extends API$1 {
274
331
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcp-entries/${validatePathParam('dhcpEntryId', request.dhcpEntryId)}`
275
332
  }, unmarshalDHCPEntry);
276
333
  /**
277
- * Create a static DHCP reservation
334
+ * Create a DHCP entry. Create a static DHCP reservation, specifying the
335
+ * Gateway Network for the reservation, the MAC address of the target device
336
+ * and the IP address to assign this device. The response is a DHCP entry
337
+ * object, confirming the ID and configuration details of the static DHCP
338
+ * reservation.
278
339
  *
279
340
  * @param request - The request {@link CreateDHCPEntryRequest}
280
341
  * @returns A Promise of DHCPEntry
@@ -286,7 +347,11 @@ class API extends API$1 {
286
347
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcp-entries`
287
348
  }, unmarshalDHCPEntry);
288
349
  /**
289
- * Update a DHCP entry
350
+ * Update a DHCP entry. Update the IP address for a DHCP entry, specified by
351
+ * its DHCP entry ID. You can update an existing DHCP entry of any type
352
+ * (`reservation` (static), `lease` (dynamic) or `unknown`), but in manually
353
+ * updating the IP address the entry will necessarily be of type `reservation`
354
+ * after the update.
290
355
  *
291
356
  * @param request - The request {@link UpdateDHCPEntryRequest}
292
357
  * @returns A Promise of DHCPEntry
@@ -298,10 +363,10 @@ class API extends API$1 {
298
363
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcp-entries/${validatePathParam('dhcpEntryId', request.dhcpEntryId)}`
299
364
  }, unmarshalDHCPEntry);
300
365
  /**
301
- * Set the list of DHCP reservations attached to a Gateway Network.
302
- * Reservations are identified by their MAC address, and will sync the current
303
- * DHCP entry list to the given list, creating, updating or deleting DHCP
304
- * entries.
366
+ * Set all DHCP reservations on a Gateway Network. Set the list of DHCP
367
+ * reservations attached to a Gateway Network. Reservations are identified by
368
+ * their MAC address, and will sync the current DHCP entry list to the given
369
+ * list, creating, updating or deleting DHCP entries accordingly.
305
370
  *
306
371
  * @param request - The request {@link SetDHCPEntriesRequest}
307
372
  * @returns A Promise of SetDHCPEntriesResponse
@@ -313,7 +378,9 @@ class API extends API$1 {
313
378
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/dhcp-entries`
314
379
  }, unmarshalSetDHCPEntriesResponse);
315
380
  /**
316
- * Delete a DHCP reservation
381
+ * Delete a DHCP entry. Delete a static DHCP reservation, identified by its
382
+ * DHCP entry ID. Note that you cannot delete DHCP entries of type `lease`,
383
+ * these are deleted automatically when their time-to-live expires.
317
384
  *
318
385
  * @param request - The request {@link DeleteDHCPEntryRequest}
319
386
  */
@@ -332,7 +399,9 @@ class API extends API$1 {
332
399
  }, unmarshalListPATRulesResponse);
333
400
  };
334
401
  /**
335
- * List PAT rules
402
+ * List PAT rules. List PAT rules. You can filter by gateway ID to list all
403
+ * PAT rules for a particular gateway, or filter for PAT rules targeting a
404
+ * specific IP address or using a specific protocol.
336
405
  *
337
406
  * @param request - The request {@link ListPATRulesRequest}
338
407
  * @returns A Promise of ListPATRulesResponse
@@ -344,7 +413,10 @@ class API extends API$1 {
344
413
  return enrichForPagination('patRules', _this.pageOfListPATRules, request);
345
414
  };
346
415
  /**
347
- * Get a PAT rule
416
+ * Get a PAT rule. Get a PAT rule, specified by its PAT rule ID. The response
417
+ * object gives full details of the PAT rule, including the Public Gateway it
418
+ * belongs to and the configuration settings in terms of public / private
419
+ * ports, private IP and protocol.
348
420
  *
349
421
  * @param request - The request {@link GetPATRuleRequest}
350
422
  * @returns A Promise of PATRule
@@ -354,7 +426,9 @@ class API extends API$1 {
354
426
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/pat-rules/${validatePathParam('patRuleId', request.patRuleId)}`
355
427
  }, unmarshalPATRule);
356
428
  /**
357
- * Create a PAT rule
429
+ * Create a PAT rule. Create a new PAT rule on a specified Public Gateway,
430
+ * defining the protocol to use, public port to listen on, and private port /
431
+ * IP address to map to.
358
432
  *
359
433
  * @param request - The request {@link CreatePATRuleRequest}
360
434
  * @returns A Promise of PATRule
@@ -366,7 +440,9 @@ class API extends API$1 {
366
440
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/pat-rules`
367
441
  }, unmarshalPATRule);
368
442
  /**
369
- * Update a PAT rule
443
+ * Update a PAT rule. Update a PAT rule, specified by its PAT rule ID.
444
+ * Configuration settings including private/public port, private IP address
445
+ * and protocol can all be updated.
370
446
  *
371
447
  * @param request - The request {@link UpdatePATRuleRequest}
372
448
  * @returns A Promise of PATRule
@@ -378,9 +454,10 @@ class API extends API$1 {
378
454
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/pat-rules/${validatePathParam('patRuleId', request.patRuleId)}`
379
455
  }, unmarshalPATRule);
380
456
  /**
381
- * Set the list of PAT rules attached to a Gateway. Rules are identified by
382
- * their public port and protocol. This will sync the current PAT rule list
383
- * with the givent list, creating, updating or deleting PAT rules.
457
+ * Set all PAT rules. Set a definitive list of PAT rules attached to a Public
458
+ * Gateway. Each rule is identified by its public port and protocol. This will
459
+ * sync the current PAT rule list on the gateway with the new list, creating,
460
+ * updating or deleting PAT rules accordingly.
384
461
  *
385
462
  * @param request - The request {@link SetPATRulesRequest}
386
463
  * @returns A Promise of SetPATRulesResponse
@@ -392,7 +469,8 @@ class API extends API$1 {
392
469
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/pat-rules`
393
470
  }, unmarshalSetPATRulesResponse);
394
471
  /**
395
- * Delete a PAT rule
472
+ * Delete a PAT rule. Delete a PAT rule, identified by its PAT rule ID. This
473
+ * action is irreversible.
396
474
  *
397
475
  * @param request - The request {@link DeletePATRuleRequest}
398
476
  */
@@ -401,7 +479,9 @@ class API extends API$1 {
401
479
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/pat-rules/${validatePathParam('patRuleId', request.patRuleId)}`
402
480
  });
403
481
  /**
404
- * List VPC Public Gateway types
482
+ * List Public Gateway types. List the different Public Gateway commercial
483
+ * offer types available at Scaleway. The response is an array of objects
484
+ * describing the name and technical details of each available gateway type.
405
485
  *
406
486
  * @param request - The request {@link ListGatewayTypesRequest}
407
487
  * @returns A Promise of ListGatewayTypesResponse
@@ -426,7 +506,8 @@ class API extends API$1 {
426
506
  }, unmarshalListIPsResponse);
427
507
  };
428
508
  /**
429
- * List IPs
509
+ * List IPs. List Public Gateway flexible IP addresses. A number of filter
510
+ * options are available for limiting results in the response.
430
511
  *
431
512
  * @param request - The request {@link ListIPsRequest}
432
513
  * @returns A Promise of ListIPsResponse
@@ -438,7 +519,10 @@ class API extends API$1 {
438
519
  return enrichForPagination('ips', _this.pageOfListIPs, request);
439
520
  };
440
521
  /**
441
- * Get an IP
522
+ * Get an IP. Get details of a Public Gateway flexible IP address, identified
523
+ * by its IP ID. The response object contains information including which (if
524
+ * any) Public Gateway using this IP address, the reverse and various other
525
+ * metadata.
442
526
  *
443
527
  * @param request - The request {@link GetIPRequest}
444
528
  * @returns A Promise of IP
@@ -448,7 +532,8 @@ class API extends API$1 {
448
532
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/ips/${validatePathParam('ipId', request.ipId)}`
449
533
  }, unmarshalIP);
450
534
  /**
451
- * Reserve an IP
535
+ * Reserve an IP. Create (reserve) a new flexible IP address that can be used
536
+ * for a Public Gateway in a specified Scaleway Project.
452
537
  *
453
538
  * @param request - The request {@link CreateIPRequest}
454
539
  * @returns A Promise of IP
@@ -465,7 +550,8 @@ class API extends API$1 {
465
550
  }, unmarshalIP);
466
551
  };
467
552
  /**
468
- * Update an IP
553
+ * Update an IP. Update details of an existing flexible IP address, including
554
+ * its tags, reverse and the Public Gateway it is assigned to.
469
555
  *
470
556
  * @param request - The request {@link UpdateIPRequest}
471
557
  * @returns A Promise of IP
@@ -477,7 +563,8 @@ class API extends API$1 {
477
563
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/ips/${validatePathParam('ipId', request.ipId)}`
478
564
  }, unmarshalIP);
479
565
  /**
480
- * Delete an IP
566
+ * Delete an IP. Delete a flexible IP address from your account. This action
567
+ * is irreversible.
481
568
  *
482
569
  * @param request - The request {@link DeleteIPRequest}
483
570
  */
@@ -486,7 +573,9 @@ class API extends API$1 {
486
573
  path: `/vpc-gw/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/ips/${validatePathParam('ipId', request.ipId)}`
487
574
  });
488
575
  /**
489
- * Refresh SSH keys of a VPC Public Gateway
576
+ * Refresh a Public Gateway's SSH keys. Refresh the SSH keys of a given Public
577
+ * Gateway, specified by its gateway ID. This adds any new SSH keys in the
578
+ * gateway's Scaleway Project to the gateway itself.
490
579
  *
491
580
  * @param request - The request {@link RefreshSSHKeysRequest}
492
581
  * @returns A Promise of Gateway