@nexgencloud/hyperstack-sdk-typescript 1.48.0-alpha → 1.50.0-alpha

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/esm/api.d.ts CHANGED
@@ -1556,6 +1556,43 @@ export interface CommonResponseModel {
1556
1556
  */
1557
1557
  'status'?: boolean;
1558
1558
  }
1559
+ /**
1560
+ *
1561
+ * @export
1562
+ * @interface CompatibleFlavor
1563
+ */
1564
+ export interface CompatibleFlavor {
1565
+ /**
1566
+ * JSON constraints object
1567
+ * @type {object}
1568
+ * @memberof CompatibleFlavor
1569
+ */
1570
+ 'constraints'?: object;
1571
+ /**
1572
+ *
1573
+ * @type {number}
1574
+ * @memberof CompatibleFlavor
1575
+ */
1576
+ 'flavor_id'?: number;
1577
+ /**
1578
+ *
1579
+ * @type {string}
1580
+ * @memberof CompatibleFlavor
1581
+ */
1582
+ 'flavor_name'?: string;
1583
+ /**
1584
+ * Either \'hard\' or \'soft\'
1585
+ * @type {string}
1586
+ * @memberof CompatibleFlavor
1587
+ */
1588
+ 'link_type'?: string;
1589
+ /**
1590
+ *
1591
+ * @type {string}
1592
+ * @memberof CompatibleFlavor
1593
+ */
1594
+ 'reason'?: string;
1595
+ }
1559
1596
  /**
1560
1597
  *
1561
1598
  * @export
@@ -3687,6 +3724,31 @@ export interface FlavorObjectFields {
3687
3724
  */
3688
3725
  'ram'?: number;
3689
3726
  }
3727
+ /**
3728
+ *
3729
+ * @export
3730
+ * @interface FlavorRestrictions
3731
+ */
3732
+ export interface FlavorRestrictions {
3733
+ /**
3734
+ * List of compatible flavors with their link metadata
3735
+ * @type {Array<CompatibleFlavor>}
3736
+ * @memberof FlavorRestrictions
3737
+ */
3738
+ 'compatible_flavors'?: Array<CompatibleFlavor>;
3739
+ /**
3740
+ * Whether the image has any flavor restrictions
3741
+ * @type {boolean}
3742
+ * @memberof FlavorRestrictions
3743
+ */
3744
+ 'has_flavor_restrictions'?: boolean;
3745
+ /**
3746
+ * Either \'hard\', \'soft\', or null if no restrictions
3747
+ * @type {string}
3748
+ * @memberof FlavorRestrictions
3749
+ */
3750
+ 'restriction_type'?: string;
3751
+ }
3690
3752
  /**
3691
3753
  *
3692
3754
  * @export
@@ -4137,6 +4199,12 @@ export interface ImageFields {
4137
4199
  * @memberof ImageFields
4138
4200
  */
4139
4201
  'display_size'?: string;
4202
+ /**
4203
+ * Flavor compatibility restrictions for this image
4204
+ * @type {FlavorRestrictions}
4205
+ * @memberof ImageFields
4206
+ */
4207
+ 'flavor_restrictions'?: FlavorRestrictions;
4140
4208
  /**
4141
4209
  *
4142
4210
  * @type {number}
@@ -9383,6 +9451,55 @@ export interface UsersInfoListResponse {
9383
9451
  */
9384
9452
  'users_info'?: UsersInfoFields;
9385
9453
  }
9454
+ /**
9455
+ *
9456
+ * @export
9457
+ * @interface VMQuota
9458
+ */
9459
+ export interface VMQuota {
9460
+ /**
9461
+ *
9462
+ * @type {number}
9463
+ * @memberof VMQuota
9464
+ */
9465
+ 'available_vms'?: number;
9466
+ /**
9467
+ *
9468
+ * @type {string}
9469
+ * @memberof VMQuota
9470
+ */
9471
+ 'cidr'?: string;
9472
+ /**
9473
+ *
9474
+ * @type {number}
9475
+ * @memberof VMQuota
9476
+ */
9477
+ 'current_vms'?: number;
9478
+ /**
9479
+ *
9480
+ * @type {number}
9481
+ * @memberof VMQuota
9482
+ */
9483
+ 'max_vms'?: number;
9484
+ /**
9485
+ *
9486
+ * @type {string}
9487
+ * @memberof VMQuota
9488
+ */
9489
+ 'message'?: string;
9490
+ /**
9491
+ *
9492
+ * @type {number}
9493
+ * @memberof VMQuota
9494
+ */
9495
+ 'percentage_used'?: number;
9496
+ /**
9497
+ *
9498
+ * @type {boolean}
9499
+ * @memberof VMQuota
9500
+ */
9501
+ 'status'?: boolean;
9502
+ }
9386
9503
  /**
9387
9504
  *
9388
9505
  * @export
@@ -9825,6 +9942,24 @@ export interface Voucher {
9825
9942
  * @memberof Voucher
9826
9943
  */
9827
9944
  'id': number;
9945
+ /**
9946
+ * Max redemption count for a General Voucher
9947
+ * @type {number}
9948
+ * @memberof Voucher
9949
+ */
9950
+ 'max_redemption_count'?: number;
9951
+ /**
9952
+ * Current redemption count for a General Voucher
9953
+ * @type {number}
9954
+ * @memberof Voucher
9955
+ */
9956
+ 'redemption_count'?: number;
9957
+ /**
9958
+ * Remaining redemptions
9959
+ * @type {number}
9960
+ * @memberof Voucher
9961
+ */
9962
+ 'remaining_redemptions'?: number;
9828
9963
  /**
9829
9964
  * Voucher status
9830
9965
  * @type {string}
@@ -13926,6 +14061,14 @@ export declare const EnvironmentApiAxiosParamCreator: (configuration?: Configura
13926
14061
  * @throws {RequiredError}
13927
14062
  */
13928
14063
  getEnvironment: (id: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
14064
+ /**
14065
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
14066
+ * @summary Get environment VM quota
14067
+ * @param {number} id
14068
+ * @param {*} [options] Override http request option.
14069
+ * @throws {RequiredError}
14070
+ */
14071
+ getEnvironmentVMQuota: (id: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
13929
14072
  /**
13930
14073
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
13931
14074
  * @summary List environments
@@ -13983,6 +14126,14 @@ export declare const EnvironmentApiFp: (configuration?: Configuration) => {
13983
14126
  * @throws {RequiredError}
13984
14127
  */
13985
14128
  getEnvironment(id: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Environment>>;
14129
+ /**
14130
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
14131
+ * @summary Get environment VM quota
14132
+ * @param {number} id
14133
+ * @param {*} [options] Override http request option.
14134
+ * @throws {RequiredError}
14135
+ */
14136
+ getEnvironmentVMQuota(id: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<VMQuota>>;
13986
14137
  /**
13987
14138
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
13988
14139
  * @summary List environments
@@ -14040,6 +14191,14 @@ export declare const EnvironmentApiFactory: (configuration?: Configuration, base
14040
14191
  * @throws {RequiredError}
14041
14192
  */
14042
14193
  getEnvironment(id: number, options?: RawAxiosRequestConfig): AxiosPromise<Environment>;
14194
+ /**
14195
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
14196
+ * @summary Get environment VM quota
14197
+ * @param {number} id
14198
+ * @param {*} [options] Override http request option.
14199
+ * @throws {RequiredError}
14200
+ */
14201
+ getEnvironmentVMQuota(id: number, options?: RawAxiosRequestConfig): AxiosPromise<VMQuota>;
14043
14202
  /**
14044
14203
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
14045
14204
  * @summary List environments
@@ -14103,6 +14262,15 @@ export declare class EnvironmentApi extends BaseAPI {
14103
14262
  * @memberof EnvironmentApi
14104
14263
  */
14105
14264
  getEnvironment(id: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Environment, any, {}>>;
14265
+ /**
14266
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
14267
+ * @summary Get environment VM quota
14268
+ * @param {number} id
14269
+ * @param {*} [options] Override http request option.
14270
+ * @throws {RequiredError}
14271
+ * @memberof EnvironmentApi
14272
+ */
14273
+ getEnvironmentVMQuota(id: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<VMQuota, any, {}>>;
14106
14274
  /**
14107
14275
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
14108
14276
  * @summary List environments
@@ -17099,10 +17267,11 @@ export declare const VirtualMachineApiAxiosParamCreator: (configuration?: Config
17099
17267
  * Check if a Virtual Machine name is available
17100
17268
  * @summary Fetch virtual machine name availability
17101
17269
  * @param {string} name
17270
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
17102
17271
  * @param {*} [options] Override http request option.
17103
17272
  * @throws {RequiredError}
17104
17273
  */
17105
- checkVMNameAvailability: (name: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
17274
+ checkVMNameAvailability: (name: string, count?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
17106
17275
  /**
17107
17276
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
17108
17277
  * @summary Add firewall rule to virtual machine
@@ -17208,10 +17377,11 @@ export declare const VirtualMachineApiAxiosParamCreator: (configuration?: Config
17208
17377
  * @param {string} [search]
17209
17378
  * @param {string} [environment]
17210
17379
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
17380
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
17211
17381
  * @param {*} [options] Override http request option.
17212
17382
  * @throws {RequiredError}
17213
17383
  */
17214
- listVMs: (page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
17384
+ listVMs: (page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, exactEnvironmentMatch?: boolean, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
17215
17385
  /**
17216
17386
  * Request console logs for a virtual machine
17217
17387
  * @summary Request virtual machine logs
@@ -17282,10 +17452,11 @@ export declare const VirtualMachineApiFp: (configuration?: Configuration) => {
17282
17452
  * Check if a Virtual Machine name is available
17283
17453
  * @summary Fetch virtual machine name availability
17284
17454
  * @param {string} name
17455
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
17285
17456
  * @param {*} [options] Override http request option.
17286
17457
  * @throws {RequiredError}
17287
17458
  */
17288
- checkVMNameAvailability(name: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<NameAvailableModel>>;
17459
+ checkVMNameAvailability(name: string, count?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<NameAvailableModel>>;
17289
17460
  /**
17290
17461
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
17291
17462
  * @summary Add firewall rule to virtual machine
@@ -17391,10 +17562,11 @@ export declare const VirtualMachineApiFp: (configuration?: Configuration) => {
17391
17562
  * @param {string} [search]
17392
17563
  * @param {string} [environment]
17393
17564
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
17565
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
17394
17566
  * @param {*} [options] Override http request option.
17395
17567
  * @throws {RequiredError}
17396
17568
  */
17397
- listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Instances>>;
17569
+ listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, exactEnvironmentMatch?: boolean, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Instances>>;
17398
17570
  /**
17399
17571
  * Request console logs for a virtual machine
17400
17572
  * @summary Request virtual machine logs
@@ -17465,10 +17637,11 @@ export declare const VirtualMachineApiFactory: (configuration?: Configuration, b
17465
17637
  * Check if a Virtual Machine name is available
17466
17638
  * @summary Fetch virtual machine name availability
17467
17639
  * @param {string} name
17640
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
17468
17641
  * @param {*} [options] Override http request option.
17469
17642
  * @throws {RequiredError}
17470
17643
  */
17471
- checkVMNameAvailability(name: string, options?: RawAxiosRequestConfig): AxiosPromise<NameAvailableModel>;
17644
+ checkVMNameAvailability(name: string, count?: string, options?: RawAxiosRequestConfig): AxiosPromise<NameAvailableModel>;
17472
17645
  /**
17473
17646
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
17474
17647
  * @summary Add firewall rule to virtual machine
@@ -17574,10 +17747,11 @@ export declare const VirtualMachineApiFactory: (configuration?: Configuration, b
17574
17747
  * @param {string} [search]
17575
17748
  * @param {string} [environment]
17576
17749
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
17750
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
17577
17751
  * @param {*} [options] Override http request option.
17578
17752
  * @throws {RequiredError}
17579
17753
  */
17580
- listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, options?: RawAxiosRequestConfig): AxiosPromise<Instances>;
17754
+ listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, exactEnvironmentMatch?: boolean, options?: RawAxiosRequestConfig): AxiosPromise<Instances>;
17581
17755
  /**
17582
17756
  * Request console logs for a virtual machine
17583
17757
  * @summary Request virtual machine logs
@@ -17652,11 +17826,12 @@ export declare class VirtualMachineApi extends BaseAPI {
17652
17826
  * Check if a Virtual Machine name is available
17653
17827
  * @summary Fetch virtual machine name availability
17654
17828
  * @param {string} name
17829
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
17655
17830
  * @param {*} [options] Override http request option.
17656
17831
  * @throws {RequiredError}
17657
17832
  * @memberof VirtualMachineApi
17658
17833
  */
17659
- checkVMNameAvailability(name: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<NameAvailableModel, any, {}>>;
17834
+ checkVMNameAvailability(name: string, count?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<NameAvailableModel, any, {}>>;
17660
17835
  /**
17661
17836
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
17662
17837
  * @summary Add firewall rule to virtual machine
@@ -17773,11 +17948,12 @@ export declare class VirtualMachineApi extends BaseAPI {
17773
17948
  * @param {string} [search]
17774
17949
  * @param {string} [environment]
17775
17950
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
17951
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
17776
17952
  * @param {*} [options] Override http request option.
17777
17953
  * @throws {RequiredError}
17778
17954
  * @memberof VirtualMachineApi
17779
17955
  */
17780
- listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Instances, any, {}>>;
17956
+ listVMs(page?: number, pageSize?: number, search?: string, environment?: string, excludeFirewalls?: Array<number>, exactEnvironmentMatch?: boolean, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Instances, any, {}>>;
17781
17957
  /**
17782
17958
  * Request console logs for a virtual machine
17783
17959
  * @summary Request virtual machine logs
package/dist/esm/api.js CHANGED
@@ -8108,6 +8108,37 @@ export const EnvironmentApiAxiosParamCreator = function (configuration) {
8108
8108
  options: localVarRequestOptions,
8109
8109
  };
8110
8110
  }),
8111
+ /**
8112
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
8113
+ * @summary Get environment VM quota
8114
+ * @param {number} id
8115
+ * @param {*} [options] Override http request option.
8116
+ * @throws {RequiredError}
8117
+ */
8118
+ getEnvironmentVMQuota: (id_1, ...args_1) => __awaiter(this, [id_1, ...args_1], void 0, function* (id, options = {}) {
8119
+ // verify required parameter 'id' is not null or undefined
8120
+ assertParamExists('getEnvironmentVMQuota', 'id', id);
8121
+ const localVarPath = `/core/environments/{id}/vm-quota`
8122
+ .replace(`{${"id"}}`, encodeURIComponent(String(id)));
8123
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
8124
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
8125
+ let baseOptions;
8126
+ if (configuration) {
8127
+ baseOptions = configuration.baseOptions;
8128
+ }
8129
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
8130
+ const localVarHeaderParameter = {};
8131
+ const localVarQueryParameter = {};
8132
+ // authentication apiKey required
8133
+ yield setApiKeyToObject(localVarHeaderParameter, "api_key", configuration);
8134
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
8135
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
8136
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
8137
+ return {
8138
+ url: toPathString(localVarUrlObj),
8139
+ options: localVarRequestOptions,
8140
+ };
8141
+ }),
8111
8142
  /**
8112
8143
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
8113
8144
  * @summary List environments
@@ -8256,6 +8287,22 @@ export const EnvironmentApiFp = function (configuration) {
8256
8287
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8257
8288
  });
8258
8289
  },
8290
+ /**
8291
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
8292
+ * @summary Get environment VM quota
8293
+ * @param {number} id
8294
+ * @param {*} [options] Override http request option.
8295
+ * @throws {RequiredError}
8296
+ */
8297
+ getEnvironmentVMQuota(id, options) {
8298
+ return __awaiter(this, void 0, void 0, function* () {
8299
+ var _a, _b, _c;
8300
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.getEnvironmentVMQuota(id, options);
8301
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
8302
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['EnvironmentApi.getEnvironmentVMQuota']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
8303
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8304
+ });
8305
+ },
8259
8306
  /**
8260
8307
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
8261
8308
  * @summary List environments
@@ -8340,6 +8387,16 @@ export const EnvironmentApiFactory = function (configuration, basePath, axios) {
8340
8387
  getEnvironment(id, options) {
8341
8388
  return localVarFp.getEnvironment(id, options).then((request) => request(axios, basePath));
8342
8389
  },
8390
+ /**
8391
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
8392
+ * @summary Get environment VM quota
8393
+ * @param {number} id
8394
+ * @param {*} [options] Override http request option.
8395
+ * @throws {RequiredError}
8396
+ */
8397
+ getEnvironmentVMQuota(id, options) {
8398
+ return localVarFp.getEnvironmentVMQuota(id, options).then((request) => request(axios, basePath));
8399
+ },
8343
8400
  /**
8344
8401
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
8345
8402
  * @summary List environments
@@ -8416,6 +8473,17 @@ export class EnvironmentApi extends BaseAPI {
8416
8473
  getEnvironment(id, options) {
8417
8474
  return EnvironmentApiFp(this.configuration).getEnvironment(id, options).then((request) => request(this.axios, this.basePath));
8418
8475
  }
8476
+ /**
8477
+ * Retrieves VM quota information for a specific environment, including current VM count, maximum VMs allowed, available VMs, and percentage used in an environment before reaching the subnet IP limit.
8478
+ * @summary Get environment VM quota
8479
+ * @param {number} id
8480
+ * @param {*} [options] Override http request option.
8481
+ * @throws {RequiredError}
8482
+ * @memberof EnvironmentApi
8483
+ */
8484
+ getEnvironmentVMQuota(id, options) {
8485
+ return EnvironmentApiFp(this.configuration).getEnvironmentVMQuota(id, options).then((request) => request(this.axios, this.basePath));
8486
+ }
8419
8487
  /**
8420
8488
  * Returns a list of your existing environments, providing the following details for each; environment ID, name, [**region**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/), and the date and time of creation. For more information on environments, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/environments/).
8421
8489
  * @summary List environments
@@ -14083,10 +14151,11 @@ export const VirtualMachineApiAxiosParamCreator = function (configuration) {
14083
14151
  * Check if a Virtual Machine name is available
14084
14152
  * @summary Fetch virtual machine name availability
14085
14153
  * @param {string} name
14154
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
14086
14155
  * @param {*} [options] Override http request option.
14087
14156
  * @throws {RequiredError}
14088
14157
  */
14089
- checkVMNameAvailability: (name_1, ...args_1) => __awaiter(this, [name_1, ...args_1], void 0, function* (name, options = {}) {
14158
+ checkVMNameAvailability: (name_1, count_1, ...args_1) => __awaiter(this, [name_1, count_1, ...args_1], void 0, function* (name, count, options = {}) {
14090
14159
  // verify required parameter 'name' is not null or undefined
14091
14160
  assertParamExists('checkVMNameAvailability', 'name', name);
14092
14161
  const localVarPath = `/core/virtual-machines/name-availability/{name}`
@@ -14102,6 +14171,9 @@ export const VirtualMachineApiAxiosParamCreator = function (configuration) {
14102
14171
  const localVarQueryParameter = {};
14103
14172
  // authentication apiKey required
14104
14173
  yield setApiKeyToObject(localVarHeaderParameter, "api_key", configuration);
14174
+ if (count !== undefined) {
14175
+ localVarQueryParameter['count'] = count;
14176
+ }
14105
14177
  setSearchParams(localVarUrlObj, localVarQueryParameter);
14106
14178
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
14107
14179
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -14500,10 +14572,11 @@ export const VirtualMachineApiAxiosParamCreator = function (configuration) {
14500
14572
  * @param {string} [search]
14501
14573
  * @param {string} [environment]
14502
14574
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
14575
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
14503
14576
  * @param {*} [options] Override http request option.
14504
14577
  * @throws {RequiredError}
14505
14578
  */
14506
- listVMs: (page_1, pageSize_1, search_1, environment_1, excludeFirewalls_1, ...args_1) => __awaiter(this, [page_1, pageSize_1, search_1, environment_1, excludeFirewalls_1, ...args_1], void 0, function* (page, pageSize, search, environment, excludeFirewalls, options = {}) {
14579
+ listVMs: (page_1, pageSize_1, search_1, environment_1, excludeFirewalls_1, exactEnvironmentMatch_1, ...args_1) => __awaiter(this, [page_1, pageSize_1, search_1, environment_1, excludeFirewalls_1, exactEnvironmentMatch_1, ...args_1], void 0, function* (page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options = {}) {
14507
14580
  const localVarPath = `/core/virtual-machines`;
14508
14581
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
14509
14582
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -14531,6 +14604,9 @@ export const VirtualMachineApiAxiosParamCreator = function (configuration) {
14531
14604
  if (excludeFirewalls) {
14532
14605
  localVarQueryParameter['exclude_firewalls'] = excludeFirewalls;
14533
14606
  }
14607
+ if (exactEnvironmentMatch !== undefined) {
14608
+ localVarQueryParameter['exact_environment_match'] = exactEnvironmentMatch;
14609
+ }
14534
14610
  setSearchParams(localVarUrlObj, localVarQueryParameter);
14535
14611
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
14536
14612
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -14751,13 +14827,14 @@ export const VirtualMachineApiFp = function (configuration) {
14751
14827
  * Check if a Virtual Machine name is available
14752
14828
  * @summary Fetch virtual machine name availability
14753
14829
  * @param {string} name
14830
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
14754
14831
  * @param {*} [options] Override http request option.
14755
14832
  * @throws {RequiredError}
14756
14833
  */
14757
- checkVMNameAvailability(name, options) {
14834
+ checkVMNameAvailability(name, count, options) {
14758
14835
  return __awaiter(this, void 0, void 0, function* () {
14759
14836
  var _a, _b, _c;
14760
- const localVarAxiosArgs = yield localVarAxiosParamCreator.checkVMNameAvailability(name, options);
14837
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.checkVMNameAvailability(name, count, options);
14761
14838
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
14762
14839
  const localVarOperationServerBasePath = (_c = (_b = operationServerMap['VirtualMachineApi.checkVMNameAvailability']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
14763
14840
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -14956,13 +15033,14 @@ export const VirtualMachineApiFp = function (configuration) {
14956
15033
  * @param {string} [search]
14957
15034
  * @param {string} [environment]
14958
15035
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
15036
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
14959
15037
  * @param {*} [options] Override http request option.
14960
15038
  * @throws {RequiredError}
14961
15039
  */
14962
- listVMs(page, pageSize, search, environment, excludeFirewalls, options) {
15040
+ listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options) {
14963
15041
  return __awaiter(this, void 0, void 0, function* () {
14964
15042
  var _a, _b, _c;
14965
- const localVarAxiosArgs = yield localVarAxiosParamCreator.listVMs(page, pageSize, search, environment, excludeFirewalls, options);
15043
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options);
14966
15044
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
14967
15045
  const localVarOperationServerBasePath = (_c = (_b = operationServerMap['VirtualMachineApi.listVMs']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
14968
15046
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -15085,11 +15163,12 @@ export const VirtualMachineApiFactory = function (configuration, basePath, axios
15085
15163
  * Check if a Virtual Machine name is available
15086
15164
  * @summary Fetch virtual machine name availability
15087
15165
  * @param {string} name
15166
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
15088
15167
  * @param {*} [options] Override http request option.
15089
15168
  * @throws {RequiredError}
15090
15169
  */
15091
- checkVMNameAvailability(name, options) {
15092
- return localVarFp.checkVMNameAvailability(name, options).then((request) => request(axios, basePath));
15170
+ checkVMNameAvailability(name, count, options) {
15171
+ return localVarFp.checkVMNameAvailability(name, count, options).then((request) => request(axios, basePath));
15093
15172
  },
15094
15173
  /**
15095
15174
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
@@ -15218,11 +15297,12 @@ export const VirtualMachineApiFactory = function (configuration, basePath, axios
15218
15297
  * @param {string} [search]
15219
15298
  * @param {string} [environment]
15220
15299
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
15300
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
15221
15301
  * @param {*} [options] Override http request option.
15222
15302
  * @throws {RequiredError}
15223
15303
  */
15224
- listVMs(page, pageSize, search, environment, excludeFirewalls, options) {
15225
- return localVarFp.listVMs(page, pageSize, search, environment, excludeFirewalls, options).then((request) => request(axios, basePath));
15304
+ listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options) {
15305
+ return localVarFp.listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options).then((request) => request(axios, basePath));
15226
15306
  },
15227
15307
  /**
15228
15308
  * Request console logs for a virtual machine
@@ -15313,12 +15393,13 @@ export class VirtualMachineApi extends BaseAPI {
15313
15393
  * Check if a Virtual Machine name is available
15314
15394
  * @summary Fetch virtual machine name availability
15315
15395
  * @param {string} name
15396
+ * @param {string} [count] Nr of instances to handle (optional, default: 1)
15316
15397
  * @param {*} [options] Override http request option.
15317
15398
  * @throws {RequiredError}
15318
15399
  * @memberof VirtualMachineApi
15319
15400
  */
15320
- checkVMNameAvailability(name, options) {
15321
- return VirtualMachineApiFp(this.configuration).checkVMNameAvailability(name, options).then((request) => request(this.axios, this.basePath));
15401
+ checkVMNameAvailability(name, count, options) {
15402
+ return VirtualMachineApiFp(this.configuration).checkVMNameAvailability(name, count, options).then((request) => request(this.axios, this.basePath));
15322
15403
  }
15323
15404
  /**
15324
15405
  * Creates a firewall rule for a virtual machine. Include the virtual machine ID in the path, and provide the firewall rule configuration in the request body, as detailed below. For additional information on firewall rules, [**click here**](https://docs.hyperstack.cloud/docs/api-reference/core-resources/virtual-machines/vm-firewall-rules/add-firewall-rule-to-vm).
@@ -15458,12 +15539,13 @@ export class VirtualMachineApi extends BaseAPI {
15458
15539
  * @param {string} [search]
15459
15540
  * @param {string} [environment]
15460
15541
  * @param {Array<number>} [excludeFirewalls] Comma-separated list of Security Group IDs to ignore instances attached
15542
+ * @param {boolean} [exactEnvironmentMatch] Flag to filter environment by exact match instead of partial match
15461
15543
  * @param {*} [options] Override http request option.
15462
15544
  * @throws {RequiredError}
15463
15545
  * @memberof VirtualMachineApi
15464
15546
  */
15465
- listVMs(page, pageSize, search, environment, excludeFirewalls, options) {
15466
- return VirtualMachineApiFp(this.configuration).listVMs(page, pageSize, search, environment, excludeFirewalls, options).then((request) => request(this.axios, this.basePath));
15547
+ listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options) {
15548
+ return VirtualMachineApiFp(this.configuration).listVMs(page, pageSize, search, environment, excludeFirewalls, exactEnvironmentMatch, options).then((request) => request(this.axios, this.basePath));
15467
15549
  }
15468
15550
  /**
15469
15551
  * Request console logs for a virtual machine
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nexgencloud/hyperstack-sdk-typescript",
3
- "version": "v1.48.0-alpha",
3
+ "version": "v1.50.0-alpha",
4
4
  "description": "Leverage the Infrahub API and Hyperstack platform to easily create, manage, and scale powerful GPU virtual machines and their associated resources. Access this SDK to automate the deployment of your workloads and streamline your infrastructure management. To contribute, please raise an issue with a bug report, feature request, feedback, or general inquiry.",
5
5
  "author": "OpenAPI-Generator Contributors",
6
6
  "repository": {