@scaleway/sdk 2.9.0 → 2.11.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.
package/dist/index.cjs CHANGED
@@ -497,7 +497,7 @@ const assertValidSettings = obj => {
497
497
  }
498
498
  };
499
499
 
500
- const version = 'v2.8.0';
500
+ const version = 'v2.10.0';
501
501
  const userAgent = `scaleway-sdk-js/${version}`;
502
502
 
503
503
  const isBrowser = () =>
@@ -1706,7 +1706,7 @@ const waitForResource = (stop, fetcher, request, options, strategy = createExpon
1706
1706
  *
1707
1707
  * @internal
1708
1708
  */
1709
- let API$w = class API {
1709
+ let API$x = class API {
1710
1710
  constructor(client) {
1711
1711
  this.client = client;
1712
1712
  }
@@ -2079,7 +2079,7 @@ const jsonContentHeaders$u = {
2079
2079
  *
2080
2080
  * User related data. This API allows you to manage projects.
2081
2081
  */
2082
- let API$v = class API extends API$w {
2082
+ let API$w = class API extends API$x {
2083
2083
  /**
2084
2084
  * Create a new Project for an Organization. Deprecated in favor of Account
2085
2085
  * API v3. Generate a new Project for an Organization, specifying its
@@ -2164,9 +2164,9 @@ let API$v = class API extends API$w {
2164
2164
  // This file was automatically generated. DO NOT EDIT.
2165
2165
  // If you have any remark or suggestion do not hesitate to open an issue.
2166
2166
 
2167
- var index_gen$u = /*#__PURE__*/Object.freeze({
2167
+ var index_gen$v = /*#__PURE__*/Object.freeze({
2168
2168
  __proto__: null,
2169
- API: API$v
2169
+ API: API$w
2170
2170
  });
2171
2171
 
2172
2172
  // This file was automatically generated. DO NOT EDIT.
@@ -2214,7 +2214,7 @@ const jsonContentHeaders$t = {
2214
2214
  *
2215
2215
  * This API allows you to manage projects.
2216
2216
  */
2217
- class ProjectAPI extends API$w {
2217
+ class ProjectAPI extends API$x {
2218
2218
  /**
2219
2219
  * Create a new Project for an Organization. Generate a new Project for an
2220
2220
  * Organization, specifying its configuration including name and description.
@@ -2334,7 +2334,7 @@ var validationRules_gen$e = /*#__PURE__*/Object.freeze({
2334
2334
  // This file was automatically generated. DO NOT EDIT.
2335
2335
  // If you have any remark or suggestion do not hesitate to open an issue.
2336
2336
 
2337
- var index_gen$t = /*#__PURE__*/Object.freeze({
2337
+ var index_gen$u = /*#__PURE__*/Object.freeze({
2338
2338
  __proto__: null,
2339
2339
  ProjectAPI: ProjectAPI,
2340
2340
  ValidationRules: validationRules_gen$e
@@ -2342,8 +2342,8 @@ var index_gen$t = /*#__PURE__*/Object.freeze({
2342
2342
 
2343
2343
  var index$y = /*#__PURE__*/Object.freeze({
2344
2344
  __proto__: null,
2345
- v2: index_gen$u,
2346
- v3: index_gen$t
2345
+ v2: index_gen$v,
2346
+ v3: index_gen$u
2347
2347
  });
2348
2348
 
2349
2349
  // This file was automatically generated. DO NOT EDIT.
@@ -2467,7 +2467,7 @@ const jsonContentHeaders$s = {
2467
2467
  };
2468
2468
 
2469
2469
  /** Apple silicon API. */
2470
- let API$u = class API extends API$w {
2470
+ let API$v = class API extends API$x {
2471
2471
  /** Lists the available zones of the API. */
2472
2472
  static LOCALITIES = ['fr-par-3'];
2473
2473
 
@@ -2635,15 +2635,15 @@ let API$u = class API extends API$w {
2635
2635
  // This file was automatically generated. DO NOT EDIT.
2636
2636
  // If you have any remark or suggestion do not hesitate to open an issue.
2637
2637
 
2638
- var index_gen$s = /*#__PURE__*/Object.freeze({
2638
+ var index_gen$t = /*#__PURE__*/Object.freeze({
2639
2639
  __proto__: null,
2640
- API: API$u,
2640
+ API: API$v,
2641
2641
  SERVER_TRANSIENT_STATUSES: SERVER_TRANSIENT_STATUSES$2
2642
2642
  });
2643
2643
 
2644
2644
  var index$x = /*#__PURE__*/Object.freeze({
2645
2645
  __proto__: null,
2646
- v1alpha1: index_gen$s
2646
+ v1alpha1: index_gen$t
2647
2647
  });
2648
2648
 
2649
2649
  // This file was automatically generated. DO NOT EDIT.
@@ -3070,7 +3070,7 @@ const jsonContentHeaders$r = {
3070
3070
  *
3071
3071
  * This API allows to manage your Elastic Metal server.
3072
3072
  */
3073
- let API$t = class API extends API$w {
3073
+ let API$u = class API extends API$x {
3074
3074
  /** Lists the available zones of the API. */
3075
3075
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1', 'nl-ams-2'];
3076
3076
  pageOfListServers = (request = {}) => this.client.fetch({
@@ -3420,7 +3420,7 @@ let API$t = class API extends API$w {
3420
3420
  };
3421
3421
 
3422
3422
  /** Elastic Metal Private Network API. */
3423
- class PrivateNetworkAPI extends API$w {
3423
+ class PrivateNetworkAPI extends API$x {
3424
3424
  /** Lists the available zones of the API. */
3425
3425
  static LOCALITIES = ['fr-par-2'];
3426
3426
 
@@ -3478,7 +3478,7 @@ class PrivateNetworkAPI extends API$w {
3478
3478
  });
3479
3479
  }
3480
3480
 
3481
- class BaremetalV1UtilsAPI extends API$t {
3481
+ class BaremetalV1UtilsAPI extends API$u {
3482
3482
  /**
3483
3483
  * Waits for {@link ServerInstall} to be in a final state.
3484
3484
  *
@@ -3705,7 +3705,7 @@ const unmarshalListDiscountsResponse = data => {
3705
3705
  totalCount: data.total_count
3706
3706
  };
3707
3707
  };
3708
- const unmarshalInvoice = data => {
3708
+ const unmarshalInvoice$1 = data => {
3709
3709
  if (!isJSONObject(data)) {
3710
3710
  throw new TypeError(`Unmarshalling the type 'Invoice' failed as data isn't a dictionary.`);
3711
3711
  }
@@ -3720,12 +3720,12 @@ const unmarshalInvoice = data => {
3720
3720
  totalUntaxed: data.total_untaxed ? unmarshalMoney(data.total_untaxed) : undefined
3721
3721
  };
3722
3722
  };
3723
- const unmarshalListInvoicesResponse = data => {
3723
+ const unmarshalListInvoicesResponse$1 = data => {
3724
3724
  if (!isJSONObject(data)) {
3725
3725
  throw new TypeError(`Unmarshalling the type 'ListInvoicesResponse' failed as data isn't a dictionary.`);
3726
3726
  }
3727
3727
  return {
3728
- invoices: unmarshalArrayOfObject(data.invoices, unmarshalInvoice),
3728
+ invoices: unmarshalArrayOfObject(data.invoices, unmarshalInvoice$1),
3729
3729
  totalCount: data.total_count
3730
3730
  };
3731
3731
  };
@@ -3737,7 +3737,7 @@ const unmarshalListInvoicesResponse = data => {
3737
3737
  *
3738
3738
  * This API allows you to query your consumption.
3739
3739
  */
3740
- let API$s = class API extends API$w {
3740
+ let API$t = class API extends API$x {
3741
3741
  /**
3742
3742
  * Get current month's consumption. The consumption reflects the amount of
3743
3743
  * money you have spent for the products you have used. The consumption value
@@ -3755,7 +3755,7 @@ let API$s = class API extends API$w {
3755
3755
  method: 'GET',
3756
3756
  path: `/billing/v2alpha1/invoices`,
3757
3757
  urlParams: urlParams(['invoice_type', request.invoiceType], ['order_by', request.orderBy], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ['started_after', request.startedAfter], ['started_before', request.startedBefore])
3758
- }, unmarshalListInvoicesResponse);
3758
+ }, unmarshalListInvoicesResponse$1);
3759
3759
 
3760
3760
  /**
3761
3761
  * List invoices. List all your invoices, filtering by `start_date` and
@@ -3798,6 +3798,193 @@ let API$s = class API extends API$w {
3798
3798
  // This file was automatically generated. DO NOT EDIT.
3799
3799
  // If you have any remark or suggestion do not hesitate to open an issue.
3800
3800
 
3801
+ var index_gen$s = /*#__PURE__*/Object.freeze({
3802
+ __proto__: null,
3803
+ API: API$t
3804
+ });
3805
+
3806
+ // This file was automatically generated. DO NOT EDIT.
3807
+ // If you have any remark or suggestion do not hesitate to open an issue.
3808
+ const unmarshalInvoice = data => {
3809
+ if (!isJSONObject(data)) {
3810
+ throw new TypeError(`Unmarshalling the type 'Invoice' failed as data isn't a dictionary.`);
3811
+ }
3812
+ return {
3813
+ billingPeriod: unmarshalDate(data.billing_period),
3814
+ customerName: data.customer_name,
3815
+ dueDate: unmarshalDate(data.due_date),
3816
+ id: data.id,
3817
+ issuedDate: unmarshalDate(data.issued_date),
3818
+ number: data.number,
3819
+ organizationId: data.organization_id,
3820
+ organizationName: data.organization_name,
3821
+ sellerName: data.seller_name,
3822
+ startDate: unmarshalDate(data.start_date),
3823
+ state: data.state,
3824
+ stopDate: unmarshalDate(data.stop_date),
3825
+ totalDiscount: data.total_discount ? unmarshalMoney(data.total_discount) : undefined,
3826
+ totalTax: data.total_tax ? unmarshalMoney(data.total_tax) : undefined,
3827
+ totalTaxed: data.total_taxed ? unmarshalMoney(data.total_taxed) : undefined,
3828
+ totalUndiscount: data.total_undiscount ? unmarshalMoney(data.total_undiscount) : undefined,
3829
+ totalUntaxed: data.total_untaxed ? unmarshalMoney(data.total_untaxed) : undefined,
3830
+ type: data.type
3831
+ };
3832
+ };
3833
+ const unmarshalListConsumptionsResponseConsumption = data => {
3834
+ if (!isJSONObject(data)) {
3835
+ throw new TypeError(`Unmarshalling the type 'ListConsumptionsResponseConsumption' failed as data isn't a dictionary.`);
3836
+ }
3837
+ return {
3838
+ categoryName: data.category_name,
3839
+ productName: data.product_name,
3840
+ projectId: data.project_id,
3841
+ resourceName: data.resource_name,
3842
+ sku: data.sku,
3843
+ value: data.value ? unmarshalMoney(data.value) : undefined
3844
+ };
3845
+ };
3846
+ const unmarshalListConsumptionsResponse = data => {
3847
+ if (!isJSONObject(data)) {
3848
+ throw new TypeError(`Unmarshalling the type 'ListConsumptionsResponse' failed as data isn't a dictionary.`);
3849
+ }
3850
+ return {
3851
+ consumptions: unmarshalArrayOfObject(data.consumptions, unmarshalListConsumptionsResponseConsumption),
3852
+ totalCount: data.total_count,
3853
+ totalDiscountUntaxedValue: data.total_discount_untaxed_value,
3854
+ updatedAt: unmarshalDate(data.updated_at)
3855
+ };
3856
+ };
3857
+ const unmarshalListInvoicesResponse = data => {
3858
+ if (!isJSONObject(data)) {
3859
+ throw new TypeError(`Unmarshalling the type 'ListInvoicesResponse' failed as data isn't a dictionary.`);
3860
+ }
3861
+ return {
3862
+ invoices: unmarshalArrayOfObject(data.invoices, unmarshalInvoice),
3863
+ totalCount: data.total_count
3864
+ };
3865
+ };
3866
+ const unmarshalListTaxesResponseTax = data => {
3867
+ if (!isJSONObject(data)) {
3868
+ throw new TypeError(`Unmarshalling the type 'ListTaxesResponseTax' failed as data isn't a dictionary.`);
3869
+ }
3870
+ return {
3871
+ currency: data.currency,
3872
+ description: data.description,
3873
+ rate: data.rate,
3874
+ totalTaxValue: data.total_tax_value
3875
+ };
3876
+ };
3877
+ const unmarshalListTaxesResponse = data => {
3878
+ if (!isJSONObject(data)) {
3879
+ throw new TypeError(`Unmarshalling the type 'ListTaxesResponse' failed as data isn't a dictionary.`);
3880
+ }
3881
+ return {
3882
+ taxes: unmarshalArrayOfObject(data.taxes, unmarshalListTaxesResponseTax),
3883
+ totalCount: data.total_count,
3884
+ updatedAt: unmarshalDate(data.updated_at)
3885
+ };
3886
+ };
3887
+
3888
+ // This file was automatically generated. DO NOT EDIT.
3889
+ // If you have any remark or suggestion do not hesitate to open an issue.
3890
+ /**
3891
+ * Billing API.
3892
+ *
3893
+ * This API allows you to query your consumption.
3894
+ */
3895
+ let API$s = class API extends API$x {
3896
+ pageOfListConsumptions = (request = {}) => this.client.fetch({
3897
+ method: 'GET',
3898
+ path: `/billing/v2beta1/consumptions`,
3899
+ urlParams: urlParams(['billing_period', request.billingPeriod], ['category_name', request.categoryName], ['order_by', request.orderBy], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ...Object.entries(resolveOneOf([{
3900
+ default: this.client.settings.defaultOrganizationId,
3901
+ param: 'organization_id',
3902
+ value: request.organizationId
3903
+ }, {
3904
+ default: this.client.settings.defaultProjectId,
3905
+ param: 'project_id',
3906
+ value: request.projectId
3907
+ }])))
3908
+ }, unmarshalListConsumptionsResponse);
3909
+
3910
+ /**
3911
+ * Get monthly consumption. Consumption allows you to retrieve your past or
3912
+ * current consumption cost, by project or category.
3913
+ *
3914
+ * @param request - The request {@link ListConsumptionsRequest}
3915
+ * @returns A Promise of ListConsumptionsResponse
3916
+ */
3917
+ listConsumptions = (request = {}) => enrichForPagination('consumptions', this.pageOfListConsumptions, request);
3918
+ pageOfListTaxes = (request = {}) => this.client.fetch({
3919
+ method: 'GET',
3920
+ path: `/billing/v2beta1/taxes`,
3921
+ urlParams: urlParams(['billing_period', request.billingPeriod], ['order_by', request.orderBy], ['organization_id', request.organizationId ?? this.client.settings.defaultOrganizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize])
3922
+ }, unmarshalListTaxesResponse);
3923
+
3924
+ /**
3925
+ * Get monthly consumption taxes. Consumption Tax allows you to retrieve your
3926
+ * past or current tax charges, by project or category.
3927
+ *
3928
+ * @param request - The request {@link ListTaxesRequest}
3929
+ * @returns A Promise of ListTaxesResponse
3930
+ */
3931
+ listTaxes = (request = {}) => enrichForPagination('taxes', this.pageOfListTaxes, request);
3932
+ pageOfListInvoices = (request = {}) => this.client.fetch({
3933
+ method: 'GET',
3934
+ path: `/billing/v2beta1/invoices`,
3935
+ urlParams: urlParams(['billing_period_start_after', request.billingPeriodStartAfter], ['billing_period_start_before', request.billingPeriodStartBefore], ['invoice_type', request.invoiceType], ['order_by', request.orderBy], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize])
3936
+ }, unmarshalListInvoicesResponse);
3937
+
3938
+ /**
3939
+ * List invoices. List all your invoices, filtering by `start_date` and
3940
+ * `invoice_type`. Each invoice has its own ID.
3941
+ *
3942
+ * @param request - The request {@link ListInvoicesRequest}
3943
+ * @returns A Promise of ListInvoicesResponse
3944
+ */
3945
+ listInvoices = (request = {}) => enrichForPagination('invoices', this.pageOfListInvoices, request);
3946
+
3947
+ /**
3948
+ * Export invoices. Export invoices in a CSV file.
3949
+ *
3950
+ * @param request - The request {@link ExportInvoicesRequest}
3951
+ * @returns A Promise of Blob
3952
+ */
3953
+ exportInvoices = (request = {}) => this.client.fetch({
3954
+ method: 'GET',
3955
+ path: `/billing/v2beta1/export-invoices`,
3956
+ urlParams: urlParams(['dl', 1], ['billing_period_start_after', request.billingPeriodStartAfter], ['billing_period_start_before', request.billingPeriodStartBefore], ['file_type', request.fileType], ['invoice_type', request.invoiceType], ['order_by', request.orderBy], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize]),
3957
+ responseType: 'blob'
3958
+ });
3959
+
3960
+ /**
3961
+ * Get an invoice. Get a specific invoice, specified by its ID.
3962
+ *
3963
+ * @param request - The request {@link GetInvoiceRequest}
3964
+ * @returns A Promise of Invoice
3965
+ */
3966
+ getInvoice = request => this.client.fetch({
3967
+ method: 'GET',
3968
+ path: `/billing/v2beta1/invoices/${validatePathParam('invoiceId', request.invoiceId)}`
3969
+ }, unmarshalInvoice);
3970
+
3971
+ /**
3972
+ * Download an invoice. Download a specific invoice, specified by its ID.
3973
+ *
3974
+ * @param request - The request {@link DownloadInvoiceRequest}
3975
+ * @returns A Promise of Blob
3976
+ */
3977
+ downloadInvoice = request => this.client.fetch({
3978
+ method: 'GET',
3979
+ path: `/billing/v2beta1/invoices/${validatePathParam('invoiceId', request.invoiceId)}/download`,
3980
+ urlParams: urlParams(['dl', 1], ['file_type', request.fileType]),
3981
+ responseType: 'blob'
3982
+ });
3983
+ };
3984
+
3985
+ // This file was automatically generated. DO NOT EDIT.
3986
+ // If you have any remark or suggestion do not hesitate to open an issue.
3987
+
3801
3988
  var index_gen$r = /*#__PURE__*/Object.freeze({
3802
3989
  __proto__: null,
3803
3990
  API: API$s
@@ -3805,7 +3992,8 @@ var index_gen$r = /*#__PURE__*/Object.freeze({
3805
3992
 
3806
3993
  var index$u = /*#__PURE__*/Object.freeze({
3807
3994
  __proto__: null,
3808
- v2alpha1: index_gen$r
3995
+ v2alpha1: index_gen$s,
3996
+ v2beta1: index_gen$r
3809
3997
  });
3810
3998
 
3811
3999
  // This file was automatically generated. DO NOT EDIT.
@@ -4002,7 +4190,7 @@ const jsonContentHeaders$q = {
4002
4190
  *
4003
4191
  * This API allows you to use and manage your Block Storage volumes.
4004
4192
  */
4005
- let API$r = class API extends API$w {
4193
+ let API$r = class API extends API$x {
4006
4194
  /** Lists the available zones of the API. */
4007
4195
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1', 'nl-ams-3', 'pl-waw-3'];
4008
4196
  pageOfListVolumeTypes = (request = {}) => this.client.fetch({
@@ -4536,7 +4724,7 @@ const jsonContentHeaders$p = {
4536
4724
  * Scaleway's Cockpit stores metrics and logs and provides a dedicated Grafana
4537
4725
  * for dashboarding to visualize them.
4538
4726
  */
4539
- let API$q = class API extends API$w {
4727
+ let API$q = class API extends API$x {
4540
4728
  /**
4541
4729
  * Activate the Cockpit of the specified Project ID.
4542
4730
  *
@@ -5258,7 +5446,7 @@ const jsonContentHeaders$o = {
5258
5446
  };
5259
5447
 
5260
5448
  /** Serverless Containers API. */
5261
- let API$p = class API extends API$w {
5449
+ let API$p = class API extends API$x {
5262
5450
  /** Lists the available regions of the API. */
5263
5451
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
5264
5452
  pageOfListNamespaces = (request = {}) => this.client.fetch({
@@ -6430,7 +6618,7 @@ const marshalUpdateSnapshotRequest$2 = (request, defaults) => ({
6430
6618
  expires_at: request.expiresAt,
6431
6619
  name: request.name
6432
6620
  });
6433
- const marshalUpdateUserRequest$1 = (request, defaults) => ({
6621
+ const marshalUpdateUserRequest$2 = (request, defaults) => ({
6434
6622
  is_admin: request.isAdmin,
6435
6623
  password: request.password
6436
6624
  });
@@ -6467,7 +6655,7 @@ const jsonContentHeaders$n = {
6467
6655
  };
6468
6656
 
6469
6657
  /** Managed Document Databases API. */
6470
- let API$o = class API extends API$w {
6658
+ let API$o = class API extends API$x {
6471
6659
  /** Lists the available regions of the API. */
6472
6660
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
6473
6661
  pageOfListDatabaseEngines = (request = {}) => this.client.fetch({
@@ -6983,7 +7171,7 @@ let API$o = class API extends API$w {
6983
7171
  * @returns A Promise of User
6984
7172
  */
6985
7173
  updateUser = request => this.client.fetch({
6986
- body: JSON.stringify(marshalUpdateUserRequest$1(request, this.client.settings)),
7174
+ body: JSON.stringify(marshalUpdateUserRequest$2(request, this.client.settings)),
6987
7175
  headers: jsonContentHeaders$n,
6988
7176
  method: 'PATCH',
6989
7177
  path: `/document-db/v1beta1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/instances/${validatePathParam('instanceId', request.instanceId)}/users/${validatePathParam('name', request.name)}`
@@ -8474,7 +8662,7 @@ const jsonContentHeaders$m = {
8474
8662
  *
8475
8663
  * Manage your domains, DNS zones and records with the Domains and DNS API.
8476
8664
  */
8477
- let API$n = class API extends API$w {
8665
+ let API$n = class API extends API$x {
8478
8666
  pageOfListDNSZones = request => this.client.fetch({
8479
8667
  method: 'GET',
8480
8668
  path: `/domain/v2beta1/dns-zones`,
@@ -8826,7 +9014,7 @@ let API$n = class API extends API$w {
8826
9014
  *
8827
9015
  * Manage your domains and contacts.
8828
9016
  */
8829
- class RegistrarAPI extends API$w {
9017
+ class RegistrarAPI extends API$x {
8830
9018
  pageOfListTasks = (request = {}) => this.client.fetch({
8831
9019
  method: 'GET',
8832
9020
  path: `/domain/v2beta1/tasks`,
@@ -9364,7 +9552,7 @@ const jsonContentHeaders$l = {
9364
9552
  };
9365
9553
 
9366
9554
  /** Elastic Metal - Flexible IP API. */
9367
- let API$m = class API extends API$w {
9555
+ let API$m = class API extends API$x {
9368
9556
  /** Lists the available zones of the API. */
9369
9557
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1'];
9370
9558
 
@@ -9981,7 +10169,7 @@ const jsonContentHeaders$k = {
9981
10169
  };
9982
10170
 
9983
10171
  /** Serverless Functions API. */
9984
- let API$l = class API extends API$w {
10172
+ let API$l = class API extends API$x {
9985
10173
  /** Lists the available regions of the API. */
9986
10174
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
9987
10175
  pageOfListNamespaces = (request = {}) => this.client.fetch({
@@ -10968,6 +11156,9 @@ const marshalUpdateSSHKeyRequest = (request, defaults) => ({
10968
11156
  disabled: request.disabled,
10969
11157
  name: request.name
10970
11158
  });
11159
+ const marshalUpdateUserRequest$1 = (request, defaults) => ({
11160
+ tags: request.tags
11161
+ });
10971
11162
 
10972
11163
  // This file was automatically generated. DO NOT EDIT.
10973
11164
  // If you have any remark or suggestion do not hesitate to open an issue.
@@ -10976,7 +11167,7 @@ const jsonContentHeaders$j = {
10976
11167
  };
10977
11168
 
10978
11169
  /** IAM API. */
10979
- let API$k = class API extends API$w {
11170
+ let API$k = class API extends API$x {
10980
11171
  pageOfListSSHKeys = (request = {}) => this.client.fetch({
10981
11172
  method: 'GET',
10982
11173
  path: `/iam/v1alpha1/ssh-keys`,
@@ -11077,6 +11268,19 @@ let API$k = class API extends API$w {
11077
11268
  path: `/iam/v1alpha1/users/${validatePathParam('userId', request.userId)}`
11078
11269
  }, unmarshalUser$1);
11079
11270
 
11271
+ /**
11272
+ * Update a user. Update the parameters of a user, including `tags`.
11273
+ *
11274
+ * @param request - The request {@link UpdateUserRequest}
11275
+ * @returns A Promise of User
11276
+ */
11277
+ updateUser = request => this.client.fetch({
11278
+ body: JSON.stringify(marshalUpdateUserRequest$1(request, this.client.settings)),
11279
+ headers: jsonContentHeaders$j,
11280
+ method: 'PATCH',
11281
+ path: `/iam/v1alpha1/users/${validatePathParam('userId', request.userId)}`
11282
+ }, unmarshalUser$1);
11283
+
11080
11284
  /**
11081
11285
  * Delete a guest user from an Organization. Remove a user from an
11082
11286
  * Organization in which they are a guest. You must define the `user_id` in
@@ -13374,7 +13578,7 @@ const jsonContentHeaders$i = {
13374
13578
  };
13375
13579
 
13376
13580
  /** Instance API. */
13377
- let API$j = class API extends API$w {
13581
+ let API$j = class API extends API$x {
13378
13582
  /** Lists the available zones of the API. */
13379
13583
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'fr-par-3', 'nl-ams-1', 'nl-ams-2', 'nl-ams-3', 'pl-waw-1', 'pl-waw-2', 'pl-waw-3'];
13380
13584
 
@@ -14961,7 +15165,7 @@ const jsonContentHeaders$h = {
14961
15165
  *
14962
15166
  * This API allows you to manage IoT hubs and devices.
14963
15167
  */
14964
- let API$i = class API extends API$w {
15168
+ let API$i = class API extends API$x {
14965
15169
  /** Lists the available regions of the API. */
14966
15170
  static LOCALITIES = ['fr-par'];
14967
15171
  pageOfListHubs = (request = {}) => this.client.fetch({
@@ -15565,7 +15769,7 @@ const jsonContentHeaders$g = {
15565
15769
  * This API allows you to manage IP addresses with Scaleway's IP Address
15566
15770
  * Management tool.
15567
15771
  */
15568
- let API$h = class API extends API$w {
15772
+ let API$h = class API extends API$x {
15569
15773
  /** Lists the available regions of the API. */
15570
15774
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
15571
15775
 
@@ -15858,7 +16062,7 @@ const jsonContentHeaders$f = {
15858
16062
  };
15859
16063
 
15860
16064
  /** IPFS Pinning service API. */
15861
- let API$g = class API extends API$w {
16065
+ let API$g = class API extends API$x {
15862
16066
  /** Lists the available regions of the API. */
15863
16067
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
15864
16068
 
@@ -16040,7 +16244,7 @@ let API$g = class API extends API$w {
16040
16244
  };
16041
16245
 
16042
16246
  /** IPFS Naming service API. */
16043
- class IpnsAPI extends API$w {
16247
+ class IpnsAPI extends API$x {
16044
16248
  /** Lists the available regions of the API. */
16045
16249
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
16046
16250
 
@@ -16264,7 +16468,7 @@ const jsonContentHeaders$e = {
16264
16468
  };
16265
16469
 
16266
16470
  /** Serverless Jobs API. */
16267
- let API$f = class API extends API$w {
16471
+ let API$f = class API extends API$x {
16268
16472
  /** Lists the available regions of the API. */
16269
16473
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
16270
16474
 
@@ -16943,7 +17147,7 @@ const jsonContentHeaders$d = {
16943
17147
  };
16944
17148
 
16945
17149
  /** Kubernetes API. */
16946
- let API$e = class API extends API$w {
17150
+ let API$e = class API extends API$x {
16947
17151
  /** Lists the available regions of the API. */
16948
17152
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
16949
17153
  pageOfListClusters = (request = {}) => this.client.fetch({
@@ -18550,7 +18754,7 @@ const jsonContentHeaders$c = {
18550
18754
  *
18551
18755
  * This API allows you to manage your Scaleway Load Balancer services.
18552
18756
  */
18553
- class ZonedAPI extends API$w {
18757
+ class ZonedAPI extends API$x {
18554
18758
  /** Lists the available zones of the API. */
18555
18759
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1', 'nl-ams-2', 'nl-ams-3', 'pl-waw-1', 'pl-waw-2', 'pl-waw-3'];
18556
18760
  pageOfListLbs = (request = {}) => this.client.fetch({
@@ -18653,7 +18857,7 @@ class ZonedAPI extends API$w {
18653
18857
  pageOfListIPs = (request = {}) => this.client.fetch({
18654
18858
  method: 'GET',
18655
18859
  path: `/lb/v1/zones/${validatePathParam('zone', request.zone ?? this.client.settings.defaultZone)}/ips`,
18656
- urlParams: urlParams(['ip_address', request.ipAddress], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ['project_id', request.projectId])
18860
+ urlParams: urlParams(['ip_address', request.ipAddress], ['ip_type', request.ipType], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ['project_id', request.projectId])
18657
18861
  }, unmarshalListIpsResponse);
18658
18862
 
18659
18863
  /**
@@ -19353,7 +19557,7 @@ class ZonedAPI extends API$w {
19353
19557
  *
19354
19558
  * This API allows you to manage your load balancer service.
19355
19559
  */
19356
- let API$d = class API extends API$w {
19560
+ let API$d = class API extends API$x {
19357
19561
  /** Lists the available regions of the API. */
19358
19562
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
19359
19563
  pageOfListLbs = (request = {}) => this.client.fetch({
@@ -19442,7 +19646,7 @@ let API$d = class API extends API$w {
19442
19646
  pageOfListIPs = (request = {}) => this.client.fetch({
19443
19647
  method: 'GET',
19444
19648
  path: `/lb/v1/regions/${validatePathParam('region', request.region ?? this.client.settings.defaultRegion)}/ips`,
19445
- urlParams: urlParams(['ip_address', request.ipAddress], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ['project_id', request.projectId])
19649
+ urlParams: urlParams(['ip_address', request.ipAddress], ['ip_type', request.ipType], ['organization_id', request.organizationId], ['page', request.page], ['page_size', request.pageSize ?? this.client.settings.defaultPageSize], ['project_id', request.projectId])
19446
19650
  }, unmarshalListIpsResponse);
19447
19651
 
19448
19652
  /**
@@ -20189,7 +20393,7 @@ const unmarshalListImagesResponse$2 = data => {
20189
20393
  // This file was automatically generated. DO NOT EDIT.
20190
20394
  // If you have any remark or suggestion do not hesitate to open an issue.
20191
20395
  /** Marketplace API. */
20192
- let API$c = class API extends API$w {
20396
+ let API$c = class API extends API$x {
20193
20397
  pageOfListImages = (request = {}) => this.client.fetch({
20194
20398
  method: 'GET',
20195
20399
  path: `/marketplace/v1/images`,
@@ -20317,7 +20521,7 @@ const unmarshalListVersionsResponse = data => {
20317
20521
  // This file was automatically generated. DO NOT EDIT.
20318
20522
  // If you have any remark or suggestion do not hesitate to open an issue.
20319
20523
  /** Marketplace API. */
20320
- let API$b = class API extends API$w {
20524
+ let API$b = class API extends API$x {
20321
20525
  pageOfListImages = request => this.client.fetch({
20322
20526
  method: 'GET',
20323
20527
  path: `/marketplace/v2/images`,
@@ -20670,7 +20874,7 @@ const jsonContentHeaders$b = {
20670
20874
  *
20671
20875
  * This API allows you to manage Scaleway Messaging and Queueing NATS accounts.
20672
20876
  */
20673
- class NatsAPI extends API$w {
20877
+ class NatsAPI extends API$x {
20674
20878
  /** Lists the available regions of the API. */
20675
20879
  static LOCALITIES = ['fr-par'];
20676
20880
 
@@ -20806,7 +21010,7 @@ class NatsAPI extends API$w {
20806
21010
  *
20807
21011
  * This API allows you to manage Scaleway Messaging and Queueing SNS brokers.
20808
21012
  */
20809
- class SnsAPI extends API$w {
21013
+ class SnsAPI extends API$x {
20810
21014
  /** Lists the available regions of the API. */
20811
21015
  static LOCALITIES = ['fr-par'];
20812
21016
 
@@ -20928,7 +21132,7 @@ class SnsAPI extends API$w {
20928
21132
  *
20929
21133
  * This API allows you to manage Scaleway Messaging and Queueing SQS brokers.
20930
21134
  */
20931
- class SqsAPI extends API$w {
21135
+ class SqsAPI extends API$x {
20932
21136
  /** Lists the available regions of the API. */
20933
21137
  static LOCALITIES = ['fr-par'];
20934
21138
 
@@ -21220,6 +21424,7 @@ const unmarshalReadReplica = data => {
21220
21424
  return {
21221
21425
  endpoints: unmarshalArrayOfObject(data.endpoints, unmarshalEndpoint$1),
21222
21426
  id: data.id,
21427
+ instanceId: data.instance_id,
21223
21428
  region: data.region,
21224
21429
  sameZone: data.same_zone,
21225
21430
  status: data.status
@@ -21886,7 +22091,7 @@ const jsonContentHeaders$a = {
21886
22091
  };
21887
22092
 
21888
22093
  /** Managed Database for PostgreSQL and MySQL API. */
21889
- let API$a = class API extends API$w {
22094
+ let API$a = class API extends API$x {
21890
22095
  /** Lists the available regions of the API. */
21891
22096
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
21892
22097
  pageOfListDatabaseEngines = (request = {}) => this.client.fetch({
@@ -23103,7 +23308,7 @@ const jsonContentHeaders$9 = {
23103
23308
  };
23104
23309
 
23105
23310
  /** Managed Database for Redis™ API. */
23106
- let API$9 = class API extends API$w {
23311
+ let API$9 = class API extends API$x {
23107
23312
  /** Lists the available zones of the API. */
23108
23313
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1', 'nl-ams-2', 'pl-waw-1', 'pl-waw-2'];
23109
23314
 
@@ -23597,7 +23802,7 @@ const jsonContentHeaders$8 = {
23597
23802
  };
23598
23803
 
23599
23804
  /** Container Registry API. */
23600
- let API$8 = class API extends API$w {
23805
+ let API$8 = class API extends API$x {
23601
23806
  /** Lists the available regions of the API. */
23602
23807
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
23603
23808
  pageOfListNamespaces = (request = {}) => this.client.fetch({
@@ -24012,7 +24217,7 @@ const jsonContentHeaders$7 = {
24012
24217
  * Secret Manager API. This API allows you to conveniently store, access and
24013
24218
  * share sensitive data.
24014
24219
  */
24015
- let API$7 = class API extends API$w {
24220
+ let API$7 = class API extends API$x {
24016
24221
  /** Lists the available regions of the API. */
24017
24222
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
24018
24223
 
@@ -24485,7 +24690,7 @@ const jsonContentHeaders$6 = {
24485
24690
  *
24486
24691
  * This API allows you to manage your Serverless SQL DB databases.
24487
24692
  */
24488
- let API$6 = class API extends API$w {
24693
+ let API$6 = class API extends API$x {
24489
24694
  /** Lists the available regions of the API. */
24490
24695
  static LOCALITIES = ['fr-par'];
24491
24696
 
@@ -24809,7 +25014,7 @@ const jsonContentHeaders$5 = {
24809
25014
  *
24810
25015
  * No Auth Service for end-to-end testing.
24811
25016
  */
24812
- let API$5 = class API extends API$w {
25017
+ let API$5 = class API extends API$x {
24813
25018
  /**
24814
25019
  * Register a user. Register a human and return a access-key and a secret-key
24815
25020
  * that must be used in all other commands.
@@ -25113,7 +25318,12 @@ const marshalCreateEmailRequestAttachment = (request, defaults) => ({
25113
25318
  name: request.name,
25114
25319
  type: request.type
25115
25320
  });
25321
+ const marshalCreateEmailRequestHeader = (request, defaults) => ({
25322
+ key: request.key,
25323
+ value: request.value
25324
+ });
25116
25325
  const marshalCreateEmailRequest = (request, defaults) => ({
25326
+ additional_headers: request.additionalHeaders !== undefined ? request.additionalHeaders.map(elt => marshalCreateEmailRequestHeader(elt)) : undefined,
25117
25327
  attachments: request.attachments !== undefined ? request.attachments.map(elt => marshalCreateEmailRequestAttachment(elt)) : undefined,
25118
25328
  bcc: request.bcc !== undefined ? request.bcc.map(elt => marshalCreateEmailRequestAddress(elt)) : undefined,
25119
25329
  cc: request.cc !== undefined ? request.cc.map(elt => marshalCreateEmailRequestAddress(elt)) : undefined,
@@ -25133,7 +25343,7 @@ const jsonContentHeaders$4 = {
25133
25343
  };
25134
25344
 
25135
25345
  /** Transactional Email API. */
25136
- let API$4 = class API extends API$w {
25346
+ let API$4 = class API extends API$x {
25137
25347
  /** Lists the available regions of the API. */
25138
25348
  static LOCALITIES = ['fr-par'];
25139
25349
 
@@ -25374,7 +25584,7 @@ const jsonContentHeaders$3 = {
25374
25584
  };
25375
25585
 
25376
25586
  /** VPC API. */
25377
- let API$3 = class API extends API$w {
25587
+ let API$3 = class API extends API$x {
25378
25588
  /** Lists the available zones of the API. */
25379
25589
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'fr-par-3', 'nl-ams-1', 'nl-ams-2', 'nl-ams-3', 'pl-waw-1', 'pl-waw-2'];
25380
25590
  pageOfListPrivateNetworks = (request = {}) => this.client.fetch({
@@ -25594,7 +25804,7 @@ const jsonContentHeaders$2 = {
25594
25804
  };
25595
25805
 
25596
25806
  /** VPC API. */
25597
- let API$2 = class API extends API$w {
25807
+ let API$2 = class API extends API$x {
25598
25808
  /** Lists the available regions of the API. */
25599
25809
  static LOCALITIES = ['fr-par', 'nl-ams', 'pl-waw'];
25600
25810
  pageOfListVPCs = (request = {}) => this.client.fetch({
@@ -26191,7 +26401,7 @@ const jsonContentHeaders$1 = {
26191
26401
  };
26192
26402
 
26193
26403
  /** Public Gateways API. */
26194
- let API$1 = class API extends API$w {
26404
+ let API$1 = class API extends API$x {
26195
26405
  /** Lists the available zones of the API. */
26196
26406
  static LOCALITIES = ['fr-par-1', 'fr-par-2', 'nl-ams-1', 'nl-ams-2', 'nl-ams-3', 'pl-waw-1', 'pl-waw-2', 'pl-waw-3'];
26197
26407
  pageOfListGateways = (request = {}) => this.client.fetch({
@@ -26926,7 +27136,7 @@ const jsonContentHeaders = {
26926
27136
  };
26927
27137
 
26928
27138
  /** Web Hosting API. */
26929
- class API extends API$w {
27139
+ class API extends API$x {
26930
27140
  /** Lists the available regions of the API. */
26931
27141
  static LOCALITIES = ['fr-par', 'nl-ams'];
26932
27142
 
@@ -27110,7 +27320,7 @@ var index = /*#__PURE__*/Object.freeze({
27110
27320
  v1alpha1: index_gen
27111
27321
  });
27112
27322
 
27113
- exports.API = API$w;
27323
+ exports.API = API$x;
27114
27324
  exports.Account = index$y;
27115
27325
  exports.AppleSilicon = index$x;
27116
27326
  exports.BareMetal = index$v;