@cycleplatform/api-client-typescript 0.3.13 → 0.3.14

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 (2) hide show
  1. package/package.json +1 -1
  2. package/src/generated/types.ts +1340 -153
@@ -301,6 +301,26 @@ export interface paths {
301
301
  patch?: never;
302
302
  trace?: never;
303
303
  };
304
+ "/v1/changelog": {
305
+ parameters: {
306
+ query?: never;
307
+ header?: never;
308
+ path?: never;
309
+ cookie?: never;
310
+ };
311
+ /**
312
+ * Get Changelog
313
+ * @description Requires the `platform-changelog-view` capability.
314
+ */
315
+ get: operations["getChangelog"];
316
+ put?: never;
317
+ post?: never;
318
+ delete?: never;
319
+ options?: never;
320
+ head?: never;
321
+ patch?: never;
322
+ trace?: never;
323
+ };
304
324
  "/v1/billing/invoices": {
305
325
  parameters: {
306
326
  query?: never;
@@ -1307,7 +1327,7 @@ export interface paths {
1307
1327
  * Lookup TLS Certificate
1308
1328
  * @description Lookup and retrieve a TLS certificate bundle for a specified domain.
1309
1329
  *
1310
- * Requires the `dns-view` capability.
1330
+ * If the `private` parameter is set to `true`, the private key, bundle, and/or CSR will be included. Including these private fields requires the `dns-certs-view` capability.
1311
1331
  *
1312
1332
  */
1313
1333
  get: operations["lookupTLSCertificate"];
@@ -2649,6 +2669,130 @@ export interface paths {
2649
2669
  patch?: never;
2650
2670
  trace?: never;
2651
2671
  };
2672
+ "/v1/infrastructure/external-volumes": {
2673
+ parameters: {
2674
+ query?: never;
2675
+ header?: never;
2676
+ path?: never;
2677
+ cookie?: never;
2678
+ };
2679
+ /**
2680
+ * List External Volumes
2681
+ * @description Requires the `external-volumes-view` capability.
2682
+ */
2683
+ get: operations["getExternalVolumes"];
2684
+ put?: never;
2685
+ /**
2686
+ * Create External Volume
2687
+ * @description Requires the `external-volumes-manage` capability.
2688
+ */
2689
+ post: operations["createExternalVolume"];
2690
+ delete?: never;
2691
+ options?: never;
2692
+ head?: never;
2693
+ patch?: never;
2694
+ trace?: never;
2695
+ };
2696
+ "/v1/infrastructure/external-volumes/{externalVolumeId}": {
2697
+ parameters: {
2698
+ query?: never;
2699
+ header?: never;
2700
+ path?: never;
2701
+ cookie?: never;
2702
+ };
2703
+ /**
2704
+ * Get External Volume
2705
+ * @description Retrieves a single external volume by ID.
2706
+ *
2707
+ * Requires the `external-volumes-view` capability.
2708
+ *
2709
+ */
2710
+ get: operations["getExternalVolume"];
2711
+ put?: never;
2712
+ post?: never;
2713
+ /**
2714
+ * Delete External Volume
2715
+ * @description Requires the `external-volumes-manage` capability.
2716
+ */
2717
+ delete: operations["deleteExternalVolume"];
2718
+ options?: never;
2719
+ head?: never;
2720
+ /**
2721
+ * Update External Volume
2722
+ * @description Updates the specified external volume.
2723
+ *
2724
+ * Requires the `external-volumes-manage` capability.
2725
+ *
2726
+ */
2727
+ patch: operations["updateExternalVolume"];
2728
+ trace?: never;
2729
+ };
2730
+ "/v1/infrastructure/external-volumes/sources": {
2731
+ parameters: {
2732
+ query?: never;
2733
+ header?: never;
2734
+ path?: never;
2735
+ cookie?: never;
2736
+ };
2737
+ /**
2738
+ * List External Volume Sources
2739
+ * @description Requires the `external-volumes-view` capability.
2740
+ */
2741
+ get: operations["getExternalVolumeSources"];
2742
+ put?: never;
2743
+ post?: never;
2744
+ delete?: never;
2745
+ options?: never;
2746
+ head?: never;
2747
+ patch?: never;
2748
+ trace?: never;
2749
+ };
2750
+ "/v1/infrastructure/external-volumes/{externalVolumeId}/access": {
2751
+ parameters: {
2752
+ query?: never;
2753
+ header?: never;
2754
+ path?: never;
2755
+ cookie?: never;
2756
+ };
2757
+ get?: never;
2758
+ put?: never;
2759
+ post?: never;
2760
+ delete?: never;
2761
+ options?: never;
2762
+ head?: never;
2763
+ /**
2764
+ * Update External Volume Access
2765
+ * @description Updates the ACL of the specified external volume.
2766
+ *
2767
+ * Requires the `external-volumes-manage` capability.
2768
+ *
2769
+ */
2770
+ patch: operations["updateExternalVolumeAccess"];
2771
+ trace?: never;
2772
+ };
2773
+ "/v1/infrastructure/external-volumes/{externalVolumeId}/tasks": {
2774
+ parameters: {
2775
+ query?: never;
2776
+ header?: never;
2777
+ path?: never;
2778
+ cookie?: never;
2779
+ };
2780
+ get?: never;
2781
+ put?: never;
2782
+ /**
2783
+ * Create External Volume Job
2784
+ * @description Create a job for an external volume.
2785
+ *
2786
+ * Requires the `external-volumes-manage` capability.
2787
+ *
2788
+ */
2789
+ post: operations["createExternalVolumeJob"];
2790
+ delete?: never;
2791
+ options?: never;
2792
+ head?: never;
2793
+ patch?: never;
2794
+ trace?: never;
2795
+ };
2652
2796
  "/v1/infrastructure/auto-scale/groups": {
2653
2797
  parameters: {
2654
2798
  query?: never;
@@ -3199,6 +3343,26 @@ export interface paths {
3199
3343
  patch?: never;
3200
3344
  trace?: never;
3201
3345
  };
3346
+ "/v1/infrastructure/ips/pools/{poolId}/tasks": {
3347
+ parameters: {
3348
+ query?: never;
3349
+ header?: never;
3350
+ path?: never;
3351
+ cookie?: never;
3352
+ };
3353
+ get?: never;
3354
+ put?: never;
3355
+ /**
3356
+ * Create IP Pool Job
3357
+ * @description Used to perform different actions on a given IP pool. Requires the `ips-manage` capability.
3358
+ */
3359
+ post: operations["createIpPoolJob"];
3360
+ delete?: never;
3361
+ options?: never;
3362
+ head?: never;
3363
+ patch?: never;
3364
+ trace?: never;
3365
+ };
3202
3366
  "/v1/jobs": {
3203
3367
  parameters: {
3204
3368
  query?: never;
@@ -4231,7 +4395,7 @@ export interface components {
4231
4395
  * @description A capability that a user or API key that represents what an API key or a user can do.
4232
4396
  * @enum {string}
4233
4397
  */
4234
- Capability: "api-keys-manage" | "apionly-jobs-view" | "apionly-notifications-listen" | "autoscale-groups-manage" | "autoscale-groups-view" | "billing-credits-view" | "billing-invoices-pay" | "billing-invoices-view" | "billing-methods-manage" | "billing-services-manage" | "billing-services-view" | "containers-backups-manage" | "containers-backups-view" | "containers-console" | "containers-deploy" | "containers-instances-migrate" | "containers-lock" | "containers-ssh" | "containers-manage" | "containers-view" | "containers-functions-trigger" | "containers-volumes-manage" | "containers-volumes-view" | "dns-certs-view" | "dns-manage" | "dns-view" | "environments-deployments-manage" | "environments-manage" | "environments-scopedvariables-manage" | "environments-scopedvariables-view" | "environments-services-manage" | "environments-view" | "environments-vpn" | "environments-vpn-manage" | "hubs-delete" | "hubs-integrations-manage" | "hubs-integrations-view" | "hubs-invites-manage" | "hubs-invites-send" | "hubs-members-manage" | "hubs-members-view" | "hubs-roles-manage" | "hubs-roles-view" | "hubs-usage-view" | "hubs-update" | "hubs-auditlog-view" | "images-manage" | "images-sources-manage" | "images-sources-view" | "images-view" | "ips-manage" | "servers-console" | "servers-decommission" | "servers-login" | "clusters-manage" | "clusters-view" | "servers-provision" | "servers-manage" | "servers-view" | "monitor-manage" | "monitor-view" | "pipelines-manage" | "pipelines-trigger" | "pipelines-view" | "sdn-networks-manage" | "sdn-networks-view" | "security-manage" | "security-view" | "stacks-builds-deploy" | "stacks-builds-manage" | "stacks-manage" | "stacks-view" | "virtual-machines-view" | "virtual-machines-manage" | "virtual-machines-deploy" | "virtual-machines-console" | "virtual-machines-lock" | "virtual-machines-ssh-keys-manage";
4398
+ Capability: "external-volumes-view" | "external-volumes-manage" | "api-keys-manage" | "apionly-jobs-view" | "apionly-notifications-listen" | "autoscale-groups-manage" | "autoscale-groups-view" | "billing-credits-view" | "billing-invoices-pay" | "billing-invoices-view" | "billing-methods-manage" | "billing-services-manage" | "billing-services-view" | "containers-backups-manage" | "containers-backups-view" | "containers-console" | "containers-deploy" | "containers-instances-migrate" | "containers-lock" | "containers-ssh" | "containers-manage" | "containers-view" | "containers-functions-trigger" | "containers-volumes-manage" | "containers-volumes-view" | "dns-certs-view" | "dns-manage" | "dns-view" | "environments-deployments-manage" | "environments-manage" | "environments-scopedvariables-manage" | "environments-scopedvariables-view" | "environments-services-manage" | "environments-view" | "environments-vpn" | "environments-vpn-manage" | "hubs-delete" | "hubs-integrations-manage" | "hubs-integrations-view" | "hubs-invites-manage" | "hubs-invites-send" | "hubs-members-manage" | "hubs-members-view" | "hubs-roles-manage" | "hubs-roles-view" | "hubs-usage-view" | "hubs-update" | "hubs-auditlog-view" | "images-manage" | "images-sources-manage" | "images-sources-view" | "images-view" | "ips-manage" | "servers-console" | "servers-decommission" | "servers-login" | "clusters-manage" | "clusters-view" | "servers-provision" | "servers-manage" | "servers-view" | "san-manage" | "san-view" | "monitor-manage" | "monitor-view" | "pipelines-manage" | "pipelines-trigger" | "pipelines-view" | "sdn-networks-manage" | "sdn-networks-view" | "security-manage" | "security-view" | "stacks-builds-deploy" | "stacks-builds-manage" | "stacks-manage" | "stacks-view" | "virtual-machines-view" | "virtual-machines-manage" | "virtual-machines-deploy" | "virtual-machines-console" | "virtual-machines-lock" | "virtual-machines-ssh-keys-manage" | "virtual-machines-root-pw-view" | "virtual-machines-root-pw-view-temp";
4235
4399
  /**
4236
4400
  * Error
4237
4401
  * @description The Cycle API uses standard HTTP response codes to indicate the success or failure of an API request. Codes in the `2xx` range indicate success. Codes in the `4xx` range indicate a request that failed due to input, and codes in the `5xx` range indicate an error on Cycle's part (rare).
@@ -4247,7 +4411,7 @@ export interface components {
4247
4411
  * @description A Cycle standard error code.
4248
4412
  * @enum {string}
4249
4413
  */
4250
- code?: "400.invalid-syntax" | "401.auth-invalid" | "401.auth-expired" | "401.no-cookie" | "401.unauthorized-application" | "403.mismatch" | "403.wrong-hub" | "403.not-ready" | "403.expired" | "403.restricted-portal" | "403.permissions" | "403.invalid-ip" | "403.invalid-state" | "403.not-approved" | "403.not-allowed" | "403.platform-disabled" | "403.2fa-required" | "403.2fa-failed" | "403.new-application-capabilities" | "403.tier-restricted" | "404.hub" | "404.hub.invitation" | "404.hub.integration" | "404.hub.role" | "404.sdn.network" | "404.environment" | "404.environment.scoped-variable" | "404.hub.api-key" | "404.uri" | "404.provider" | "404.stack" | "404.community.thread" | "404.community.thread.reply" | "404.survey" | "404.survey-response" | "404.notification" | "404.stack-build" | "404.image" | "404.image.source" | "404.image.build-log" | "404.job" | "404.billing.order" | "404.billing.service" | "404.billing.credit" | "404.billing.invoice" | "404.billing.tier" | "404.billing.support" | "404.billing.payment-method" | "404.billing.promo-code" | "404.node" | "404.infrastructure.location" | "404.infrastructure.ips.pool" | "404.infrastructure.provider" | "404.infrastructure.server" | "404.infrastructure.cluster" | "404.infrastructure.autoscale.group" | "404.infrastructure.model" | "404.monitoring.logs.analytics.rule" | "404.account" | "404.container" | "404.container.backup" | "404.vpn.account" | "404.instance" | "404.pipeline" | "404.pipeline.run" | "404.pipeline.key" | "404.dns.zone" | "404.dns.record" | "404.cluster" | "404.platform-build" | "404.cycleos-build" | "404.email-verification" | "404.hub.membership" | "404.announcement" | "404.ha-service.session" | "404.virtual-machine" | "404.virtual-machine.ssh-key" | "404.sales.lead" | "404.stack.build-log" | "409.duplicate-found" | "415.invalid-content-type" | "422.missing-argument" | "422.invalid-argument" | "422.invalid-input" | "422.max-exceeded" | "422.not-compatible" | "422.already-exists" | "429.rate-limiting" | "500.database" | "500.database-insert" | "500.database-update" | "500.database-remove" | "500.jobd" | "500.unknown" | "500.dev" | "500.email" | "503.not-ready" | "503.not-enabled" | "503.dependency-not-enabled" | "504.not-available";
4414
+ code?: "400.invalid-syntax" | "401.auth-invalid" | "401.auth-expired" | "401.no-cookie" | "401.unauthorized-application" | "403.mismatch" | "403.wrong-hub" | "403.not-ready" | "403.expired" | "403.restricted-portal" | "403.permissions" | "403.invalid-ip" | "403.invalid-state" | "403.not-approved" | "403.not-allowed" | "403.platform-disabled" | "403.2fa-required" | "403.2fa-failed" | "403.new-application-capabilities" | "403.tier-restricted" | "404.hub" | "404.hub.invitation" | "404.hub.integration" | "404.hub.role" | "404.sdn.network" | "404.environment" | "404.environment.scoped-variable" | "404.hub.api-key" | "404.uri" | "404.provider" | "404.stack" | "404.community.thread" | "404.community.thread.reply" | "404.survey" | "404.survey-response" | "404.notification" | "404.stack-build" | "404.image" | "404.image.source" | "404.image.build-log" | "404.job" | "404.billing.order" | "404.billing.service" | "404.billing.credit" | "404.billing.invoice" | "404.billing.tier" | "404.billing.support" | "404.billing.payment-method" | "404.billing.promo-code" | "404.node" | "404.infrastructure.location" | "404.infrastructure.ips.pool" | "404.infrastructure.provider" | "404.infrastructure.server" | "404.infrastructure.cluster" | "404.infrastructure.autoscale.group" | "404.infrastructure.model" | "404.infrastructure.external-volume" | "404.monitoring.logs.analytics.rule" | "404.account" | "404.container" | "404.container.backup" | "404.vpn.account" | "404.instance" | "404.pipeline" | "404.pipeline.run" | "404.pipeline.key" | "404.dns.zone" | "404.dns.record" | "404.cluster" | "404.platform-build" | "404.cycleos-build" | "404.email-verification" | "404.hub.membership" | "404.announcement" | "404.ha-service.session" | "404.virtual-machine" | "404.virtual-machine.ssh-key" | "404.sales.lead" | "404.stack.build-log" | "409.duplicate-found" | "415.invalid-content-type" | "422.missing-argument" | "422.invalid-argument" | "422.invalid-input" | "422.max-exceeded" | "422.not-compatible" | "422.already-exists" | "429.rate-limiting" | "500.database" | "500.database-insert" | "500.database-update" | "500.database-remove" | "500.jobd" | "500.unknown" | "500.dev" | "500.email" | "503.not-ready" | "503.not-enabled" | "503.dependency-not-enabled" | "504.not-available";
4251
4415
  /** @description The main text describing the error. */
4252
4416
  title?: string;
4253
4417
  /** @description A more detailed description of the error. */
@@ -4941,6 +5105,82 @@ export interface components {
4941
5105
  current: "new" | "live" | "expired";
4942
5106
  } & components["schemas"]["State"];
4943
5107
  };
5108
+ /** ChangelogEntryState */
5109
+ ChangelogEntryState: {
5110
+ /**
5111
+ * @description The current state of the changelog entry.
5112
+ * @enum {string}
5113
+ */
5114
+ current: "new" | "approved" | "published" | "deleted";
5115
+ } & components["schemas"]["State"];
5116
+ /**
5117
+ * UserScope
5118
+ * @description A type of creator and a matching identifier.
5119
+ */
5120
+ UserScope: {
5121
+ /**
5122
+ * @description The type of user that created the resource.
5123
+ * @enum {string}
5124
+ */
5125
+ type: "account" | "environment" | "platform" | "platform-pipeline" | "employee" | "api-key" | "visitor";
5126
+ id: components["schemas"]["ID"];
5127
+ };
5128
+ /**
5129
+ * ChangelogEntry
5130
+ * @description A changelog entry released by the Cycle team.
5131
+ */
5132
+ ChangelogEntry: {
5133
+ id: components["schemas"]["ID"];
5134
+ /** @description The title of the changelog entry. */
5135
+ title: string;
5136
+ /** @description The version of the release described in the changelog entry. */
5137
+ version: string;
5138
+ /** @description An object describing the hero image for the changelog entry. */
5139
+ hero?: {
5140
+ intro: string;
5141
+ image_url?: string | null;
5142
+ image_alt?: string | null;
5143
+ } | null;
5144
+ state: components["schemas"]["ChangelogEntryState"];
5145
+ approved?: {
5146
+ signed_by: components["schemas"]["UserScope"];
5147
+ date: components["schemas"]["DateTime"];
5148
+ } | null;
5149
+ published?: {
5150
+ signed_by: components["schemas"]["UserScope"];
5151
+ date: components["schemas"]["DateTime"];
5152
+ } | null;
5153
+ /**
5154
+ * ChangelogEntryEvents
5155
+ * @description A collection of timestamps for each event in the changelog entry's lifetime.
5156
+ */
5157
+ events: {
5158
+ /** @description The timestamp of when the changelog entry was created. */
5159
+ created: components["schemas"]["DateTime"];
5160
+ /** @description The timestamp of when the changelog entry was updated. */
5161
+ updated: components["schemas"]["DateTime"];
5162
+ /** @description The timestamp of when the changelog entry was deleted. */
5163
+ deleted: components["schemas"]["DateTime"];
5164
+ };
5165
+ email_events?: {
5166
+ /** @enum {string} */
5167
+ type: "internal" | "external" | "single";
5168
+ sent: components["schemas"]["DateTime"];
5169
+ address: string;
5170
+ sender: components["schemas"]["UserScope"];
5171
+ }[];
5172
+ creator: components["schemas"]["CreatorScope"];
5173
+ changes: {
5174
+ title: string;
5175
+ description: string;
5176
+ notes?: string[] | null;
5177
+ showcase: boolean;
5178
+ /** @enum {string} */
5179
+ type: "improvement" | "fixed" | "added" | "security" | "removed" | "changed" | "deprecated";
5180
+ codebase?: string | null;
5181
+ external_url?: string | null;
5182
+ }[];
5183
+ };
4944
5184
  /**
4945
5185
  * BillingSummary
4946
5186
  * @description A billing summary.
@@ -5235,18 +5475,6 @@ export interface components {
5235
5475
  deleted: components["schemas"]["DateTime"];
5236
5476
  };
5237
5477
  };
5238
- /**
5239
- * UserScope
5240
- * @description A type of creator and a matching identifier.
5241
- */
5242
- UserScope: {
5243
- /**
5244
- * @description The type of user that created the resource.
5245
- * @enum {string}
5246
- */
5247
- type: "account" | "environment" | "platform" | "platform-pipeline" | "employee" | "api-key" | "visitor";
5248
- id: components["schemas"]["ID"];
5249
- };
5250
5478
  /**
5251
5479
  * BillingAmount
5252
5480
  * @description An object holding information about term and amount that relates to a specific billing component.
@@ -5376,7 +5604,7 @@ export interface components {
5376
5604
  term: components["schemas"]["Term"];
5377
5605
  /** @description A boolean where true represents the order is approved to be paid by the user. */
5378
5606
  approved: boolean;
5379
- items: components["schemas"]["ServiceItem"][];
5607
+ items: components["schemas"]["OrderItem"][];
5380
5608
  /** @description 1/10th of a cent. */
5381
5609
  total_price: number;
5382
5610
  /**
@@ -5430,34 +5658,22 @@ export interface components {
5430
5658
  default: boolean;
5431
5659
  };
5432
5660
  /**
5433
- * BillingServers
5434
- * @description An object holding information about servers included in Billing tier
5435
- */
5436
- BillingServers: {
5437
- /** @description The number of servers included in the tier price */
5438
- included: number;
5439
- /** @description A boolean indicating if there is a hard server limit on the tier */
5440
- hard_cap: boolean;
5441
- /** @description An object describing the additonal cost of servers exceeding the included server count */
5442
- additional: {
5443
- mills: number;
5444
- /** @enum {string} */
5445
- term: "once" | "monthly" | "yearly";
5446
- };
5447
- };
5448
- /**
5449
- * BillingMembers
5450
- * @description An object holding information about members included in Billing tier
5661
+ * ResourceAllowance
5662
+ * @description Generic structure for a resource with an included allotment, optional hard cap, and per-unit overage cost.
5451
5663
  */
5452
- BillingMembers: {
5453
- /** @description The number of members included in the tier price */
5664
+ ResourceAllowance: {
5665
+ /** @description The number of units included in the tier price. */
5454
5666
  included: number;
5455
- /** @description A boolean indicating if there is a hard member limit on the tier */
5667
+ /** @description Whether there is a hard limit on this resource. */
5456
5668
  hard_cap: boolean;
5457
- /** @description An object describing the additonal cost of members exceeding the included member count */
5669
+ /** @description Cost for units that exceed the included amount. */
5458
5670
  additional: {
5671
+ /** @description Cost in mills per additional unit. */
5459
5672
  mills: number;
5460
- /** @enum {string} */
5673
+ /**
5674
+ * @description Billing term that applies to the additional cost.
5675
+ * @enum {string}
5676
+ */
5461
5677
  term: "once" | "monthly" | "yearly";
5462
5678
  };
5463
5679
  };
@@ -5517,8 +5733,10 @@ export interface components {
5517
5733
  generation: number;
5518
5734
  usable: boolean;
5519
5735
  price: components["schemas"]["BillingAmount"];
5520
- servers: components["schemas"]["BillingServers"];
5521
- members: components["schemas"]["BillingMembers"];
5736
+ servers: components["schemas"]["ResourceAllowance"];
5737
+ members: components["schemas"]["ResourceAllowance"];
5738
+ dns_zones: components["schemas"]["ResourceAllowance"];
5739
+ dns_linked_records: components["schemas"]["ResourceAllowance"];
5522
5740
  max_nodes: number | null;
5523
5741
  max_members: number | null;
5524
5742
  advanced_features: {
@@ -5529,6 +5747,7 @@ export interface components {
5529
5747
  geodns: boolean;
5530
5748
  provider_multi_account: boolean;
5531
5749
  virtual_provider: boolean;
5750
+ external_volumes?: boolean;
5532
5751
  };
5533
5752
  max_daily_api_requests: number | null;
5534
5753
  ram: components["schemas"]["BillingRam"];
@@ -5561,7 +5780,7 @@ export interface components {
5561
5780
  * BillingService
5562
5781
  * @description Information about billing service.
5563
5782
  */
5564
- Service: {
5783
+ BillingService: {
5565
5784
  id: components["schemas"]["ID"];
5566
5785
  hub_id: components["schemas"]["HubID"];
5567
5786
  creator: components["schemas"]["CreatorScope"];
@@ -5590,15 +5809,50 @@ export interface components {
5590
5809
  };
5591
5810
  /**
5592
5811
  * BillingOverage
5593
- * @description Information about billing overage.
5812
+ * @description Detailed information about resource overages incurred beyond included billing tier limits.
5594
5813
  */
5595
5814
  Overage: {
5596
5815
  term: components["schemas"]["Term"];
5597
- /** @description Used for gen 1 pricing. */
5598
- ram: {
5599
- /** @description The number of hours of overage. */
5816
+ /** @description Overage related to container or image storage usage. */
5817
+ image_storage?: {
5818
+ /** @description The number of gigabytes of image storage overage. */
5819
+ gbs: number;
5820
+ /** @description The total cost of the image storage overage in mills. */
5821
+ cost: number;
5822
+ };
5823
+ /** @description (GEN 1) Overage related to RAM usage. */
5824
+ ram?: {
5825
+ /** @description The number of RAM GB-hours exceeding the included amount. */
5600
5826
  gb_hours: number;
5601
- /** @description The cost of the overage. */
5827
+ /** @description The total cost of the RAM overage in mills. */
5828
+ cost: number;
5829
+ };
5830
+ /** @description Overage related to server runtime. */
5831
+ servers?: {
5832
+ /** @description The number of server hours exceeding the included amount. */
5833
+ hours: number;
5834
+ /** @description The total cost of the server overage in mills. */
5835
+ cost: number;
5836
+ };
5837
+ /** @description Overage related to DNS zone usage. */
5838
+ dns_zones?: {
5839
+ /** @description The number of DNS zone hours exceeding the included amount. */
5840
+ hours: number;
5841
+ /** @description The total cost of the DNS zone overage in mills. */
5842
+ cost: number;
5843
+ };
5844
+ /** @description Overage related to DNS linked records usage. */
5845
+ dns_linked_records?: {
5846
+ /** @description The number of DNS linked record hours exceeding the included amount. */
5847
+ hours: number;
5848
+ /** @description The total cost of the DNS linked record overage in mills. */
5849
+ cost: number;
5850
+ };
5851
+ /** @description Overage related to member usage. */
5852
+ members?: {
5853
+ /** @description The number of member hours exceeding the included amount. */
5854
+ hours: number;
5855
+ /** @description The total cost of the member overage in mills. */
5602
5856
  cost: number;
5603
5857
  };
5604
5858
  };
@@ -5949,6 +6203,53 @@ export interface components {
5949
6203
  }[];
5950
6204
  };
5951
6205
  };
6206
+ /**
6207
+ * RuntimeExposedDevice
6208
+ * @description A host device exposed to the container during runtime.
6209
+ */
6210
+ RuntimeExposedDevice: {
6211
+ /** @description The path to the device on the host. */
6212
+ source: string;
6213
+ /** @description The path inside the container that the device is mapped to. */
6214
+ destination: string;
6215
+ options?: string[] | null;
6216
+ };
6217
+ /**
6218
+ * RuntimeDevicePermissionType
6219
+ * @description The class of device this rule applies to (for example, block devices or character devices).
6220
+ *
6221
+ * @enum {string}
6222
+ */
6223
+ RuntimeDevicePermissionType: "b" | "c";
6224
+ /**
6225
+ * RuntimeDevicePermissionAccess
6226
+ * @description The access mode permitted by this rule. Common conventions use a combination of letters (e.g., r, w, m) to indicate read, write, and mknod capabilities.
6227
+ *
6228
+ */
6229
+ RuntimeDevicePermissionAccess: string;
6230
+ /**
6231
+ * RuntimeDevicePermission
6232
+ * @description A rule that grants or denies access to a device node (e.g., Linux cgroup device rule). Controls which device type and major/minor numbers are allowed, and with what access.
6233
+ *
6234
+ */
6235
+ RuntimeDevicePermission: {
6236
+ type: components["schemas"]["RuntimeDevicePermissionType"];
6237
+ /**
6238
+ * Format: int64
6239
+ * @description Device major number.
6240
+ *
6241
+ */
6242
+ major?: number | null;
6243
+ /**
6244
+ * Format: int64
6245
+ * @description Device minor number.
6246
+ *
6247
+ */
6248
+ minor?: number | null;
6249
+ /** @description Whether this rule allows (true) or denies (false) access. */
6250
+ allow: boolean;
6251
+ access: components["schemas"]["RuntimeDevicePermissionAccess"];
6252
+ };
5952
6253
  /**
5953
6254
  * ContainerRuntime
5954
6255
  * @description Runtime configurations for a given container.
@@ -6005,6 +6306,8 @@ export interface components {
6005
6306
  devices?: {
6006
6307
  /** @description The size of the shared host memory device (/dev/shm). */
6007
6308
  shm_size?: string | null;
6309
+ expose?: components["schemas"]["RuntimeExposedDevice"][] | null;
6310
+ permissions?: components["schemas"]["RuntimeDevicePermission"][] | null;
6008
6311
  } | null;
6009
6312
  };
6010
6313
  /**
@@ -6137,23 +6440,35 @@ export interface components {
6137
6440
  * */
6138
6441
  version: components["schemas"]["Version"];
6139
6442
  };
6443
+ /**
6444
+ * DataSize
6445
+ * @description A human-readable data size string. Values are expressed as an integer followed by a unit suffix, without spaces. Supported units:
6446
+ * - b, k, m, g, t, p (bytes, kilobytes, megabytes, gigabytes, terabytes, petabytes)
6447
+ * - An optional "b" suffix may be added (e.g., "mb", "gb").
6448
+ * Units are case-insensitive. Example: "512M", "10GB", "1t".
6449
+ *
6450
+ */
6451
+ DataSize: string;
6140
6452
  /**
6141
6453
  * ContainerVolume
6142
6454
  * @description Configuration settings for container volumes.
6143
6455
  */
6144
6456
  ContainerVolume: {
6457
+ identifier?: components["schemas"]["Identifier"] | null;
6145
6458
  /** @description A boolean where true marks the volume as read only. */
6146
6459
  read_only: boolean;
6147
6460
  /** @description Indicates that the volume will be used as unformatted block storage.
6148
6461
  * */
6149
6462
  block_device: boolean;
6150
- /** @description Configuration for settings local to the container filesystem. */
6151
6463
  local?: {
6152
6464
  /** @description The maximum size this volume can grow to. Container volumes on Cycle are thinly provisioned, meaning this isn't an allocation - the volume will only use the space it needs up to this size. */
6153
- max_size: string;
6154
- /** @description A boolean where true signifies using the largest drive over 2TB for the target server. */
6155
- storage_pool?: boolean;
6156
- };
6465
+ max_size: components["schemas"]["DataSize"];
6466
+ storage_pool?: boolean | null;
6467
+ } | null;
6468
+ external?: {
6469
+ /** @description The id of the external volume. */
6470
+ id?: components["schemas"]["ID"] | null;
6471
+ } | null;
6157
6472
  /** @description The mountpoint path for the container. */
6158
6473
  destination: string;
6159
6474
  /** @description Configuration settings for remotely accessing the container volume. */
@@ -6184,6 +6499,10 @@ export interface components {
6184
6499
  /** @description A unique hash for the given volume. */
6185
6500
  hash: string;
6186
6501
  config: components["schemas"]["ContainerVolume"];
6502
+ /** @description The ID of external volume, if applicable. */
6503
+ external?: {
6504
+ id?: components["schemas"]["ID"];
6505
+ } | null;
6187
6506
  };
6188
6507
  /** ContainerState */
6189
6508
  ContainerState: {
@@ -6394,6 +6713,14 @@ export interface components {
6394
6713
  *
6395
6714
  */
6396
6715
  Cidr: string;
6716
+ /**
6717
+ * IpOptions
6718
+ * @description Options for an IP.
6719
+ */
6720
+ IpOptions: {
6721
+ /** @description If enabled, allows pool to respond to ARP requests, on behalf of a container / virtual machine, at the host level. */
6722
+ proxy_arp?: boolean | null;
6723
+ };
6397
6724
  /** IpState */
6398
6725
  IpState: {
6399
6726
  /**
@@ -6435,6 +6762,7 @@ export interface components {
6435
6762
  /** @description The IP gateway. */
6436
6763
  gateway: string;
6437
6764
  network?: components["schemas"]["Cidr"] | null;
6765
+ options?: components["schemas"]["IpOptions"] | null;
6438
6766
  /** @description The CIDR for the IP. */
6439
6767
  cidr: string;
6440
6768
  state: components["schemas"]["IpState"];
@@ -6544,6 +6872,8 @@ export interface components {
6544
6872
  url: string;
6545
6873
  /** @description The format of the logs that will be sent to the drain URL. */
6546
6874
  format?: components["schemas"]["LogFormat"];
6875
+ /** @description If enabled, service logs will not be included in log drain. */
6876
+ exclude_services: boolean;
6547
6877
  } | null;
6548
6878
  } | null;
6549
6879
  };
@@ -7049,6 +7379,9 @@ export interface components {
7049
7379
  config?: {
7050
7380
  /** @description If true, routes all traffic through the VPN, even non-Cycle traffic. */
7051
7381
  allow_internet: boolean;
7382
+ /** @description Additional OpenVPN directives that will be appended to the server configuration on service start. Each line should follow standard OpenVPN syntax.
7383
+ * */
7384
+ custom_directives?: string | null;
7052
7385
  /** @description Auth configuration for the VPN. */
7053
7386
  auth: {
7054
7387
  /** @description A webhook endpoint to hit. Will be passed the login credentials provided to the user, and should return a 200 status if the login is permitted. */
@@ -7660,6 +7993,8 @@ export interface components {
7660
7993
  args?: {
7661
7994
  [key: string]: string;
7662
7995
  };
7996
+ /** @description If true, will skip using /dev/shm when building an image on factory. Allows for building much larger images. */
7997
+ use_disk?: boolean;
7663
7998
  } | null;
7664
7999
  /** @description Configuration options regarding the builder used to create/import this Image. */
7665
8000
  builder?: {
@@ -8079,6 +8414,47 @@ export interface components {
8079
8414
  /** @description An array of rules that dictate when a scaling event will be triggered. */
8080
8415
  thresholds: components["schemas"]["StackSpecContainerScaleThreshold"][] | components["schemas"]["StackVariable"];
8081
8416
  };
8417
+ /**
8418
+ * StackSpecRuntimeExposedDevice
8419
+ * @description A host device exposed to the container during runtime.
8420
+ */
8421
+ StackSpecRuntimeExposedDevice: {
8422
+ /** @description The path to the device on the host. */
8423
+ source: string | components["schemas"]["StackVariable"];
8424
+ /** @description The path inside the container that the device is mapped to. */
8425
+ destination: string | components["schemas"]["StackVariable"];
8426
+ options?: string[] | null | components["schemas"]["StackVariable"];
8427
+ };
8428
+ /**
8429
+ * StackSpecRuntimeDevicePermissionType
8430
+ * @description The class of device this rule applies to (for example, block devices or character devices).
8431
+ *
8432
+ * @enum {string}
8433
+ */
8434
+ StackSpecRuntimeDevicePermissionType: "b" | "c";
8435
+ /**
8436
+ * StackSpecRuntimeDevicePermissionAccess
8437
+ * @description The access mode permitted by this rule. Common conventions use a combination of letters (e.g., r, w, m) to indicate read, write, and mknod capabilities.
8438
+ *
8439
+ */
8440
+ StackSpecRuntimeDevicePermissionAccess: string;
8441
+ /**
8442
+ * StackSpecRuntimeDevicePermission
8443
+ * @description A rule that grants or denies access to a device node (e.g., Linux cgroup device rule). Controls which device type and major/minor numbers are allowed, and with what access.
8444
+ *
8445
+ */
8446
+ StackSpecRuntimeDevicePermission: {
8447
+ type: components["schemas"]["StackSpecRuntimeDevicePermissionType"] | components["schemas"]["StackVariable"];
8448
+ /** @description Device major number.
8449
+ * */
8450
+ major?: (number | null) | components["schemas"]["StackVariable"];
8451
+ /** @description Device minor number.
8452
+ * */
8453
+ minor?: (number | null) | components["schemas"]["StackVariable"];
8454
+ /** @description Whether this rule allows (true) or denies (false) access. */
8455
+ allow: boolean | components["schemas"]["StackVariable"];
8456
+ access: components["schemas"]["StackSpecRuntimeDevicePermissionAccess"] | components["schemas"]["StackVariable"];
8457
+ };
8082
8458
  /**
8083
8459
  * StackSpecContainerConfigRuntime
8084
8460
  * @description Configuration options related to how the container behaves while it is running (environment variables, command overrides, kernel capabilities, etc. )
@@ -8149,7 +8525,12 @@ export interface components {
8149
8525
  /** @description If true, the container's filesystem will be read-only. */
8150
8526
  readonly: boolean | components["schemas"]["StackVariable"];
8151
8527
  } | components["schemas"]["StackVariable"];
8152
- };
8528
+ devices?: {
8529
+ shm_size?: string | null | components["schemas"]["StackVariable"];
8530
+ expose?: components["schemas"]["StackSpecRuntimeExposedDevice"][] | null | components["schemas"]["StackVariable"];
8531
+ permissions?: components["schemas"]["StackSpecRuntimeDevicePermission"][] | null | components["schemas"]["StackVariable"];
8532
+ } | null | components["schemas"]["StackVariable"];
8533
+ };
8153
8534
  /**
8154
8535
  * StackSpecContainerConfigResources
8155
8536
  * @description Configuration options for container resource limits and reserves.
@@ -8245,6 +8626,10 @@ export interface components {
8245
8626
  /** @description A boolean where true signifies using the largest drive over 2TB for the target server. */
8246
8627
  storage_pool?: boolean | components["schemas"]["StackVariable"];
8247
8628
  } | components["schemas"]["StackVariable"];
8629
+ external?: {
8630
+ /** @description The ID of the external volume. */
8631
+ id?: components["schemas"]["HybridIdentifier"] | components["schemas"]["StackVariable"] | null;
8632
+ } | components["schemas"]["StackVariable"] | null;
8248
8633
  /** @description The path this volume should be mounted at inside the container. */
8249
8634
  destination: string | components["schemas"]["StackVariable"];
8250
8635
  /** @description If true, the container will be unable to write data to the volume. */
@@ -8314,6 +8699,8 @@ export interface components {
8314
8699
  drain?: {
8315
8700
  /** @description The URL to the third party logging service where logs will be sent. */
8316
8701
  url: string | components["schemas"]["StackVariable"];
8702
+ /** @description If enabled, service logs will not be included in log drain. */
8703
+ exclude_services: boolean | components["schemas"]["StackVariable"];
8317
8704
  /** @description The format Cycle will use to send the logs. */
8318
8705
  format?: ("ndjson-headers" | "ndjson-raw") | null | components["schemas"]["StackVariable"];
8319
8706
  } | null | components["schemas"]["StackVariable"];
@@ -8802,6 +9189,9 @@ export interface components {
8802
9189
  vpn_accounts: boolean | components["schemas"]["StackVariable"];
8803
9190
  } | components["schemas"]["StackVariable"];
8804
9191
  allow_internet: boolean | components["schemas"]["StackVariable"];
9192
+ /** @description Additional OpenVPN directives that will be appended to the server configuration on service start. Each line should follow standard OpenVPN syntax.
9193
+ * */
9194
+ custom_directives?: string | null;
8805
9195
  };
8806
9196
  /**
8807
9197
  * StackSpecVpnService
@@ -9089,7 +9479,7 @@ export interface components {
9089
9479
  */
9090
9480
  action: "stop";
9091
9481
  };
9092
- /** ContainerRetartActionTask */
9482
+ /** ContainerRestartActionTask */
9093
9483
  ContainerRestartAction: {
9094
9484
  /**
9095
9485
  * @description The name of the action to perform. (enum property replaced by openapi-typescript)
@@ -9113,8 +9503,11 @@ export interface components {
9113
9503
  * @enum {string}
9114
9504
  */
9115
9505
  action: "volumes.reconfigure";
9116
- /** @description An array of volume objects to be reconfigured. */
9117
- contents: components["schemas"]["VolumeSummary"][];
9506
+ /** @description A map of volume objects where the key is the id and the value is the volume's config.
9507
+ * */
9508
+ contents: {
9509
+ [key: string]: components["schemas"]["ContainerVolume"];
9510
+ };
9118
9511
  };
9119
9512
  /** ContainerReimageAction */
9120
9513
  ContainerReimageAction: {
@@ -9885,7 +10278,8 @@ export interface components {
9885
10278
  IntegrationDefinitionField: {
9886
10279
  regex?: string | null;
9887
10280
  required: boolean;
9888
- description: string;
10281
+ name: string;
10282
+ description?: string;
9889
10283
  /** @enum {string} */
9890
10284
  type?: "select" | "string" | "int" | "blob";
9891
10285
  options?: string[] | null;
@@ -10243,7 +10637,7 @@ export interface components {
10243
10637
  /** @description The ID of the volume that will be extended through this task. */
10244
10638
  volume_id: string;
10245
10639
  /** @description The amount of storage to extend the volume by. Container volumes on Cycle are thinly provisioned, meaning this isn't an allocation - the volume will only use the space it needs up to this size. */
10246
- extend_size: string;
10640
+ extend_size: components["schemas"]["DataSize"];
10247
10641
  };
10248
10642
  };
10249
10643
  /** InstanceTrafficDrainReconfigure */
@@ -10316,8 +10710,8 @@ export interface components {
10316
10710
  InstanceVolume: {
10317
10711
  id: components["schemas"]["ID"];
10318
10712
  config: components["schemas"]["ContainerVolume"];
10319
- deployed: components["schemas"]["DeployedVolume"];
10320
- sftp: components["schemas"]["SFTP"];
10713
+ deployed?: components["schemas"]["DeployedVolume"] | null;
10714
+ sftp?: components["schemas"]["SFTP"] | null;
10321
10715
  };
10322
10716
  /**
10323
10717
  * InstanceTelemetryReportRequest
@@ -10627,6 +11021,8 @@ export interface components {
10627
11021
  hostname: string;
10628
11022
  /** @description Port configurations for the virtual machine. */
10629
11023
  ports?: string[] | null;
11024
+ /** @description True indicates that traffic should leave via the gateway, not the underlying host. */
11025
+ egress_via_gateway: boolean;
10630
11026
  };
10631
11027
  /**
10632
11028
  * VirtualMachineDeployTags
@@ -10732,6 +11128,80 @@ export interface components {
10732
11128
  ram: components["schemas"]["VirtualMachineRamResources"];
10733
11129
  cpu: components["schemas"]["VirtualMachineCpuResources"];
10734
11130
  };
11131
+ /**
11132
+ * VirtualMachineCpuConfigDefault
11133
+ * @description Predefined CPU selection.
11134
+ */
11135
+ VirtualMachineCpuConfigDefault: {
11136
+ /**
11137
+ * @description Predefined CPU type. (enum property replaced by openapi-typescript)
11138
+ * @enum {string}
11139
+ */
11140
+ type: "host" | "qemu32" | "qemu64" | "kvm64";
11141
+ /** @description An object with no properties. */
11142
+ details: Record<string, never>;
11143
+ };
11144
+ /**
11145
+ * VirtualMachineCpuConfigCustom
11146
+ * @description Custom CPU selection with model and feature flags.
11147
+ */
11148
+ VirtualMachineCpuConfigCustom: {
11149
+ /**
11150
+ * @description Custom CPU definition. (enum property replaced by openapi-typescript)
11151
+ * @enum {string}
11152
+ */
11153
+ type: "custom";
11154
+ details: {
11155
+ /** @description CPU model string (for example "Skylake-Client"). */
11156
+ model: string;
11157
+ feature_flags?: string[] | null;
11158
+ };
11159
+ };
11160
+ /**
11161
+ * VirtualMachineRuntimeConfigHardware
11162
+ * @description Hardware parameters applied for VM runtime.
11163
+ *
11164
+ */
11165
+ VirtualMachineRuntimeConfigHardware: {
11166
+ /** @description QEMU machine type to emulate. */
11167
+ machine_type?: ("pc" | "q35" | "microvm") | null;
11168
+ /** @description CPU configuration for the VM. Discriminated by `type`. */
11169
+ cpu: components["schemas"]["VirtualMachineCpuConfigDefault"] | components["schemas"]["VirtualMachineCpuConfigCustom"];
11170
+ };
11171
+ /**
11172
+ * VirtualMachineAttachmentTypeIso
11173
+ * @description Details of an ISO attachment for a virtual machine.
11174
+ */
11175
+ VirtualMachineAttachmentTypeIso: {
11176
+ /**
11177
+ * @description The type of the attachment (iso) (enum property replaced by openapi-typescript)
11178
+ * @enum {string}
11179
+ */
11180
+ type: "iso";
11181
+ details: {
11182
+ /** @description The URL of the ISO to download and attach to this virtual machine. */
11183
+ url: string;
11184
+ };
11185
+ };
11186
+ /**
11187
+ * VirtualMachineRuntimeConfigAttachment
11188
+ * @description Additional attachment (ISO, etc) added during runtime.
11189
+ *
11190
+ */
11191
+ VirtualMachineRuntimeConfigAttachment: components["schemas"]["VirtualMachineAttachmentTypeIso"];
11192
+ /**
11193
+ * VirtualMachineRuntimeConfig
11194
+ * @description Defines the runtime settings for a virtual machine.
11195
+ *
11196
+ */
11197
+ VirtualMachineRuntimeConfig: {
11198
+ /** @description Hardware parameters applied for VM runtime. */
11199
+ hardware?: components["schemas"]["VirtualMachineRuntimeConfigHardware"] | null;
11200
+ /** @description An array of attachments to 'plug in' to the virtual machine. */
11201
+ attach?: components["schemas"]["VirtualMachineRuntimeConfigAttachment"][] | null;
11202
+ /** @description The type of operating system that will be installed to the virtual machine. Allows for preconfigured settings, such as virtio-win drivers for Windows. */
11203
+ os_flavor?: "linux" | "unix" | "windows";
11204
+ };
10735
11205
  /**
10736
11206
  * VirtualMachineConfig
10737
11207
  * @description Defines the network and deployment configurations for a virtual machine.
@@ -10741,6 +11211,7 @@ export interface components {
10741
11211
  network: components["schemas"]["VirtualMachineNetworkConfig"];
10742
11212
  deploy: components["schemas"]["VirtualMachineDeployConfig"];
10743
11213
  resources: components["schemas"]["VirtualMachineResourcesConfig"];
11214
+ runtime?: components["schemas"]["VirtualMachineRuntimeConfig"] | null;
10744
11215
  };
10745
11216
  /**
10746
11217
  * VirtualMachineImageSourceUrl
@@ -10789,25 +11260,47 @@ export interface components {
10789
11260
  identifier: string;
10790
11261
  };
10791
11262
  };
11263
+ /**
11264
+ * VirtualMachineImageSourceExternalVolume
11265
+ * @description A virtual machine image sourced from a SAN target.
11266
+ */
11267
+ VirtualMachineImageSourceExternalVolume: {
11268
+ /**
11269
+ * @description discriminator enum property added by openapi-typescript
11270
+ * @enum {string}
11271
+ */
11272
+ type: "external-volume";
11273
+ details: {
11274
+ /** @description The identifier of the external volume where the image is located. */
11275
+ identifier?: components["schemas"]["Identifier"] | null;
11276
+ /** @description The id of the external volume where the image is located. */
11277
+ id?: components["schemas"]["ID"] | null;
11278
+ };
11279
+ };
10792
11280
  /**
10793
11281
  * VirtualMachineImage
10794
- * @description Represents the image used by a virtual machine. It can either reference a URL where the image is located or specify a base image provided by Cycle. The `base` field allows users to specify the name of a desired Cycle-hosted base image, removing the need for a custom image URL.
11282
+ * @description Represents the image used by a virtual machine. It can either reference a URL where the image is located or specify a base image provided by Cycle.
10795
11283
  *
10796
11284
  */
10797
- VirtualMachineImage: components["schemas"]["VirtualMachineImageSourceUrl"] | components["schemas"]["VirtualMachineImageSourceIpxe"] | components["schemas"]["VirtualMachineImageSourceBase"];
11285
+ VirtualMachineImage: components["schemas"]["VirtualMachineImageSourceUrl"] | components["schemas"]["VirtualMachineImageSourceIpxe"] | components["schemas"]["VirtualMachineImageSourceBase"] | components["schemas"]["VirtualMachineImageSourceExternalVolume"];
10798
11286
  /**
10799
11287
  * VirtualMachineVolumeConfig
10800
11288
  * @description Represents the configuration for a volume attached to a virtual machine.
10801
11289
  *
10802
11290
  */
10803
11291
  VirtualMachineVolumeConfig: {
10804
- /** @description Configuration details for a local volume, if applicable. */
11292
+ /** @description Configuration details for a local volume. */
10805
11293
  local?: {
10806
11294
  /** @description The maximum size allowed for the local volume. */
10807
11295
  max_size: string;
10808
11296
  /** @description Indicates if the volume is part of a storage pool. */
10809
11297
  storage_pool?: boolean | null;
10810
11298
  } | null;
11299
+ /** @description Configuration details for a SAN volume. */
11300
+ external?: {
11301
+ /** @description The id of the external volume. */
11302
+ id?: components["schemas"]["ID"] | null;
11303
+ } | null;
10811
11304
  identifier: components["schemas"]["Identifier"];
10812
11305
  /** @description Specifies if the volume is mounted as read-only. */
10813
11306
  read_only: boolean;
@@ -10830,7 +11323,7 @@ export interface components {
10830
11323
  * @description The current state of the virtual machine.
10831
11324
  * @enum {string}
10832
11325
  */
10833
- current: "new" | "starting" | "running" | "stopping" | "stopped" | "deleting" | "deleted";
11326
+ current: "new" | "starting" | "configuring" | "running" | "stopping" | "stopped" | "deleting" | "deleted";
10834
11327
  } & components["schemas"]["State"];
10835
11328
  /**
10836
11329
  * VirtualMachineMeta
@@ -10879,8 +11372,6 @@ export interface components {
10879
11372
  annotations?: {
10880
11373
  [key: string]: unknown;
10881
11374
  } | null;
10882
- /** @description The size of the base disk. Must be between 10G and 100G. */
10883
- base_disk_size?: string;
10884
11375
  /** @description The generated root password for the virtual machine. Only visible by the owner, or if it was created in the last ten minutes. */
10885
11376
  root_password?: {
10886
11377
  changed: components["schemas"]["DateTime"];
@@ -11569,6 +12060,9 @@ export interface components {
11569
12060
  config?: {
11570
12061
  /** @description If true, routes all traffic through the VPN, even non-Cycle traffic. */
11571
12062
  allow_internet?: boolean;
12063
+ /** @description Additional OpenVPN directives that will be appended to the server configuration on service start. Each line should follow standard OpenVPN syntax.
12064
+ * */
12065
+ custom_directives?: string | null;
11572
12066
  /** @description Auth configuration for the VPN. */
11573
12067
  auth?: {
11574
12068
  /** @description A webhook endpoint to hit. Will be passed the login credentials provided to the user, and should return a 200 status if the login is permitted. */
@@ -11760,10 +12254,22 @@ export interface components {
11760
12254
  * @description The activity event.
11761
12255
  * @enum {string}
11762
12256
  */
11763
- event: "hub.images.prune" | "hub.update" | "hub.create" | "hub.task.delete" | "hub.task.images.prune" | "environment.services.discovery.reconfigure" | "environment.services.lb.reconfigure" | "environment.services.vpn.reconfigure" | "environment.services.scheduler.reconfigure" | "environment.delete" | "environment.initialize" | "environment.start" | "environment.stop" | "environment.create" | "environment.update" | "environment.task.delete" | "environment.services.discovery.task.reconfigure" | "environment.services.lb.task.reconfigure" | "environment.services.vpn.task.reconfigure" | "environment.services.scheduler.task.reconfigure" | "environment.services.vpn.user.create" | "environment.services.vpn.login" | "environment.services.vpn.reset" | "environment.services.vpn.task.reset" | "environment.task.initialize" | "environment.task.start" | "environment.task.stop" | "environment.task.deployments.reconfigure" | "environment.deployments.reconfigure" | "environment.task.monitoring.reconfigure" | "environment.monitoring.reconfigure" | "environment.deployments.prune" | "environment.deployment.start" | "environment.deployment.stop" | "environment.scoped-variable.delete" | "environment.scoped-variable.update" | "environment.scoped-variable.task.delete" | "environment.scoped-variable.create" | "image.delete" | "image.import" | "image.create" | "image.update" | "image.task.delete" | "image.task.import" | "image.source.delete" | "image.source.create" | "image.source.update" | "image.source.task.delete" | "billing.invoice.task.void" | "billing.invoice.task.credit" | "billing.invoice.task.refund" | "billing.invoice.pay" | "billing.invoice.task.pay" | "billing.order.confirm" | "billing.order.task.confirm" | "billing.method.update" | "billing.method.delete" | "billing.method.task.delete" | "billing.method.create" | "hub.apikey.update" | "hub.apikey.delete" | "hub.apikey.create" | "hub.role.update" | "hub.role.delete" | "hub.role.create" | "hub.role.task.delete" | "hub.membership.delete" | "hub.membership.create" | "hub.membership.update" | "hub.integration.create" | "hub.integration.update" | "hub.integration.delete" | "hub.integration.task.delete" | "hub.inactive" | "container.initialize" | "container.task.start" | "container.start" | "container.task.stop" | "container.stop" | "container.task.restart" | "container.restart" | "container.task.reconfigure" | "container.reconfigure" | "container.task.volumes.reconfigure" | "container.function.trigger" | "container.function.task.trigger" | "container.volumes.reconfigure" | "container.create" | "container.restart" | "container.task.reimage" | "container.reimage" | "container.deprecate" | "container.update" | "container.task.delete" | "container.delete" | "container.task.scale" | "container.scale" | "container.instances.create" | "container.instances.delete" | "container.instances.autoscale.up" | "container.instances.autoscale.down" | "container.instance.healthcheck.restarted" | "container.instance.volume.extend" | "container.instance.task.volume.extend" | "container.instance.healthcheck.failed" | "container.instance.error" | "container.instance.ssh.login" | "container.instance.migration.start" | "container.instance.migration.revert" | "container.instance.delete" | "container.instance.task.migration.revert" | "container.instance.task.migration.start" | "container.instance.traffic-drain.reconfigure" | "container.backup.create" | "container.backup.restore" | "container.backup.delete" | "container.backup.task.delete" | "container.backup.task.restore" | "dns.zone.verify" | "dns.zone.delete" | "dns.zone.task.verify" | "dns.zone.update" | "dns.zone.task.delete" | "dns.zone.create" | "dns.zone.record.delete" | "dns.zone.record.cert.generate" | "dns.zone.record.cert.generate.auto" | "dns.zone.record.task.cert.generate" | "dns.zone.record.update" | "dns.zone.record.task.delete" | "dns.zone.record.create" | "dns.certificate.associate" | "dns.certificate.deprecate" | "dns.certificate.create" | "dns.certificate.task.deprecate" | "stack.update" | "stack.task.delete" | "stack.delete" | "stack.create" | "stack.task.prune" | "stack.prune" | "stack.build.create" | "stack.build.generate" | "stack.build.deploy" | "stack.build.delete" | "stack.build.task.delete" | "stack.build.task.generate" | "stack.build.task.deploy" | "infrastructure.provider.update" | "infrastructure.provider.task.delete" | "infrastructure.provider.create" | "infrastructure.provider.task.verify" | "infrastructure.virtual-providers.iso.create" | "infrastructure.virtual-providers.iso.generate" | "infrastructure.virtual-providers.iso.update" | "infrastructure.virtual-providers.iso.delete" | "infrastructure.virtual-providers.iso.task.delete" | "infrastructure.server.task.delete" | "infrastructure.server.task.restart" | "infrastructure.server.services.sftp.auth" | "infrastructure.server.live" | "infrastructure.server.delete" | "infrastructure.server.restart" | "infrastructure.server.unquarantine" | "infrastructure.server.compute.restart" | "infrastructure.server.compute.spawner.restart" | "infrastructure.server.features.reconfigure" | "infrastructure.server.sharedfs.reconfigure" | "infrastructure.server.provision" | "infrastructure.server.console" | "infrastructure.server.update" | "infrastructure.server.task.provision" | "infrastructure.server.ssh.token" | "infrastructure.server.task.features.reconfigure" | "infrastructure.server.task.sharedfs.reconfigure" | "infrastructure.server.services.sftp.lockdown" | "infrastructure.server.services.internal-api.throttle" | "infrastructure.server.evacuation.start" | "infrastructure.server.task.evacuation.start" | "infrastructure.server.evacuation.reset" | "infrastructure.server.task.evacuation.reset" | "infrastructure.server.power-off" | "infrastructure.server.auth.reset" | "infrastructure.autoscale.group.create" | "infrastructure.autoscale.group.update" | "infrastructure.autoscale.group.task.delete" | "infrastructure.autoscale.group.delete" | "infrastructure.cluster.create" | "infrastructure.cluster.update" | "infrastructure.cluster.delete" | "infrastructure.ips.pool.task.delete" | "sdn.network.update" | "sdn.network.task.delete" | "sdn.network.create" | "sdn.network.task.reconfigure" | "pipeline.delete" | "pipeline.trigger" | "pipeline.update" | "pipeline.task.delete" | "pipeline.create" | "pipeline.task.trigger" | "pipeline.run.completed" | "pipeline.key.update" | "pipeline.key.delete" | "pipeline.key.create" | "virtual-machine.create" | "virtual-machine.initialize" | "virtual-machine.task.start" | "virtual-machine.start" | "virtual-machine.task.stop" | "virtual-machine.stop" | "virtual-machine.reconfigure" | "virtual-machine.task.reconfigure" | "virtual-machine.update" | "virtual-machine.task.delete" | "virtual-machine.delete" | "virtual-machine.sos.login" | "virtual-machine.rootpw.change" | "virtual-machine.ssh-key.create" | "virtual-machine.ssh-key.update" | "virtual-machine.ssh-key.task.delete" | "virtual-machine.ssh-key.delete" | "virtual-machine.ip.allocate" | "virtual-machine.task.ip.allocate" | "virtual-machine.ip.unallocate" | "virtual-machine.task.ip.unallocate";
12257
+ event: "hub.images.prune" | "hub.update" | "hub.create" | "hub.task.delete" | "hub.task.images.prune" | "environment.services.discovery.reconfigure" | "environment.services.lb.reconfigure" | "environment.services.vpn.reconfigure" | "environment.services.scheduler.reconfigure" | "environment.delete" | "environment.initialize" | "environment.start" | "environment.stop" | "environment.create" | "environment.update" | "environment.task.delete" | "environment.services.discovery.task.reconfigure" | "environment.services.lb.task.reconfigure" | "environment.services.vpn.task.reconfigure" | "environment.services.scheduler.task.reconfigure" | "environment.services.vpn.user.create" | "environment.services.vpn.login" | "environment.services.vpn.reset" | "environment.services.vpn.task.reset" | "environment.task.initialize" | "environment.task.start" | "environment.task.stop" | "environment.task.deployments.reconfigure" | "environment.deployments.reconfigure" | "environment.task.monitoring.reconfigure" | "environment.monitoring.reconfigure" | "environment.deployments.prune" | "environment.deployment.start" | "environment.deployment.stop" | "environment.scoped-variable.delete" | "environment.scoped-variable.update" | "environment.scoped-variable.task.delete" | "environment.scoped-variable.create" | "image.delete" | "image.import" | "image.create" | "image.update" | "image.task.delete" | "image.task.import" | "image.source.delete" | "image.source.create" | "image.source.update" | "image.source.task.delete" | "billing.invoice.task.void" | "billing.invoice.task.credit" | "billing.invoice.task.refund" | "billing.invoice.pay" | "billing.invoice.task.pay" | "billing.order.confirm" | "billing.order.task.confirm" | "billing.method.update" | "billing.method.delete" | "billing.method.task.delete" | "billing.method.create" | "hub.apikey.update" | "hub.apikey.delete" | "hub.apikey.create" | "hub.role.update" | "hub.role.delete" | "hub.role.create" | "hub.role.task.delete" | "hub.membership.delete" | "hub.membership.create" | "hub.membership.update" | "hub.integration.create" | "hub.integration.update" | "hub.integration.delete" | "hub.integration.task.verify" | "hub.integration.task.delete" | "hub.inactive" | "container.initialize" | "container.task.start" | "container.start" | "container.task.stop" | "container.stop" | "container.task.restart" | "container.restart" | "container.task.reconfigure" | "container.reconfigure" | "container.task.volumes.reconfigure" | "container.function.trigger" | "container.function.task.trigger" | "container.volumes.reconfigure" | "container.create" | "container.restart" | "container.task.reimage" | "container.reimage" | "container.deprecate" | "container.update" | "container.task.delete" | "container.delete" | "container.task.scale" | "container.scale" | "container.instances.create" | "container.instances.delete" | "container.instances.autoscale.up" | "container.instances.autoscale.down" | "container.instance.healthcheck.restarted" | "container.instance.volume.extend" | "container.instance.task.volume.extend" | "container.instance.healthcheck.failed" | "container.instance.error" | "container.instance.ssh.login" | "container.instance.migration.start" | "container.instance.migration.revert" | "container.instance.delete" | "container.instance.task.migration.revert" | "container.instance.task.migration.start" | "container.instance.traffic-drain.reconfigure" | "container.backup.create" | "container.backup.restore" | "container.backup.delete" | "container.backup.task.delete" | "container.backup.task.restore" | "dns.zone.verify" | "dns.zone.delete" | "dns.zone.task.verify" | "dns.zone.update" | "dns.zone.task.delete" | "dns.zone.create" | "dns.zone.record.delete" | "dns.zone.record.cert.generate" | "dns.zone.record.cert.generate.auto" | "dns.zone.record.task.cert.generate" | "dns.zone.record.update" | "dns.zone.record.task.delete" | "dns.zone.record.create" | "dns.certificate.associate" | "dns.certificate.deprecate" | "dns.certificate.create" | "dns.certificate.task.deprecate" | "stack.update" | "stack.task.delete" | "stack.delete" | "stack.create" | "stack.task.prune" | "stack.prune" | "stack.build.create" | "stack.build.generate" | "stack.build.deploy" | "stack.build.delete" | "stack.build.task.delete" | "stack.build.task.generate" | "stack.build.task.deploy" | "infrastructure.provider.update" | "infrastructure.provider.task.delete" | "infrastructure.provider.create" | "infrastructure.provider.task.verify" | "infrastructure.virtual-providers.iso.create" | "infrastructure.virtual-providers.iso.generate" | "infrastructure.virtual-providers.iso.update" | "infrastructure.virtual-providers.iso.delete" | "infrastructure.virtual-providers.iso.task.delete" | "infrastructure.server.task.delete" | "infrastructure.server.task.restart" | "infrastructure.server.services.sftp.auth" | "infrastructure.server.live" | "infrastructure.server.delete" | "infrastructure.server.restart" | "infrastructure.server.unquarantine" | "infrastructure.server.compute.restart" | "infrastructure.server.compute.spawner.restart" | "infrastructure.server.features.reconfigure" | "infrastructure.server.sharedfs.reconfigure" | "infrastructure.server.provision" | "infrastructure.server.console" | "infrastructure.server.update" | "infrastructure.server.task.provision" | "infrastructure.server.ssh.token" | "infrastructure.server.task.features.reconfigure" | "infrastructure.server.task.sharedfs.reconfigure" | "infrastructure.server.services.sftp.lockdown" | "infrastructure.server.services.internal-api.throttle" | "infrastructure.server.evacuation.start" | "infrastructure.server.task.evacuation.start" | "infrastructure.server.evacuation.reset" | "infrastructure.server.task.evacuation.reset" | "infrastructure.server.power-off" | "infrastructure.server.auth.reset" | "infrastructure.autoscale.group.create" | "infrastructure.autoscale.group.update" | "infrastructure.autoscale.group.task.delete" | "infrastructure.autoscale.group.delete" | "infrastructure.external-volume.create" | "infrastructure.external-volume.update" | "infrastructure.external-volume.task.delete" | "infrastructure.external-volume.delete" | "infrastructure.external-volume.task.servers.reconfigure" | "infrastructure.external-volume.servers.reconfigure" | "infrastructure.cluster.create" | "infrastructure.cluster.update" | "infrastructure.cluster.task.delete" | "infrastructure.cluster.delete" | "infrastructure.cluster.features.monitoring.tier.reconfigure" | "infrastructure.ips.pool.task.delete" | "infrastructure.ips.pool.create" | "sdn.network.update" | "sdn.network.task.delete" | "sdn.network.create" | "sdn.network.task.reconfigure" | "pipeline.delete" | "pipeline.trigger" | "pipeline.update" | "pipeline.task.delete" | "pipeline.create" | "pipeline.task.trigger" | "pipeline.run.completed" | "pipeline.key.update" | "pipeline.key.delete" | "pipeline.key.create" | "virtual-machine.create" | "virtual-machine.initialize" | "virtual-machine.task.start" | "virtual-machine.start" | "virtual-machine.task.stop" | "virtual-machine.stop" | "virtual-machine.reconfigure" | "virtual-machine.task.reconfigure" | "virtual-machine.update" | "virtual-machine.task.delete" | "virtual-machine.delete" | "virtual-machine.sos.login" | "virtual-machine.rootpw.change" | "virtual-machine.task.volumes.reconfigure" | "virtual-machine.volumes.reconfigure" | "virtual-machine.ssh-key.create" | "virtual-machine.ssh-key.update" | "virtual-machine.ssh-key.task.delete" | "virtual-machine.ssh-key.delete" | "virtual-machine.ip.allocate" | "virtual-machine.task.ip.allocate" | "virtual-machine.ip.unallocate" | "virtual-machine.task.ip.unallocate";
11764
12258
  /** @description A timestamp for when the activity took place. */
11765
12259
  time: components["schemas"]["DateTime"];
11766
12260
  };
12261
+ /**
12262
+ * VirtualProviderIsoNicStaticFlavor
12263
+ * @description The static subconfiguration for ipv4 or ipv6.
12264
+ */
12265
+ VirtualProviderIsoNicStaticFlavor: {
12266
+ /** @description Static IP assigned to the server for given IP type. */
12267
+ ip?: components["schemas"]["IpAddress"];
12268
+ /** @description Network assigned to the server */
12269
+ network: components["schemas"]["Cidr"];
12270
+ /** @description Gateway IP assigned to the server. */
12271
+ gateway_ip?: components["schemas"]["IpAddress"] | null;
12272
+ };
11767
12273
  /**
11768
12274
  * VirtualProviderIsoNic
11769
12275
  * @description Server ISO network interface.
@@ -11780,12 +12286,8 @@ export interface components {
11780
12286
  vlan_id?: number | null;
11781
12287
  /** @description The static configuration for the network interface. */
11782
12288
  static?: {
11783
- /** @description Static IP assigned to the server. */
11784
- static_ip: components["schemas"]["IpAddress"];
11785
- /** @description Network assigned to the server */
11786
- network: components["schemas"]["Cidr"];
11787
- /** @description Gateway IP assigned to the server. */
11788
- gateway_ip?: components["schemas"]["IpAddress"] | null;
12289
+ ipv4?: components["schemas"]["VirtualProviderIsoNicStaticFlavor"] | null;
12290
+ ipv6?: components["schemas"]["VirtualProviderIsoNicStaticFlavor"] | null;
11789
12291
  } | null;
11790
12292
  /** @description The DHCP configuration for the network interface. */
11791
12293
  dhcp?: {
@@ -11947,6 +12449,7 @@ export interface components {
11947
12449
  /** @description Of the total number of IP's how many are available to be assigned. */
11948
12450
  available: number;
11949
12451
  };
12452
+ options?: components["schemas"]["IpOptions"] | null;
11950
12453
  /** @description Network information about the pool. */
11951
12454
  block: {
11952
12455
  /** @description A cidr for the pool. */
@@ -12315,7 +12818,7 @@ export interface components {
12315
12818
  };
12316
12819
  /**
12317
12820
  * ContainerDeprecateStep
12318
- * @description Settings for restarting a container in a pipeline
12821
+ * @description Settings for deprecating a container in a pipeline.
12319
12822
  */
12320
12823
  ContainerDeprecateStep: {
12321
12824
  /** @description An identifier for the step. */
@@ -12678,7 +13181,7 @@ export interface components {
12678
13181
  * @description Optional update object used to specify specific params to update from the stack build.
12679
13182
  */
12680
13183
  StackBuildDeploymentUpdates: {
12681
- /** @description A map of the container names to update within the environment. */
13184
+ /** @description A map of the container identifiers to update within the environment. */
12682
13185
  containers: {
12683
13186
  [key: string]: components["schemas"]["StackDeployContainersObject"];
12684
13187
  };
@@ -12713,6 +13216,9 @@ export interface components {
12713
13216
  build: components["schemas"]["FluidIdentifier"];
12714
13217
  environment: components["schemas"]["FluidIdentifier"];
12715
13218
  update?: components["schemas"]["StackBuildDeploymentUpdates"] | null;
13219
+ variables?: {
13220
+ [key: string]: string;
13221
+ } | null;
12716
13222
  deployment?: components["schemas"]["Deployment"] | null;
12717
13223
  };
12718
13224
  };
@@ -13002,11 +13508,252 @@ export interface components {
13002
13508
  last_sync: components["schemas"]["DateTime"];
13003
13509
  };
13004
13510
  };
13511
+ /**
13512
+ * ExternalVolumeAbout
13513
+ * @description Additional details about the external volume.
13514
+ */
13515
+ ExternalVolumeAbout: {
13516
+ /** @description Custom details about this external volume. */
13517
+ description: string;
13518
+ };
13519
+ /**
13520
+ * SourceSanIscsi
13521
+ * @description A SAN iSCSI volume source. Defines one or more iSCSI targets and the LUN number to attach.
13522
+ *
13523
+ */
13524
+ SourceSanIscsi: {
13525
+ /**
13526
+ * @description discriminator enum property added by openapi-typescript
13527
+ * @enum {string}
13528
+ */
13529
+ type: "san-iscsi";
13530
+ details: {
13531
+ /** @description One or more iSCSI integration IDs to use for authentication.
13532
+ * */
13533
+ integration_ids: components["schemas"]["ID"][];
13534
+ /**
13535
+ * Format: int32
13536
+ * @description Logical Unit Number exposed by the target(s) to attach.
13537
+ *
13538
+ */
13539
+ lun: number;
13540
+ };
13541
+ };
13542
+ /**
13543
+ * SourceCephRbdImageRef
13544
+ * @description Reference to the specific RBD image to attach.
13545
+ */
13546
+ SourceCephRbdImageRef: {
13547
+ /** @description Name of the Ceph pool containing the RBD image. */
13548
+ pool: string;
13549
+ /** @description Optional RBD namespace within the pool. */
13550
+ namespace?: string;
13551
+ /** @description Name of the RBD image. */
13552
+ name: string;
13553
+ /** @description Optional snapshot name if attaching a snapshot view of the image. */
13554
+ snapshot?: string;
13555
+ };
13556
+ /**
13557
+ * SourceCephRbd
13558
+ * @description A Ceph RBD volume source. Defines monitor endpoints, optional cluster FSID, client identity (CephX), and the specific image to attach.
13559
+ *
13560
+ */
13561
+ SourceCephRbd: {
13562
+ /**
13563
+ * @description discriminator enum property added by openapi-typescript
13564
+ * @enum {string}
13565
+ */
13566
+ type: "ceph-rbd";
13567
+ details: {
13568
+ /** @description The ID of a Ceph cluster integration for authentication.
13569
+ * */
13570
+ integration_id: components["schemas"]["ID"];
13571
+ image: components["schemas"]["SourceCephRbdImageRef"];
13572
+ };
13573
+ };
13574
+ /**
13575
+ * SourceAwsEbsAuth
13576
+ * @description AWS credentials for accessing EBS. Either an instance role may be used or explicit Access Key credentials may be provided.
13577
+ *
13578
+ */
13579
+ SourceAwsEbsAuth: {
13580
+ /** @description When true, use the instance's IAM role for authentication.
13581
+ * */
13582
+ use_instance_role?: boolean;
13583
+ /** @description AWS Access Key ID to use for authentication (optional if using instance role).
13584
+ * */
13585
+ access_key_id?: string;
13586
+ /**
13587
+ * Format: password
13588
+ * @description AWS Secret Access Key to use for authentication (optional if using instance role).
13589
+ *
13590
+ */
13591
+ secret_access_key?: string;
13592
+ };
13593
+ /**
13594
+ * SourceAwsEbsRef
13595
+ * @description Reference to the specific EBS volume to attach.
13596
+ */
13597
+ SourceAwsEbsRef: {
13598
+ /** @description The EBS volume ID (for example, "vol-0abcd1234ef567890").
13599
+ * */
13600
+ volume_id: string;
13601
+ /** @description Optional AWS Availability Zone where the volume resides (for example, "us-east-1a").
13602
+ * */
13603
+ az?: string;
13604
+ };
13605
+ /**
13606
+ * SourceAwsEbs
13607
+ * @description An AWS EBS volume source. Defines how to authenticate to AWS and which EBS volume to attach.
13608
+ *
13609
+ */
13610
+ SourceAwsEbs: {
13611
+ /**
13612
+ * @description discriminator enum property added by openapi-typescript
13613
+ * @enum {string}
13614
+ */
13615
+ type: "aws-ebs";
13616
+ details: {
13617
+ auth: components["schemas"]["SourceAwsEbsAuth"];
13618
+ volume: components["schemas"]["SourceAwsEbsRef"];
13619
+ };
13620
+ };
13621
+ /**
13622
+ * ExternalVolumeSource
13623
+ * @description The source information for this volume.
13624
+ *
13625
+ */
13626
+ ExternalVolumeSource: components["schemas"]["SourceSanIscsi"] | components["schemas"]["SourceCephRbd"] | components["schemas"]["SourceAwsEbs"];
13627
+ /**
13628
+ * ExternalVolumeAttachmentBlock
13629
+ * @description Configuration for a block volume attachment.
13630
+ */
13631
+ ExternalVolumeAttachmentBlock: {
13632
+ /**
13633
+ * @description discriminator enum property added by openapi-typescript
13634
+ * @enum {string}
13635
+ */
13636
+ type: "block";
13637
+ /**
13638
+ * @description The access mode for the attachment.
13639
+ * @enum {string}
13640
+ */
13641
+ mode: "single-instance-writer" | "single-instance-read-only" | "single-node-writer" | "single-node-read-only" | "multi-node-writer" | "multi-node-read-only";
13642
+ /** @description Details for a block attachment. Present when `type` is `block`. */
13643
+ details: Record<string, never>;
13644
+ };
13645
+ /**
13646
+ * ExternalVolumeAttachmentFileSystem
13647
+ * @description Configuration for a filesystem volume attachment.
13648
+ */
13649
+ ExternalVolumeAttachmentFileSystem: {
13650
+ /**
13651
+ * @description discriminator enum property added by openapi-typescript
13652
+ * @enum {string}
13653
+ */
13654
+ type: "filesystem";
13655
+ /**
13656
+ * @description The access mode for the attachment.
13657
+ * @enum {string}
13658
+ */
13659
+ mode: "single-instance-writer" | "single-instance-read-only" | "single-node-writer" | "single-node-read-only" | "multi-node-writer" | "multi-node-read-only";
13660
+ /** @description Details for a filesystem attachment. Present when `type` is `filesystem`. */
13661
+ details: Record<string, never>;
13662
+ };
13663
+ /**
13664
+ * ExternalVolumeAttachment
13665
+ * @description Attachment configuration for an external volume.
13666
+ */
13667
+ ExternalVolumeAttachment: components["schemas"]["ExternalVolumeAttachmentBlock"] | components["schemas"]["ExternalVolumeAttachmentFileSystem"];
13668
+ /**
13669
+ * ExternalVolumeOptions
13670
+ * @description Configuration options controlling the behavior of the volume.
13671
+ */
13672
+ ExternalVolumeOptions: {
13673
+ /** @description If the volume doesn't exist, attempt to create it on container start if create struct defined.
13674
+ * */
13675
+ create: {
13676
+ /** @description Indicates the size of volume to create. */
13677
+ size: components["schemas"]["DataSize"];
13678
+ } | null;
13679
+ };
13680
+ /** ExternalVolumeState */
13681
+ ExternalVolumeState: {
13682
+ /**
13683
+ * @description The current lifecycle state of the volume.
13684
+ * @enum {string}
13685
+ */
13686
+ current: "new" | "configuring" | "live" | "deleting" | "deleted";
13687
+ } & components["schemas"]["State"];
13688
+ /**
13689
+ * ExternalVolumeEvents
13690
+ * @description Timestamps for events that happen over the lifetime of the attached volume.
13691
+ */
13692
+ ExternalVolumeEvents: {
13693
+ /** @description The timestamp of when the attached volume was created. */
13694
+ created: components["schemas"]["DateTime"];
13695
+ /** @description The timestamp of when the attached volume was updated. */
13696
+ updated: components["schemas"]["DateTime"];
13697
+ /** @description The timestamp of when the attached volume was deleted. */
13698
+ deleted: components["schemas"]["DateTime"];
13699
+ /** @description Timestamp of the last successful verification event for this volume.
13700
+ * */
13701
+ last_verified?: components["schemas"]["DateTime"];
13702
+ /** @description Timestamp of the last successful synchronization event for this volume.
13703
+ * */
13704
+ last_sync?: components["schemas"]["DateTime"];
13705
+ };
13706
+ /**
13707
+ * ContainerSummary
13708
+ * @description Lightweight summary of a container for environment pages and lists.
13709
+ */
13710
+ ContainerSummary: {
13711
+ id: components["schemas"]["ID"];
13712
+ /** @description A user defined name for the container. */
13713
+ name: string;
13714
+ state: components["schemas"]["ContainerState"];
13715
+ image: components["schemas"]["ImageSummary"];
13716
+ environment: components["schemas"]["ContainerEnvironmentSummary"];
13717
+ volumes: components["schemas"]["VolumeSummary"][];
13718
+ };
13719
+ /**
13720
+ * ExternalVolumeMeta
13721
+ * @description A list of meta fields that can be applied to an attached volume.
13722
+ */
13723
+ ExternalVolumeMeta: {
13724
+ containers?: components["schemas"]["ContainerSummary"][];
13725
+ };
13726
+ /**
13727
+ * ExternalVolume
13728
+ * @description A persistent storage volume within a cluster. Volumes may be attached to containers or VMs and can originate from different storage sources.
13729
+ *
13730
+ */
13731
+ ExternalVolume: {
13732
+ id: components["schemas"]["ID"];
13733
+ hub_id: components["schemas"]["HubID"];
13734
+ /** @description The name of the external volume. */
13735
+ name: string;
13736
+ about: components["schemas"]["ExternalVolumeAbout"];
13737
+ cluster: components["schemas"]["Identifier"];
13738
+ identifier?: components["schemas"]["Identifier"] | null;
13739
+ location_id: components["schemas"]["ID"];
13740
+ server_ids: components["schemas"]["ID"][];
13741
+ source: components["schemas"]["ExternalVolumeSource"];
13742
+ /** @description Information about the resource the external volume is currently attached to. */
13743
+ attachment?: components["schemas"]["ExternalVolumeAttachment"];
13744
+ /** @description Size of the external volume; may be null or omitted if the size has not yet been determined.
13745
+ * */
13746
+ size?: components["schemas"]["DataSize"] | null;
13747
+ options: components["schemas"]["ExternalVolumeOptions"];
13748
+ state: components["schemas"]["ExternalVolumeState"];
13749
+ events: components["schemas"]["ExternalVolumeEvents"];
13750
+ meta?: components["schemas"]["ExternalVolumeMeta"];
13751
+ };
13005
13752
  /**
13006
13753
  * ResourceType
13007
13754
  * @enum {string}
13008
13755
  */
13009
- ResourceType: "account" | "image.source" | "image" | "container" | "container.instance" | "virtual-machine" | "virtual-machine.ssh-key" | "hub" | "hub.api_key" | "hub.membership" | "hub.role" | "sdn.network" | "dns.certificate" | "dns.zone" | "dns.zone.record" | "pipeline" | "pipeline.run" | "stack" | "stack.build" | "infrastructure.provider" | "infrastructure.autoscale.group" | "infrastructure.server" | "infrastructure.cluster" | "infrastructure.ips.pool" | "billing.invoice" | "billing.method" | "environment" | "environment.scoped-variable";
13756
+ ResourceType: "account" | "image.source" | "image" | "container" | "container.instance" | "virtual-machine" | "virtual-machine.ssh-key" | "hub" | "hub.api_key" | "hub.membership" | "hub.role" | "sdn.network" | "dns.certificate" | "dns.zone" | "dns.zone.record" | "pipeline" | "pipeline.run" | "stack" | "stack.build" | "infrastructure.provider" | "infrastructure.autoscale.group" | "infrastructure.server" | "infrastructure.cluster" | "infrastructure.external-volume" | "infrastructure.ips.pool" | "billing.invoice" | "billing.method" | "environment" | "environment.scoped-variable";
13010
13757
  /** PipelineRunStep */
13011
13758
  PipelineRunStep: {
13012
13759
  identifier: string;
@@ -13111,7 +13858,7 @@ export interface components {
13111
13858
  * @description A resource that is associated with activity.
13112
13859
  */
13113
13860
  ComponentsIncludes: {
13114
- [key: string]: components["schemas"]["Container"] | components["schemas"]["VirtualMachine"] | components["schemas"]["Instance"] | components["schemas"]["Environment"] | components["schemas"]["Image"] | components["schemas"]["ImageSource"] | components["schemas"]["Server"] | components["schemas"]["VirtualProviderIso"] | components["schemas"]["IpPool"] | components["schemas"]["Integration"] | components["schemas"]["Stack"] | components["schemas"]["StackBuild"] | components["schemas"]["DnsZone"] | components["schemas"]["DnsRecord"] | components["schemas"]["TlsCertificate"] | components["schemas"]["ApiKey"] | components["schemas"]["Network"] | components["schemas"]["HubMembership"] | components["schemas"]["Pipeline"] | components["schemas"]["TriggerKey"] | components["schemas"]["ScopedVariable"] | components["schemas"]["Hub"] | components["schemas"]["Invoice"] | components["schemas"]["Method"] | components["schemas"]["AutoScaleGroup"] | components["schemas"]["PipelineRun"] | components["schemas"]["Role"] | components["schemas"]["PublicAccount"] | components["schemas"]["VirtualMachineSshKey"];
13861
+ [key: string]: components["schemas"]["Container"] | components["schemas"]["VirtualMachine"] | components["schemas"]["Instance"] | components["schemas"]["Environment"] | components["schemas"]["Image"] | components["schemas"]["ImageSource"] | components["schemas"]["Server"] | components["schemas"]["VirtualProviderIso"] | components["schemas"]["IpPool"] | components["schemas"]["Integration"] | components["schemas"]["Stack"] | components["schemas"]["StackBuild"] | components["schemas"]["DnsZone"] | components["schemas"]["DnsRecord"] | components["schemas"]["TlsCertificate"] | components["schemas"]["ApiKey"] | components["schemas"]["Network"] | components["schemas"]["HubMembership"] | components["schemas"]["Pipeline"] | components["schemas"]["TriggerKey"] | components["schemas"]["ScopedVariable"] | components["schemas"]["Hub"] | components["schemas"]["Invoice"] | components["schemas"]["Method"] | components["schemas"]["AutoScaleGroup"] | components["schemas"]["ExternalVolume"] | components["schemas"]["PipelineRun"] | components["schemas"]["Role"] | components["schemas"]["PublicAccount"] | components["schemas"]["VirtualMachineSshKey"];
13115
13862
  };
13116
13863
  /**
13117
13864
  * ActivityIncludes
@@ -13410,6 +14157,31 @@ export interface components {
13410
14157
  };
13411
14158
  price: components["schemas"]["BillingAmount"];
13412
14159
  };
14160
+ /**
14161
+ * ExternalVolumeAttachAction
14162
+ * @description A task to attach an external volume.
14163
+ */
14164
+ ExternalVolumeAttachAction: {
14165
+ /**
14166
+ * @description The name of the action to perform (attach). (enum property replaced by openapi-typescript)
14167
+ * @enum {string}
14168
+ */
14169
+ action: "attach";
14170
+ contents: components["schemas"]["ExternalVolumeAttachment"];
14171
+ };
14172
+ /**
14173
+ * ExternalVolumeDetachAction
14174
+ * @description A task to detach an external volume from an instance.
14175
+ */
14176
+ ExternalVolumeDetachAction: {
14177
+ /**
14178
+ * @description The name of the action to perform (detach). (enum property replaced by openapi-typescript)
14179
+ * @enum {string}
14180
+ */
14181
+ action: "detach";
14182
+ };
14183
+ /** ExternalVolumeTask */
14184
+ ExternalVolumeTasks: components["schemas"]["ExternalVolumeAttachAction"] | components["schemas"]["ExternalVolumeDetachAction"];
13413
14185
  /**
13414
14186
  * ServerModelsIncludes
13415
14187
  * @description A resource associated with a server models.
@@ -13704,6 +14476,25 @@ export interface components {
13704
14476
  integrations?: components["schemas"]["IntegrationsIncludes"];
13705
14477
  locations?: components["schemas"]["LocationsIncludes"];
13706
14478
  };
14479
+ /** IpPoolInitializeAction */
14480
+ IpPoolInitializeAction: {
14481
+ /**
14482
+ * @description The action to take. (enum property replaced by openapi-typescript)
14483
+ * @enum {string}
14484
+ */
14485
+ action: "initialize";
14486
+ };
14487
+ /** IpPoolReconfigureOptionsAction */
14488
+ IpPoolReconfigureOptionsAction: {
14489
+ /**
14490
+ * @description The action to take. (enum property replaced by openapi-typescript)
14491
+ * @enum {string}
14492
+ */
14493
+ action: "options.reconfigure";
14494
+ contents?: components["schemas"]["IpOptions"] | null;
14495
+ };
14496
+ /** IpPoolTask */
14497
+ IpPoolTask: components["schemas"]["IpPoolInitializeAction"] | components["schemas"]["IpPoolReconfigureOptionsAction"];
13707
14498
  /** TaskState */
13708
14499
  TaskState: {
13709
14500
  changed?: components["schemas"]["DateTime"];
@@ -13903,7 +14694,7 @@ export interface components {
13903
14694
  * EventType
13904
14695
  * @enum {string}
13905
14696
  */
13906
- EventType: "api.security_violation" | "console.ssh.login" | "console.ssh.login.failed" | "console.sos.login" | "console.sos.login.failed" | "container.instance.backup.completed" | "container.instance.backup.failed" | "container.instance.delete.failed" | "container.instance.error" | "container.instance.restart.max_restarts" | "container.instance.function.max_runtime" | "container.instance.healthcheck.failed" | "container.instance.healthcheck.recovered" | "container.instance.volume.extend.failed" | "container.instance.healthcheck.restarted" | "container.instance.migration.completed" | "container.instance.migration.failed" | "container.instance.network.interfaces.create.failed" | "container.instance.restart.failed" | "container.instance.start.failed" | "container.instance.start.privileged" | "container.instance.stop.failed" | "container.instances.autoscale.down" | "container.instances.autoscale.up" | "container.reconfigured.privileged" | "container.volumes.base.create.failed" | "container.volumes.create.failed" | "environment.service.auto_update" | "environment.service.lb.ips.sync.failed" | "environment.service.vpn.login.failed" | "environment.service.discovery.client.throttle.hit" | "infrastructure.cluster.resources.ram.full" | "infrastructure.server.compute.volumes.base.reconfigured" | "infrastructure.server.compute.full_restart" | "infrastructure.server.compute.sharedfs.mounts.mount" | "infrastructure.server.compute.sharedfs.mounts.mount.failed" | "infrastructure.server.compute.soft_restart" | "infrastructure.server.image.download.failed" | "infrastructure.server.monitoring.throttled" | "infrastructure.server.internal_api.throttled" | "infrastructure.server.manifest.sync.failed" | "infrastructure.server.mesh.connect.failed" | "infrastructure.server.neighbor.reachable" | "infrastructure.server.neighbor.rebuild" | "infrastructure.server.neighbors.rebuild" | "infrastructure.server.neighbor.unreachable" | "infrastructure.server.neighbor.upgraded" | "infrastructure.server.resources.load.high" | "infrastructure.server.resources.ram.full" | "infrastructure.server.resources.storage.volumes.base.full" | "infrastructure.server.resources.storage.cycle_pool.full" | "infrastructure.server.autoscale.up" | "infrastructure.server.sftp.lockdown" | "infrastructure.server.sftp.login" | "infrastructure.server.sftp.login.failed" | "infrastructure.server.evacuation.failed" | "infrastructure.server.evacuation.completed" | "infrastructure.server.checkin.missed" | "infrastructure.server.checkin.resumed" | "infrastructure.server.power.reboot" | "infrastructure.server.power.power-off";
14697
+ EventType: "api.security_violation" | "console.ssh.login" | "console.ssh.login.failed" | "console.sos.login" | "console.sos.login.failed" | "container.instance.backup.completed" | "container.instance.backup.failed" | "container.instance.delete.failed" | "container.instance.error" | "container.instance.restart.max_restarts" | "container.instance.function.max_runtime" | "container.instance.healthcheck.failed" | "container.instance.healthcheck.recovered" | "container.instance.volume.extend.failed" | "container.instance.healthcheck.restarted" | "container.instance.migration.completed" | "container.instance.migration.failed" | "container.instance.network.interfaces.create.failed" | "container.instance.restart.failed" | "container.instance.start.failed" | "container.instance.start.privileged" | "container.instance.stop.failed" | "container.instances.autoscale.down" | "container.instances.autoscale.up" | "container.reconfigured.privileged" | "container.volumes.base.create.failed" | "container.volumes.create.failed" | "environment.service.auto_update" | "environment.service.lb.ips.sync.failed" | "environment.service.vpn.login.failed" | "environment.service.discovery.client.throttle.hit" | "environment.service.gateway.ips.sync.failed" | "infrastructure.cluster.resources.ram.full" | "infrastructure.server.compute.volumes.base.reconfigured" | "infrastructure.server.compute.full_restart" | "infrastructure.server.compute.sharedfs.mounts.mount" | "infrastructure.server.compute.sharedfs.mounts.mount.failed" | "infrastructure.server.compute.soft_restart" | "infrastructure.server.image.download.failed" | "infrastructure.server.monitoring.throttled" | "infrastructure.server.internal_api.throttled" | "infrastructure.server.manifest.sync.failed" | "infrastructure.server.mesh.connect.failed" | "infrastructure.server.neighbor.reachable" | "infrastructure.server.neighbor.rebuild" | "infrastructure.server.neighbors.rebuild" | "infrastructure.server.neighbor.unreachable" | "infrastructure.server.neighbor.upgraded" | "infrastructure.server.resources.load.high" | "infrastructure.server.resources.ram.full" | "infrastructure.server.resources.storage.volumes.base.full" | "infrastructure.server.resources.storage.cycle_pool.full" | "infrastructure.server.autoscale.up" | "infrastructure.server.sftp.lockdown" | "infrastructure.server.sftp.login" | "infrastructure.server.sftp.login.failed" | "infrastructure.server.evacuation.failed" | "infrastructure.server.evacuation.completed" | "infrastructure.server.checkin.missed" | "infrastructure.server.checkin.resumed" | "infrastructure.server.power.reboot" | "infrastructure.server.power.power-off" | "infrastructure.server.neighbor.incompatible";
13907
14698
  /**
13908
14699
  * Event
13909
14700
  * @description A platform-generated event. Describes something happening on the platform at a specific time. Can be informational, security related, or a notice of something important.
@@ -14058,6 +14849,30 @@ export interface components {
14058
14849
  creators?: components["schemas"]["CreatorInclude"];
14059
14850
  environments?: components["schemas"]["EnvironmentIncludes"];
14060
14851
  };
14852
+ /** ReconfigureSdnNetworkAction */
14853
+ ReconfigureSdnNetworkAction: {
14854
+ /**
14855
+ * @description The job to do. (enum property replaced by openapi-typescript)
14856
+ * @enum {string}
14857
+ */
14858
+ action: "reconfigure";
14859
+ /** @description Additional information needed for the job. */
14860
+ contents: {
14861
+ /** @description An array of environment identifiers for the network. */
14862
+ environment_ids?: string[] | null;
14863
+ l2?: {
14864
+ location_ids?: components["schemas"]["ID"][];
14865
+ host_interface?: string | null;
14866
+ /** @description An array of defined L2 routes */
14867
+ routes?: {
14868
+ usable?: components["schemas"]["Cidr"];
14869
+ gateway?: components["schemas"]["IpAddress"];
14870
+ }[];
14871
+ } | null;
14872
+ };
14873
+ };
14874
+ /** SdnNetworkTask */
14875
+ SdnNetworkTask: components["schemas"]["ReconfigureSdnNetworkAction"];
14061
14876
  /**
14062
14877
  * IndexComponent
14063
14878
  * @description Generic component format for describing resources for the search index
@@ -14128,6 +14943,9 @@ export interface components {
14128
14943
  virtual_machines: {
14129
14944
  [key: string]: components["schemas"]["Component"];
14130
14945
  };
14946
+ instances: {
14947
+ [key: string]: components["schemas"]["Component"];
14948
+ };
14131
14949
  };
14132
14950
  /**
14133
14951
  * StackIncludes
@@ -14193,6 +15011,10 @@ export interface components {
14193
15011
  /** @description The ID for the environment this stack build will be deployed to. */
14194
15012
  environment_id: string;
14195
15013
  deployment?: components["schemas"]["Deployment"] | null;
15014
+ /** @description Custom variables applied to the stack during deploy. Any place in the stack where a `{{variable}}` is used is replaced with the value of the variable supplied in this map. */
15015
+ variables?: {
15016
+ [key: string]: string;
15017
+ };
14196
15018
  update?: components["schemas"]["StackBuildDeploymentUpdates"] | null;
14197
15019
  };
14198
15020
  };
@@ -14233,6 +15055,14 @@ export interface components {
14233
15055
  */
14234
15056
  action: "stop";
14235
15057
  };
15058
+ /** VirtualMachineRestartAction */
15059
+ VirtualMachineRestartAction: {
15060
+ /**
15061
+ * @description The name of the action to perform. (enum property replaced by openapi-typescript)
15062
+ * @enum {string}
15063
+ */
15064
+ action: "restart";
15065
+ };
14236
15066
  /** VirtualMachineReconfigureAction */
14237
15067
  VirtualMachineReconfigureAction: {
14238
15068
  /**
@@ -14278,8 +15108,23 @@ export interface components {
14278
15108
  ip_id: components["schemas"]["ID"];
14279
15109
  };
14280
15110
  };
14281
- /** VirtualMachineStopTask.yml */
14282
- VirtualMachineTask: components["schemas"]["VirtualMachineStartAction"] | components["schemas"]["VirtualMachineStopAction"] | components["schemas"]["VirtualMachineReconfigureAction"] | components["schemas"]["VirtualMachineRootPwChangeAction"] | components["schemas"]["VirtualMachineIpAllocateAction"] | components["schemas"]["VirtualMachineIpUnallocateAction"];
15111
+ /** VirtualMachineReconfigureVolumesAction */
15112
+ VirtualMachineReconfigureVolumesAction: {
15113
+ /**
15114
+ * @description The action to take. (enum property replaced by openapi-typescript)
15115
+ * @enum {string}
15116
+ */
15117
+ action: "volumes.reconfigure";
15118
+ /** @description An array of volume objects to be reconfigured. */
15119
+ contents: {
15120
+ id: components["schemas"]["ID"];
15121
+ /** @description A unique hash for the given volume. */
15122
+ hash: string;
15123
+ config: components["schemas"]["VirtualMachineVolumeConfig"];
15124
+ }[];
15125
+ };
15126
+ /** VirtualMachineTask.yml */
15127
+ VirtualMachineTask: components["schemas"]["VirtualMachineStartAction"] | components["schemas"]["VirtualMachineStopAction"] | components["schemas"]["VirtualMachineRestartAction"] | components["schemas"]["VirtualMachineReconfigureAction"] | components["schemas"]["VirtualMachineRootPwChangeAction"] | components["schemas"]["VirtualMachineIpAllocateAction"] | components["schemas"]["VirtualMachineIpUnallocateAction"] | components["schemas"]["VirtualMachineReconfigureVolumesAction"];
14283
15128
  /**
14284
15129
  * VirtualMachineBaseImage
14285
15130
  * @description Represents a virtual machine base OS image provided by Cycle.
@@ -14924,27 +15769,56 @@ export interface operations {
14924
15769
  default: components["responses"]["DefaultError"];
14925
15770
  };
14926
15771
  };
14927
- getInvoices: {
15772
+ getChangelog: {
14928
15773
  parameters: {
14929
15774
  query?: {
14930
15775
  /** @description An array of sort values. To sort descending, put a `-` in front of the value, e.g. `-id`. */
14931
15776
  sort?: components["parameters"]["SortParam"];
15777
+ filter?: components["parameters"]["FilterParam"];
14932
15778
  /** @description In a list return, the data associated with the page number and size returned. 20 results per page, page 2 would be `page[size]=20&page[number]=2` */
14933
15779
  page?: components["parameters"]["PageParam"];
14934
- /** @description A comma separated list of meta values. Meta values will show up under a resource's `meta` field. In the case of applying a meta to a collection of resources, each resource will have it's own relevant meta data. In some rare cases, meta may not apply to individual resources, and may appear in the root document. These will be clearly labeled. */
14935
- meta?: "due"[];
14936
- /** @description ## Filter Field
14937
- * The filter field is a key-value object, where the key is what you would like to filter, and the value is the value you're filtering for.
14938
- * */
14939
- filter?: {
14940
- /** @description `filter[search]=value` search for the specified text on supported fields.
14941
- * */
14942
- search?: string;
14943
- /** @description `filter[state]=value1,value2` state filtering will allow you to filter by the invoice's current state.
14944
- * */
14945
- state?: string;
14946
- /** @description The start date from when to pull the invoices */
14947
- "range-start"?: components["schemas"]["DateTime"];
15780
+ };
15781
+ header?: never;
15782
+ path?: never;
15783
+ cookie?: never;
15784
+ };
15785
+ requestBody?: never;
15786
+ responses: {
15787
+ /** @description Returns an array of changelog entries. */
15788
+ 200: {
15789
+ headers: {
15790
+ [name: string]: unknown;
15791
+ };
15792
+ content: {
15793
+ "application/json": {
15794
+ data?: components["schemas"]["ChangelogEntry"][];
15795
+ };
15796
+ };
15797
+ };
15798
+ default: components["responses"]["DefaultError"];
15799
+ };
15800
+ };
15801
+ getInvoices: {
15802
+ parameters: {
15803
+ query?: {
15804
+ /** @description An array of sort values. To sort descending, put a `-` in front of the value, e.g. `-id`. */
15805
+ sort?: components["parameters"]["SortParam"];
15806
+ /** @description In a list return, the data associated with the page number and size returned. 20 results per page, page 2 would be `page[size]=20&page[number]=2` */
15807
+ page?: components["parameters"]["PageParam"];
15808
+ /** @description A comma separated list of meta values. Meta values will show up under a resource's `meta` field. In the case of applying a meta to a collection of resources, each resource will have it's own relevant meta data. In some rare cases, meta may not apply to individual resources, and may appear in the root document. These will be clearly labeled. */
15809
+ meta?: "due"[];
15810
+ /** @description ## Filter Field
15811
+ * The filter field is a key-value object, where the key is what you would like to filter, and the value is the value you're filtering for.
15812
+ * */
15813
+ filter?: {
15814
+ /** @description `filter[search]=value` search for the specified text on supported fields.
15815
+ * */
15816
+ search?: string;
15817
+ /** @description `filter[state]=value1,value2` state filtering will allow you to filter by the invoice's current state.
15818
+ * */
15819
+ state?: string;
15820
+ /** @description The start date from when to pull the invoices */
15821
+ "range-start"?: components["schemas"]["DateTime"];
14948
15822
  /** @description The end date from when to pull the invoices */
14949
15823
  "range-end"?: components["schemas"]["DateTime"];
14950
15824
  };
@@ -15518,7 +16392,7 @@ export interface operations {
15518
16392
  };
15519
16393
  content: {
15520
16394
  "application/json": {
15521
- data: components["schemas"]["Service"][];
16395
+ data: components["schemas"]["BillingService"][];
15522
16396
  };
15523
16397
  };
15524
16398
  };
@@ -15544,7 +16418,7 @@ export interface operations {
15544
16418
  };
15545
16419
  content: {
15546
16420
  "application/json": {
15547
- data: components["schemas"]["Service"];
16421
+ data: components["schemas"]["BillingService"];
15548
16422
  };
15549
16423
  };
15550
16424
  };
@@ -17042,8 +17916,8 @@ export interface operations {
17042
17916
  query: {
17043
17917
  /** @description The domain to lookup. */
17044
17918
  domain: string;
17045
- /** @description Whether or not to lookup a *. wildcard certificate that would be applicable for this domain. For example, if you are looking for a certificate for x.test.com, setting this to true will identify a *.test.com certificate that would also be applicable. */
17046
- wildcard?: boolean;
17919
+ /** @description If true, will include the private key, bundle, and/or CSR for this certificate. Requires the `dns-certs-view` capability. */
17920
+ private?: boolean;
17047
17921
  };
17048
17922
  header?: never;
17049
17923
  path?: never;
@@ -17051,31 +17925,17 @@ export interface operations {
17051
17925
  };
17052
17926
  requestBody?: never;
17053
17927
  responses: {
17054
- /** @description Returns a TLS certificate bundle. */
17928
+ /** @description Returns a TLS certificate bundle if available. */
17055
17929
  200: {
17056
17930
  headers: {
17057
17931
  [name: string]: unknown;
17058
17932
  };
17059
17933
  content: {
17060
17934
  "application/json": {
17061
- /** @description A DNS TLS certificate. */
17062
- data: {
17063
- id: components["schemas"]["ID"];
17064
- hub_id: components["schemas"]["HubID"];
17065
- /** @description A list of domains associated with the certificate. */
17066
- domains: string[];
17067
- /** @description A collection of timestamps for each event in the certificate's lifetime. */
17068
- events: {
17069
- created?: components["schemas"]["DateTime"];
17070
- updated?: components["schemas"]["DateTime"];
17071
- deleted?: components["schemas"]["DateTime"];
17072
- /** @description When the certificate was generated. */
17073
- generated?: components["schemas"]["DateTime"];
17074
- };
17075
- /** @description The certificate bundle */
17076
- bundle: string;
17077
- /** @description The private key for the certificate */
17078
- private_key: string;
17935
+ data: components["schemas"]["TlsCertificate"] & {
17936
+ private_key?: string;
17937
+ bundle?: string;
17938
+ csr?: string;
17079
17939
  };
17080
17940
  };
17081
17941
  };
@@ -17289,7 +18149,7 @@ export interface operations {
17289
18149
  "application/json": {
17290
18150
  /** @description A user defined name for the Environment. */
17291
18151
  name: string;
17292
- identifier?: components["schemas"]["Identifier"];
18152
+ identifier?: components["schemas"]["Identifier"] | null;
17293
18153
  acl?: components["schemas"]["ACL"] | null;
17294
18154
  /** @description The cluster this Environment is associated with. */
17295
18155
  cluster: string;
@@ -19592,6 +20452,8 @@ export interface operations {
19592
20452
  args?: {
19593
20453
  [key: string]: string;
19594
20454
  };
20455
+ /** @description If true, will skip using /dev/shm when building an image on factory. Allows for building much larger images. */
20456
+ use_disk?: boolean;
19595
20457
  };
19596
20458
  /** @description An override object to be used for a single Image create request. */
19597
20459
  override?: {
@@ -20127,6 +20989,295 @@ export interface operations {
20127
20989
  default: components["responses"]["DefaultError"];
20128
20990
  };
20129
20991
  };
20992
+ getExternalVolumes: {
20993
+ parameters: {
20994
+ query?: {
20995
+ /** @description A comma separated list of meta values. Meta values will show up under a resource's `meta` field. In the case of applying a meta to a collection of resources, each resource will have it's own relevant meta data. In some rare cases, meta may not apply to individual resources, and may appear in the root document. These will be clearly labeled. */
20996
+ meta?: "containers"[];
20997
+ /** @description ## Filter Field
20998
+ * The filter field is a key-value object, where the key is what you would like to filter, and the value is the value you're filtering for.
20999
+ * */
21000
+ filter?: {
21001
+ /** @description `filter[location]=value` List only those attached volumes available at the specified location.
21002
+ * */
21003
+ location?: string;
21004
+ /** @description `filter[server-id]=value` List only those attached volumes attached to the specified server.
21005
+ * */
21006
+ server?: string;
21007
+ /** @description `filter[search]=value` List only those attached volumes within the specified cluster.
21008
+ * */
21009
+ cluster?: string;
21010
+ /** @description `filter[state]=value1,value2` state filtering will allow you to filter by the attached volume's current state.
21011
+ * */
21012
+ state?: string;
21013
+ };
21014
+ /** @description An array of sort values. To sort descending, put a `-` in front of the value, e.g. `-id`. */
21015
+ sort?: components["parameters"]["SortParam"];
21016
+ /** @description In a list return, the data associated with the page number and size returned. 20 results per page, page 2 would be `page[size]=20&page[number]=2` */
21017
+ page?: components["parameters"]["PageParam"];
21018
+ };
21019
+ header?: never;
21020
+ path?: never;
21021
+ cookie?: never;
21022
+ };
21023
+ requestBody?: never;
21024
+ responses: {
21025
+ /** @description Returns a list of external volumes. */
21026
+ 200: {
21027
+ headers: {
21028
+ [name: string]: unknown;
21029
+ };
21030
+ content: {
21031
+ "application/json": {
21032
+ data: components["schemas"]["ExternalVolume"][];
21033
+ includes?: {
21034
+ creators?: components["schemas"]["CreatorInclude"];
21035
+ };
21036
+ };
21037
+ };
21038
+ };
21039
+ default: components["responses"]["DefaultError"];
21040
+ };
21041
+ };
21042
+ createExternalVolume: {
21043
+ parameters: {
21044
+ query?: never;
21045
+ header?: never;
21046
+ path?: never;
21047
+ cookie?: never;
21048
+ };
21049
+ requestBody?: {
21050
+ content: {
21051
+ "application/json": {
21052
+ /** @description A custom name for the external volume. */
21053
+ name: string;
21054
+ identifier?: components["schemas"]["Identifier"] | null;
21055
+ acl?: components["schemas"]["ACL"] | null;
21056
+ /** @description The cluster this external volume is associated with. */
21057
+ cluster: string;
21058
+ location_id: components["schemas"]["ID"];
21059
+ server_ids: components["schemas"]["ID"][];
21060
+ source: components["schemas"]["ExternalVolumeSource"];
21061
+ /** @description Information about the resource the external volume is currently attached to. */
21062
+ attachment: components["schemas"]["ExternalVolumeAttachment"];
21063
+ options: components["schemas"]["ExternalVolumeOptions"];
21064
+ about?: {
21065
+ /** @description A custom description for this external volume. */
21066
+ description: string;
21067
+ } | null;
21068
+ };
21069
+ };
21070
+ };
21071
+ responses: {
21072
+ /** @description Returns an external volume. */
21073
+ 201: {
21074
+ headers: {
21075
+ [name: string]: unknown;
21076
+ };
21077
+ content: {
21078
+ "application/json": {
21079
+ data: components["schemas"]["ExternalVolume"];
21080
+ };
21081
+ };
21082
+ };
21083
+ default: components["responses"]["DefaultError"];
21084
+ };
21085
+ };
21086
+ getExternalVolume: {
21087
+ parameters: {
21088
+ query?: {
21089
+ /** @description A comma-separated list of meta values. Meta values will show up under a resource's `meta` field.
21090
+ * In the case of applying a meta to a collection of resources, each resource will have its own relevant meta data.
21091
+ * In some rare cases, meta may not apply to individual resources, and may appear in the root document. These will be clearly labeled.
21092
+ * */
21093
+ meta?: "containers"[];
21094
+ };
21095
+ header?: never;
21096
+ path: {
21097
+ /** @description The ID of the external volume. */
21098
+ externalVolumeId: string;
21099
+ };
21100
+ cookie?: never;
21101
+ };
21102
+ requestBody?: never;
21103
+ responses: {
21104
+ /** @description Returns the requested virtual machine. */
21105
+ 200: {
21106
+ headers: {
21107
+ [name: string]: unknown;
21108
+ };
21109
+ content: {
21110
+ "application/json": {
21111
+ data: components["schemas"]["ExternalVolume"];
21112
+ };
21113
+ };
21114
+ };
21115
+ default: components["responses"]["DefaultError"];
21116
+ };
21117
+ };
21118
+ deleteExternalVolume: {
21119
+ parameters: {
21120
+ query?: never;
21121
+ header?: never;
21122
+ path: {
21123
+ /** @description The ID of the external volume to delete. */
21124
+ externalVolumeId: string;
21125
+ };
21126
+ cookie?: never;
21127
+ };
21128
+ requestBody?: never;
21129
+ responses: {
21130
+ /** @description Returns a job descriptor. */
21131
+ 202: {
21132
+ headers: {
21133
+ [name: string]: unknown;
21134
+ };
21135
+ content: {
21136
+ "application/json": {
21137
+ data: components["schemas"]["JobDescriptor"];
21138
+ };
21139
+ };
21140
+ };
21141
+ default: components["responses"]["DefaultError"];
21142
+ };
21143
+ };
21144
+ updateExternalVolume: {
21145
+ parameters: {
21146
+ query?: never;
21147
+ header?: never;
21148
+ path: {
21149
+ /** @description The ID of the external volume. */
21150
+ externalVolumeId: string;
21151
+ };
21152
+ cookie?: never;
21153
+ };
21154
+ /** @description Parameters for updating the external volume. */
21155
+ requestBody?: {
21156
+ content: {
21157
+ "application/json": {
21158
+ /** @description The new name of the external volume. */
21159
+ name?: string;
21160
+ /** @description The new identifier of the external volume. */
21161
+ identifier?: components["schemas"]["Identifier"];
21162
+ options?: components["schemas"]["ExternalVolumeOptions"];
21163
+ about?: {
21164
+ /** @description Updated description for the attached volume. */
21165
+ description?: string;
21166
+ };
21167
+ };
21168
+ };
21169
+ };
21170
+ responses: {
21171
+ /** @description Returns the updated external volume. */
21172
+ 200: {
21173
+ headers: {
21174
+ [name: string]: unknown;
21175
+ };
21176
+ content: {
21177
+ "application/json": {
21178
+ data: components["schemas"]["ExternalVolume"];
21179
+ };
21180
+ };
21181
+ };
21182
+ default: components["responses"]["DefaultError"];
21183
+ };
21184
+ };
21185
+ getExternalVolumeSources: {
21186
+ parameters: {
21187
+ query?: never;
21188
+ header?: never;
21189
+ path?: never;
21190
+ cookie?: never;
21191
+ };
21192
+ requestBody?: never;
21193
+ responses: {
21194
+ /** @description Returns supported external volume sources and their capabilities. */
21195
+ 200: {
21196
+ headers: {
21197
+ [name: string]: unknown;
21198
+ };
21199
+ content: {
21200
+ "application/json": {
21201
+ data: {
21202
+ [key: string]: {
21203
+ /** @description Map where keys are attachment types and values are arrays of supported modes. */
21204
+ capabilities: {
21205
+ [key: string]: string[];
21206
+ };
21207
+ /** @description Whether volumes of this source type can be created via the API. */
21208
+ creatable: boolean;
21209
+ };
21210
+ };
21211
+ };
21212
+ };
21213
+ };
21214
+ default: components["responses"]["DefaultError"];
21215
+ };
21216
+ };
21217
+ updateExternalVolumeAccess: {
21218
+ parameters: {
21219
+ query?: never;
21220
+ header?: never;
21221
+ path: {
21222
+ /** @description The ID of the external volume. */
21223
+ externalVolumeId: string;
21224
+ };
21225
+ cookie?: never;
21226
+ };
21227
+ /** @description Parameters for updating the external volume ACL. */
21228
+ requestBody?: {
21229
+ content: {
21230
+ "application/json": {
21231
+ acl?: components["schemas"]["ACL"] | null;
21232
+ };
21233
+ };
21234
+ };
21235
+ responses: {
21236
+ /** @description Returns the updated external volume. */
21237
+ 200: {
21238
+ headers: {
21239
+ [name: string]: unknown;
21240
+ };
21241
+ content: {
21242
+ "application/json": {
21243
+ data: components["schemas"]["ExternalVolume"];
21244
+ };
21245
+ };
21246
+ };
21247
+ default: components["responses"]["DefaultError"];
21248
+ };
21249
+ };
21250
+ createExternalVolumeJob: {
21251
+ parameters: {
21252
+ query?: never;
21253
+ header?: never;
21254
+ path: {
21255
+ /** @description The ID of the attached volume. */
21256
+ externalVolumeId: string;
21257
+ };
21258
+ cookie?: never;
21259
+ };
21260
+ /** @description Parameters for creating a new attached volume job. */
21261
+ requestBody?: {
21262
+ content: {
21263
+ "application/json": components["schemas"]["ExternalVolumeTasks"];
21264
+ };
21265
+ };
21266
+ responses: {
21267
+ /** @description Returns a job descriptor. */
21268
+ 202: {
21269
+ headers: {
21270
+ [name: string]: unknown;
21271
+ };
21272
+ content: {
21273
+ "application/json": {
21274
+ data: components["schemas"]["JobDescriptor"];
21275
+ };
21276
+ };
21277
+ };
21278
+ default: components["responses"]["DefaultError"];
21279
+ };
21280
+ };
20130
21281
  getAutoScaleGroups: {
20131
21282
  parameters: {
20132
21283
  query?: {
@@ -20408,6 +21559,10 @@ export interface operations {
20408
21559
  query?: {
20409
21560
  /** @description A comma separated list of include values. Included resources will show up under the root document's `include` field, with the key being the id of the included resource. In the case of applying an include to a collection of resources, if two resources share the same include, it will only appear once in the return. */
20410
21561
  include?: "integrations"[];
21562
+ /** @description In a list return, the data associated with the page number and size returned. 20 results per page, page 2 would be `page[size]=20&page[number]=2` */
21563
+ page?: components["parameters"]["PageParam"];
21564
+ /** @description An array of sort values. To sort descending, put a `-` in front of the value, e.g. `-id`. */
21565
+ sort?: components["parameters"]["SortParam"];
20411
21566
  };
20412
21567
  header?: never;
20413
21568
  path: {
@@ -20575,6 +21730,23 @@ export interface operations {
20575
21730
  /** @description The name of the ISO. */
20576
21731
  name?: string;
20577
21732
  config?: {
21733
+ /** @description Authentication token for the ISO. Only available when ISO is in new state. */
21734
+ token?: string;
21735
+ /** @description ISO IPXE configuration. Only available when ISO is in new state. */
21736
+ ipxe?: {
21737
+ /** @description VLAN ID for the IPXE boot. */
21738
+ vlan_id?: number | null;
21739
+ /** @description Network interface for the IPXE boot. */
21740
+ network_interface?: number | null;
21741
+ /** @description Static IP assigned to the IPXE boot. */
21742
+ static_ip?: string | null;
21743
+ /** @description Netmask assigned to the IPXE boot. */
21744
+ netmask?: string | null;
21745
+ /** @description Gateway IP assigned to the IPXE boot. */
21746
+ gateway_ip?: string | null;
21747
+ /** @description DNS IP assigned to the IPXE boot. */
21748
+ dns_ip?: string | null;
21749
+ } | null;
20578
21750
  server?: {
20579
21751
  storage?: {
20580
21752
  conditional_format?: boolean;
@@ -20893,6 +22065,9 @@ export interface operations {
20893
22065
  /** @description `filter[cluster]=clusterIdentifier` filtering by cluster. Enter the cluster identifier and the return will include servers belonging to the specified cluster.
20894
22066
  * */
20895
22067
  cluster?: string;
22068
+ /** @description `filter[location]=location` filtering by location. Enter the location id and the return will include servers belonging to the specified location.
22069
+ * */
22070
+ location?: string;
20896
22071
  /** @description `filter[providers]=providerone,providertwo` filtering by provider. Enter one or more providers (commas separated) and the return will include servers that match any providers in the list.
20897
22072
  * */
20898
22073
  providers?: string;
@@ -21352,6 +22527,7 @@ export interface operations {
21352
22527
  cidr: components["schemas"]["Cidr"];
21353
22528
  gateway: components["schemas"]["IpAddress"] | null;
21354
22529
  };
22530
+ options?: components["schemas"]["IpOptions"] | null;
21355
22531
  };
21356
22532
  };
21357
22533
  };
@@ -21452,6 +22628,37 @@ export interface operations {
21452
22628
  default: components["responses"]["DefaultError"];
21453
22629
  };
21454
22630
  };
22631
+ createIpPoolJob: {
22632
+ parameters: {
22633
+ query?: never;
22634
+ header?: never;
22635
+ path: {
22636
+ /** @description The ID for the given IP pool. */
22637
+ poolId: string;
22638
+ };
22639
+ cookie?: never;
22640
+ };
22641
+ /** @description Parameters for creating the new IP pool job. */
22642
+ requestBody?: {
22643
+ content: {
22644
+ "application/json": components["schemas"]["IpPoolTask"];
22645
+ };
22646
+ };
22647
+ responses: {
22648
+ /** @description Returns a job descriptor. */
22649
+ 202: {
22650
+ headers: {
22651
+ [name: string]: unknown;
22652
+ };
22653
+ content: {
22654
+ "application/json": {
22655
+ data: components["schemas"]["JobDescriptor"];
22656
+ };
22657
+ };
22658
+ };
22659
+ default: components["responses"]["DefaultError"];
22660
+ };
22661
+ };
21455
22662
  getJobs: {
21456
22663
  parameters: {
21457
22664
  query?: {
@@ -21783,13 +22990,6 @@ export interface operations {
21783
22990
  /** @description The end date from when to fetch logs. */
21784
22991
  end?: components["schemas"]["DateTime"];
21785
22992
  };
21786
- /**
21787
- * @description Context window indicates how many log lines after a match to return in the response.
21788
- * This allows greater context around the matched lines.
21789
- *
21790
- * @default 5
21791
- */
21792
- context_window?: number;
21793
22993
  };
21794
22994
  search?: {
21795
22995
  /**
@@ -21804,6 +23004,13 @@ export interface operations {
21804
23004
  local?: boolean | null;
21805
23005
  /** @description Describes the maximum number of log lines the query will return. */
21806
23006
  limit?: number | null;
23007
+ /**
23008
+ * @description Context window size indicates how many log lines after a match to return in the response.
23009
+ * This allows greater context around the matched lines.
23010
+ *
23011
+ * @default 5
23012
+ */
23013
+ context_window_size?: number;
21807
23014
  };
21808
23015
  };
21809
23016
  };
@@ -22001,6 +23208,8 @@ export interface operations {
22001
23208
  "application/json": {
22002
23209
  /** @description A name for the Pipeline. */
22003
23210
  name?: string;
23211
+ /** @description An identifier for the pipeline. */
23212
+ identifier?: components["schemas"]["Identifier"];
22004
23213
  /** @description Setting to true enables variable and other advanced logic support on this Pipeline. This is a one-way toggle. Once set to true, it cannot be set back to false. */
22005
23214
  dynamic?: boolean;
22006
23215
  /** @description An array of stages. */
@@ -22293,7 +23502,7 @@ export interface operations {
22293
23502
  content: {
22294
23503
  "application/json": {
22295
23504
  /** @description A name for the Trigger Key. */
22296
- name?: string;
23505
+ name: string;
22297
23506
  /** @description An array of ips this Trigger Key is usable from. */
22298
23507
  ips?: string[];
22299
23508
  };
@@ -22400,7 +23609,7 @@ export interface operations {
22400
23609
  };
22401
23610
  content: {
22402
23611
  "application/json": {
22403
- data: components["schemas"]["JobDescriptor"];
23612
+ data: components["schemas"]["TriggerKey"];
22404
23613
  };
22405
23614
  };
22406
23615
  };
@@ -22570,15 +23779,6 @@ export interface operations {
22570
23779
  "application/json": {
22571
23780
  /** @description The name of the network. */
22572
23781
  name?: string;
22573
- l2?: {
22574
- location_ids?: components["schemas"]["ID"][];
22575
- host_interface?: string | null;
22576
- /** @description An array of defined L2 routes */
22577
- routes?: {
22578
- usable?: components["schemas"]["Cidr"];
22579
- gateway?: components["schemas"]["IpAddress"];
22580
- }[];
22581
- } | null;
22582
23782
  };
22583
23783
  };
22584
23784
  };
@@ -22648,18 +23848,7 @@ export interface operations {
22648
23848
  /** @description Parameters for creating a new Network Job. */
22649
23849
  requestBody?: {
22650
23850
  content: {
22651
- "application/json": {
22652
- /**
22653
- * @description The Job to do.
22654
- * @enum {string}
22655
- */
22656
- action: "reconfigure";
22657
- /** @description Additional information needed for the Job. */
22658
- contents: {
22659
- /** @description An array of environment identifiers for the Network. */
22660
- environment_ids: string[];
22661
- };
22662
- };
23851
+ "application/json": components["schemas"]["SdnNetworkTask"];
22663
23852
  };
22664
23853
  };
22665
23854
  responses: {
@@ -23030,8 +24219,8 @@ export interface operations {
23030
24219
  requestBody?: {
23031
24220
  content: {
23032
24221
  "application/json": {
23033
- about?: components["schemas"]["StackBuildAbout"];
23034
- instructions?: components["schemas"]["StackBuildInstructions"];
24222
+ about?: components["schemas"]["StackBuildAbout"] | null;
24223
+ instructions?: components["schemas"]["StackBuildInstructions"] | null;
23035
24224
  };
23036
24225
  };
23037
24226
  };
@@ -23272,8 +24461,6 @@ export interface operations {
23272
24461
  /** @description Prevents this virtual machine from being deleted when true. */
23273
24462
  lock: boolean;
23274
24463
  volumes?: components["schemas"]["VirtualMachineVolumeConfig"][] | null;
23275
- /** @description The size of the base disk. Must be between 10G and 100G. */
23276
- base_disk_size?: string;
23277
24464
  /** @description Custom meta data. Not utilized by Cycle. */
23278
24465
  annotations?: {
23279
24466
  [key: string]: unknown;