@cloudfleet/sdk 0.0.1-76e2a56 → 0.0.1-79703f6

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 (87) hide show
  1. package/dist/@tanstack/react-query.gen.d.ts +1125 -0
  2. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  3. package/dist/@tanstack/react-query.gen.js +1129 -0
  4. package/dist/@tanstack/react-query.gen.js.map +1 -0
  5. package/dist/client/client.gen.d.ts +3 -0
  6. package/dist/client/client.gen.d.ts.map +1 -0
  7. package/dist/client/client.gen.js +220 -0
  8. package/dist/client/client.gen.js.map +1 -0
  9. package/dist/client/index.d.ts +9 -0
  10. package/dist/client/index.d.ts.map +1 -0
  11. package/dist/client/index.js +7 -0
  12. package/dist/client/index.js.map +1 -0
  13. package/dist/client/types.gen.d.ts +121 -0
  14. package/dist/client/types.gen.d.ts.map +1 -0
  15. package/dist/client/types.gen.js +3 -0
  16. package/dist/client/types.gen.js.map +1 -0
  17. package/dist/client/utils.gen.d.ts +38 -0
  18. package/dist/client/utils.gen.d.ts.map +1 -0
  19. package/dist/client/utils.gen.js +229 -0
  20. package/dist/client/utils.gen.js.map +1 -0
  21. package/dist/client.gen.d.ts +4 -4
  22. package/dist/client.gen.d.ts.map +1 -1
  23. package/dist/client.gen.js +2 -4
  24. package/dist/client.gen.js.map +1 -1
  25. package/dist/core/auth.gen.d.ts +19 -0
  26. package/dist/core/auth.gen.d.ts.map +1 -0
  27. package/dist/core/auth.gen.js +15 -0
  28. package/dist/core/auth.gen.js.map +1 -0
  29. package/dist/core/bodySerializer.gen.d.ts +26 -0
  30. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  31. package/dist/core/bodySerializer.gen.js +58 -0
  32. package/dist/core/bodySerializer.gen.js.map +1 -0
  33. package/dist/core/params.gen.d.ts +44 -0
  34. package/dist/core/params.gen.d.ts.map +1 -0
  35. package/dist/core/params.gen.js +101 -0
  36. package/dist/core/params.gen.js.map +1 -0
  37. package/dist/core/pathSerializer.gen.d.ts +34 -0
  38. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  39. package/dist/core/pathSerializer.gen.js +107 -0
  40. package/dist/core/pathSerializer.gen.js.map +1 -0
  41. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  42. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  43. package/dist/core/queryKeySerializer.gen.js +93 -0
  44. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  45. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  46. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  47. package/dist/core/serverSentEvents.gen.js +133 -0
  48. package/dist/core/serverSentEvents.gen.js.map +1 -0
  49. package/dist/core/types.gen.d.ts +79 -0
  50. package/dist/core/types.gen.d.ts.map +1 -0
  51. package/dist/core/types.gen.js +3 -0
  52. package/dist/core/types.gen.js.map +1 -0
  53. package/dist/core/utils.gen.d.ts +20 -0
  54. package/dist/core/utils.gen.d.ts.map +1 -0
  55. package/dist/core/utils.gen.js +88 -0
  56. package/dist/core/utils.gen.js.map +1 -0
  57. package/dist/index.d.ts +3 -0
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +3 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/schemas.gen.d.ts +1505 -866
  62. package/dist/schemas.gen.d.ts.map +1 -1
  63. package/dist/schemas.gen.js +2809 -953
  64. package/dist/schemas.gen.js.map +1 -1
  65. package/dist/sdk.gen.d.ts +242 -142
  66. package/dist/sdk.gen.d.ts.map +1 -1
  67. package/dist/sdk.gen.js +336 -225
  68. package/dist/sdk.gen.js.map +1 -1
  69. package/dist/services/kubernetes/api.d.ts +196 -0
  70. package/dist/services/kubernetes/api.d.ts.map +1 -0
  71. package/dist/services/kubernetes/api.js +140 -0
  72. package/dist/services/kubernetes/api.js.map +1 -0
  73. package/dist/services/kubernetes/index.d.ts +44 -0
  74. package/dist/services/kubernetes/index.d.ts.map +1 -0
  75. package/dist/services/kubernetes/index.js +68 -0
  76. package/dist/services/kubernetes/index.js.map +1 -0
  77. package/dist/services/kubernetes/types.d.ts +1335 -0
  78. package/dist/services/kubernetes/types.d.ts.map +1 -0
  79. package/dist/services/kubernetes/types.js +2 -0
  80. package/dist/services/kubernetes/types.js.map +1 -0
  81. package/dist/types.gen.d.ts +1373 -830
  82. package/dist/types.gen.d.ts.map +1 -1
  83. package/dist/zod.gen.d.ts +3687 -2423
  84. package/dist/zod.gen.d.ts.map +1 -1
  85. package/dist/zod.gen.js +1523 -857
  86. package/dist/zod.gen.js.map +1 -1
  87. package/package.json +31 -5
@@ -1,3 +1,6 @@
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
+ };
1
4
  export type BillingContact = {
2
5
  /**
3
6
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
@@ -36,31 +39,143 @@ export type BillingContact = {
36
39
  */
37
40
  email: string;
38
41
  /**
39
- * First name of the billing contact person.
42
+ * Name of the billing contact person.
40
43
  */
41
- first_name: string;
44
+ individual_name: string;
42
45
  /**
43
- * Last name of the billing contact person.
46
+ * Tax ID of the organization.
44
47
  */
45
- last_name: string;
48
+ tax_id?: string;
49
+ /**
50
+ * Type of the tax ID.
51
+ */
52
+ tax_id_type?: 'ad_nrt' | 'ae_trn' | 'al_tin' | 'am_tin' | 'ao_tin' | 'ar_cuit' | 'at_vat' | 'au_abn' | 'au_arn' | 'ba_tin' | 'bb_tin' | 'be_vat' | 'bg_uic' | 'bg_vat' | 'bh_vat' | 'bo_tin' | 'br_cnpj' | 'br_cpf' | 'bs_tin' | 'by_tin' | 'ca_bn' | 'ca_gst_hst' | 'ca_pst_bc' | 'ca_pst_mb' | 'ca_pst_sk' | 'ca_qst' | 'cd_nif' | 'ch_uid' | 'ch_vat' | 'cl_tin' | 'cn_tin' | 'co_nit' | 'cr_tin' | 'cy_vat' | 'cz_vat' | 'de_stn' | 'de_vat' | 'dk_vat' | 'do_rcn' | 'ec_ruc' | 'ee_vat' | 'eg_tin' | 'es_cif' | 'es_vat' | 'eu_oss_vat' | 'fi_vat' | 'fr_vat' | 'gb_vat' | 'ge_vat' | 'gn_nif' | 'gr_vat' | 'hk_br' | 'hr_oib' | 'hr_vat' | 'hu_tin' | 'hu_vat' | 'id_npwp' | 'ie_vat' | 'il_vat' | 'in_gst' | 'is_vat' | 'it_vat' | 'jp_cn' | 'jp_rn' | 'jp_trn' | 'ke_pin' | 'kh_tin' | 'kr_brn' | 'kz_bin' | 'li_uid' | 'li_vat' | 'lt_vat' | 'lu_vat' | 'lv_vat' | 'ma_vat' | 'md_vat' | 'me_pib' | 'mk_vat' | 'mr_nif' | 'mt_vat' | 'mx_rfc' | 'my_frp' | 'my_itn' | 'my_sst' | 'ng_tin' | 'nl_vat' | 'no_vat' | 'no_voec' | 'np_pan' | 'nz_gst' | 'om_vat' | 'pe_ruc' | 'ph_tin' | 'pl_vat' | 'pt_vat' | 'ro_tin' | 'ro_vat' | 'rs_pib' | 'ru_inn' | 'ru_kpp' | 'sa_vat' | 'se_vat' | 'sg_gst' | 'sg_uen' | 'si_tin' | 'si_vat' | 'sk_vat' | 'sn_ninea' | 'sr_fin' | 'sv_nit' | 'th_vat' | 'tj_tin' | 'tr_tin' | 'tw_vat' | 'tz_vat' | 'ua_vat' | 'ug_tin' | 'us_ein' | 'uy_ruc' | 'uz_tin' | 'uz_vat' | 've_rif' | 'vn_tin' | 'xi_vat' | 'za_vat' | 'zm_tin' | 'zw_tin' | '';
46
53
  };
47
- export type ClusterCreateInput = {
54
+ export type BillingCredits = {
48
55
  /**
49
- * Name of the cluster.
56
+ * Generated unique identifier of the promotional code.
57
+ */
58
+ id?: string;
59
+ /**
60
+ * Type of the promotional code.
61
+ */
62
+ type: 'credit' | 'discount';
63
+ /**
64
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
65
+ */
66
+ date_start: string;
67
+ /**
68
+ * Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.
69
+ */
70
+ date_end?: string;
71
+ /**
72
+ * Promotional code used by the customer.
73
+ */
74
+ code: string;
75
+ /**
76
+ * Description of the promotional code.
77
+ */
78
+ description?: string;
79
+ /**
80
+ * Total value of the promotional code.
81
+ */
82
+ value_total: number;
83
+ /**
84
+ * Remaining value of the promotional code.
85
+ */
86
+ value_remaining?: number;
87
+ };
88
+ export type ChartCreateInput = {
89
+ /**
90
+ * Values to be used in the chart encoded as a JSON string.
91
+ */
92
+ values: string;
93
+ /**
94
+ * Desired version range or channel for the chart.
95
+ */
96
+ version_channel: string;
97
+ /**
98
+ * Unique identifier of the chart deployment aka name of the helm release.
99
+ */
100
+ name: string;
101
+ /**
102
+ * Namespace of the chart deployment
103
+ */
104
+ namespace: string;
105
+ /**
106
+ * Name of the chart listing
107
+ */
108
+ chart: string;
109
+ };
110
+ export type Chart = {
111
+ /**
112
+ * Values to be used in the chart encoded as a JSON string.
113
+ */
114
+ values: string;
115
+ /**
116
+ * Desired version range or channel for the chart.
117
+ */
118
+ version_channel: string;
119
+ /**
120
+ * Unique identifier of the chart deployment aka name of the helm release.
50
121
  */
51
122
  name: string;
52
123
  /**
53
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
124
+ * Namespace of the chart deployment
125
+ */
126
+ namespace: string;
127
+ /**
128
+ * Name of the chart listing
129
+ */
130
+ chart: string;
131
+ /**
132
+ * Status of the chart deployment.
133
+ */
134
+ status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
135
+ /**
136
+ * Current version of the chart deployment.
137
+ */
138
+ version_current: string;
139
+ /**
140
+ * Creation date and time of the chart deployment.
141
+ */
142
+ created_at: string;
143
+ /**
144
+ * Last update date and time of the chart deployment.
145
+ */
146
+ updated_at: string;
147
+ /**
148
+ * Indicates if the chart deployment is ready to be used.
149
+ */
150
+ ready: boolean;
151
+ };
152
+ export type ChartUpdateInput = {
153
+ /**
154
+ * Values to be used in the chart encoded as a JSON string.
155
+ */
156
+ values: string;
157
+ /**
158
+ * Desired version range or channel for the chart.
159
+ */
160
+ version_channel: string;
161
+ };
162
+ export type ClusterCreateInput = {
163
+ /**
164
+ * Name of the cluster.
54
165
  */
55
- region?: 'staging' | 'northamerica-central-1';
166
+ name: string;
56
167
  /**
57
168
  * Tier of the cluster.
58
169
  */
59
170
  tier: 'basic' | 'pro';
171
+ /**
172
+ * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
173
+ */
174
+ region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
60
175
  /**
61
176
  * Version of the kubernetes cluster.
62
177
  */
63
- version_channel?: string;
178
+ version_channel?: '1.x.x-cfke.x' | '1.31.x-cfke.x' | '1.32.x-cfke.x' | '1.33.x-cfke.x';
64
179
  };
65
180
  export type ClusterJoinInformation = {
66
181
  /**
@@ -71,6 +186,10 @@ export type ClusterJoinInformation = {
71
186
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
72
187
  */
73
188
  endpoint: string;
189
+ /**
190
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
191
+ */
192
+ cluster_dns: string;
74
193
  /**
75
194
  * Authentication key for the cluster.
76
195
  */
@@ -95,6 +214,10 @@ export type ClusterJoinInformation = {
95
214
  * Containerd version of the cluster.
96
215
  */
97
216
  containerd: string;
217
+ /**
218
+ * NVIDIA driver version of the cluster.
219
+ */
220
+ nvidia_driver: string;
98
221
  };
99
222
  /**
100
223
  * OIDC Information for hosts to access to third party API's.
@@ -119,18 +242,14 @@ export type Cluster = {
119
242
  * Name of the cluster.
120
243
  */
121
244
  name: string;
122
- /**
123
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
124
- */
125
- region?: 'staging' | 'northamerica-central-1';
126
245
  /**
127
246
  * Tier of the cluster.
128
247
  */
129
248
  tier: 'basic' | 'pro';
130
249
  /**
131
- * Version of the kubernetes cluster.
250
+ * Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.
132
251
  */
133
- version_channel?: string;
252
+ region?: 'staging-1a' | 'northamerica-central-1' | 'europe-central-1a' | 'northamerica-central-1a';
134
253
  /**
135
254
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
136
255
  */
@@ -138,8 +257,9 @@ export type Cluster = {
138
257
  /**
139
258
  * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
140
259
  */
141
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
260
+ status: 'active' | 'disabled' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
142
261
  endpoint?: string | '';
262
+ endpoint_public?: string | '';
143
263
  /**
144
264
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
145
265
  */
@@ -160,12 +280,20 @@ export type Cluster = {
160
280
  * Indicates if the cluster is ready to be used.
161
281
  */
162
282
  ready?: boolean;
283
+ /**
284
+ * Version of the kubernetes cluster.
285
+ */
286
+ version_channel?: string;
163
287
  };
164
288
  export type ClusterUpdateInput = {
165
289
  /**
166
290
  * Name of the cluster.
167
291
  */
168
292
  name?: string;
293
+ /**
294
+ * Tier of the cluster.
295
+ */
296
+ tier: 'basic' | 'pro';
169
297
  /**
170
298
  * Version of the kubernetes cluster.
171
299
  */
@@ -177,39 +305,60 @@ export type FleetCreateInput = {
177
305
  */
178
306
  limits?: {
179
307
  /**
180
- * CPU limit in cores.
308
+ * CPU limit in cores. Maximum 100,000.
181
309
  */
182
- cpu: number;
310
+ cpu?: number;
183
311
  };
184
312
  gcp?: {
185
- enabled?: boolean;
313
+ enabled: boolean;
186
314
  /**
187
- * Project GCP Project id to deploy instances into
315
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
188
316
  */
189
- project: string;
317
+ project?: string;
190
318
  };
191
319
  hetzner?: {
192
- enabled?: boolean;
193
- apiKey?: string;
194
- } | {
320
+ enabled: boolean;
321
+ /**
322
+ * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
323
+ */
195
324
  apiKey?: string;
196
- enabled?: boolean;
197
325
  };
198
326
  aws?: {
199
- enabled?: boolean;
327
+ enabled: boolean;
200
328
  /**
201
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
329
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
202
330
  */
203
- controllerRoleArn: string;
331
+ controllerRoleArn?: string;
204
332
  };
205
333
  /**
206
- * Unique identifier of the kubernetes fleet.
334
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
207
335
  */
208
- id: string;
336
+ constraints?: {
337
+ /**
338
+ * Allowed values for `karpenter.sh/capacity-type`.
339
+ */
340
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
341
+ /**
342
+ * Allowed values for `kubernetes.io/arch`.
343
+ */
344
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
345
+ /**
346
+ * Allowed values for `cfke.io/instance-family`.
347
+ */
348
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
349
+ /**
350
+ * Allowed values for `topology.kubernetes.io/region`.
351
+ */
352
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
353
+ };
354
+ /**
355
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
356
+ */
357
+ scalingProfile?: 'aggressive' | 'conservative';
209
358
  /**
210
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
359
+ * Unique identifier of the kubernetes fleet.
211
360
  */
212
- type: 'managed' | 'connected';
361
+ id: string;
213
362
  };
214
363
  export type Fleet = {
215
364
  /**
@@ -217,39 +366,60 @@ export type Fleet = {
217
366
  */
218
367
  limits?: {
219
368
  /**
220
- * CPU limit in cores.
369
+ * CPU limit in cores. Maximum 100,000.
221
370
  */
222
- cpu: number;
371
+ cpu?: number;
223
372
  };
224
373
  gcp?: {
225
- enabled?: boolean;
374
+ enabled: boolean;
226
375
  /**
227
- * Project GCP Project id to deploy instances into
376
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
228
377
  */
229
- project: string;
378
+ project?: string;
230
379
  };
231
380
  hetzner?: {
232
- enabled?: boolean;
233
- apiKey?: string;
234
- } | {
381
+ enabled: boolean;
382
+ /**
383
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
384
+ */
235
385
  apiKey?: string;
236
- enabled?: boolean;
237
386
  };
238
387
  aws?: {
239
- enabled?: boolean;
388
+ enabled: boolean;
240
389
  /**
241
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
390
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
242
391
  */
243
- controllerRoleArn: string;
392
+ controllerRoleArn?: string;
244
393
  };
245
394
  /**
246
- * Unique identifier of the kubernetes fleet.
395
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
247
396
  */
248
- id: string;
397
+ constraints?: {
398
+ /**
399
+ * Allowed values for `karpenter.sh/capacity-type`.
400
+ */
401
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
402
+ /**
403
+ * Allowed values for `kubernetes.io/arch`.
404
+ */
405
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
406
+ /**
407
+ * Allowed values for `cfke.io/instance-family`.
408
+ */
409
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
410
+ /**
411
+ * Allowed values for `topology.kubernetes.io/region`.
412
+ */
413
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
414
+ };
249
415
  /**
250
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
416
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
251
417
  */
252
- type: 'managed' | 'connected';
418
+ scalingProfile: 'aggressive' | 'conservative';
419
+ /**
420
+ * Unique identifier of the kubernetes fleet.
421
+ */
422
+ id: string;
253
423
  };
254
424
  export type FleetUpdateInput = {
255
425
  /**
@@ -257,203 +427,56 @@ export type FleetUpdateInput = {
257
427
  */
258
428
  limits?: {
259
429
  /**
260
- * CPU limit in cores.
430
+ * CPU limit in cores. Maximum 100,000.
261
431
  */
262
- cpu: number;
432
+ cpu?: number;
263
433
  };
264
434
  gcp?: {
265
- enabled?: boolean;
435
+ enabled: boolean;
266
436
  /**
267
- * Project GCP Project id to deploy instances into
437
+ * GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.
268
438
  */
269
- project: string;
439
+ project?: string;
270
440
  };
271
441
  hetzner?: {
272
- enabled?: boolean;
273
- apiKey?: string;
274
- } | {
442
+ enabled: boolean;
443
+ /**
444
+ * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
445
+ */
275
446
  apiKey?: string;
276
- enabled?: boolean;
277
447
  };
278
448
  aws?: {
279
- enabled?: boolean;
449
+ enabled: boolean;
280
450
  /**
281
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
451
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
282
452
  */
283
- controllerRoleArn: string;
453
+ controllerRoleArn?: string;
284
454
  };
285
- };
286
- export type InfrastructureFilter = {
287
455
  /**
288
- * Version of the infrastructure filter definition. Currently only version 1 is supported.
456
+ * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
289
457
  */
290
- version?: 1;
291
- /**
292
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
293
- */
294
- provider?: Array<string>;
295
- /**
296
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
297
- */
298
- region?: Array<string>;
299
- /**
300
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
301
- */
302
- sub_region?: Array<string>;
303
- /**
304
- * Limits selection of cloud regions to this list of canonical provider regions
305
- */
306
- csp_region?: Array<string>;
307
- /**
308
- * Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider
309
- */
310
- instance_type?: Array<string>;
311
- /**
312
- * List of Normalized accelerator model names. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field
313
- */
314
- accelerator_name?: Array<string>;
315
- /**
316
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
317
- */
318
- accelerator_manufacturer?: Array<string>;
319
- /**
320
- * Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
321
- */
322
- accelerator_count_min?: number;
323
- /**
324
- * Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
325
- */
326
- accelerator_count_max?: number;
327
- /**
328
- * Minimum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
329
- */
330
- accelerator_memory_min?: number;
331
- /**
332
- * Maximum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
333
- */
334
- accelerator_memory_max?: number;
335
- /**
336
- * Minimum amount of RAM in gibibytes (GiB)
337
- */
338
- memory_min?: number;
339
- /**
340
- * Maximum amount of RAM in gibibytes (GiB)
341
- */
342
- memory_max?: number;
343
- /**
344
- * Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
345
- */
346
- vcpu_min?: number;
347
- /**
348
- * Maximum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
349
- */
350
- vcpu_max?: number;
351
- /**
352
- * Minimum total storage in GiB (attached and local)
353
- */
354
- storage_total_min?: number;
355
- /**
356
- * Maximum total storage in GiB (attached and local)
357
- */
358
- storage_total_max?: number;
359
- /**
360
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
361
- */
362
- storage_local_min?: number;
363
- /**
364
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
365
- */
366
- storage_local_max?: number;
367
- /**
368
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
369
- */
370
- price_min?: number;
371
- /**
372
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
373
- */
374
- price_max?: number;
375
- };
376
- export type InfrastructureInstance = {
377
- /**
378
- * Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.
379
- */
380
- sku: string;
381
- /**
382
- * Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
383
- */
384
- provider: string;
385
- /**
386
- * Normalized region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
387
- */
388
- region: string;
389
- /**
390
- * Normalized sub-region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
391
- */
392
- sub_region: string;
393
- /**
394
- * Region as defined by the cloud service provider
395
- */
396
- csp_region: string;
397
- /**
398
- * Availability zone as defined by the cloud service provider
399
- */
400
- csp_zone: string;
401
- /**
402
- * Instance / VM type as defined by the cloud service provider
403
- */
404
- instance_type: string;
405
- /**
406
- * Instance CPU architecture
407
- */
408
- architecture: string;
409
- /**
410
- * Instance operating system
411
- */
412
- os: string;
413
- /**
414
- * CPU count as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
415
- */
416
- vcpu: number;
417
- /**
418
- * Total amount of RAM in gibibytes (GiB)
419
- */
420
- memory: number;
421
- /**
422
- * Volume of directly attached, block-device local storage in gibibytes (GiB)
423
- */
424
- local_storage: number;
425
- /**
426
- * Normalized model name of accelerator. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field
427
- */
428
- accelerator_name?: string;
429
- /**
430
- * Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
431
- */
432
- accelerator_manufacturer?: string;
433
- /**
434
- * Number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
435
- */
436
- accelerator_count?: number;
437
- /**
438
- * Ammount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
439
- */
440
- accelerator_memory?: number;
441
- /**
442
- * Maximum number of pods that can be run on this instance type.
443
- */
444
- pods_capacity?: number;
445
- /**
446
- * Capacity type of the instance. E.g. `on-demand`, `spot`.
447
- */
448
- capacity_type?: string;
449
- /**
450
- * Price of running the inctance per hour in USD as defined by the cloud service provider
451
- */
452
- price: number;
458
+ constraints?: {
459
+ /**
460
+ * Allowed values for `karpenter.sh/capacity-type`.
461
+ */
462
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
463
+ /**
464
+ * Allowed values for `kubernetes.io/arch`.
465
+ */
466
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
467
+ /**
468
+ * Allowed values for `cfke.io/instance-family`.
469
+ */
470
+ 'cfke.io/instance-family'?: Array<'a1' | 'a2' | 'a3' | 'a4' | 'c1' | 'c2' | 'c2d' | 'c3' | 'c3d' | 'c4' | 'c4a' | 'c4d' | 'c5' | 'c5a' | 'c5ad' | 'c5d' | 'c5n' | 'c6a' | 'c6g' | 'c6gd' | 'c6gn' | 'c6i' | 'c6id' | 'c6in' | 'c7a' | 'c7g' | 'c7gd' | 'c7gn' | 'c7i' | 'c7i-flex' | 'c8g' | 'c8gd' | 'cax' | 'ccx' | 'cpx' | 'cx' | 'd2' | 'd3' | 'd3en' | 'dl1' | 'dl2q' | 'e2' | 'f1' | 'f2' | 'g1' | 'g2' | 'g4ad' | 'g4dn' | 'g5' | 'g5g' | 'g6' | 'g6e' | 'gr6' | 'h1' | 'h3' | 'hpc6a' | 'hpc6id' | 'hpc7a' | 'hpc7g' | 'i2' | 'i3' | 'i3en' | 'i4g' | 'i4i' | 'i7i' | 'i7ie' | 'i8g' | 'im4gn' | 'inf1' | 'inf2' | 'is4gen' | 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm5a' | 'm5ad' | 'm5d' | 'm5dn' | 'm5n' | 'm5zn' | 'm6a' | 'm6g' | 'm6gd' | 'm6i' | 'm6id' | 'm6idn' | 'm6in' | 'm7a' | 'm7g' | 'm7gd' | 'm7i' | 'm7i-flex' | 'm8g' | 'm8gd' | 'n1' | 'n2' | 'n2d' | 'n4' | 'p3' | 'p3dn' | 'p4d' | 'p4de' | 'p5' | 'p5e' | 'p5en' | 'p6-b200' | 'r3' | 'r4' | 'r5' | 'r5a' | 'r5ad' | 'r5b' | 'r5d' | 'r5dn' | 'r5n' | 'r6a' | 'r6g' | 'r6gd' | 'r6i' | 'r6id' | 'r6idn' | 'r6in' | 'r7a' | 'r7g' | 'r7gd' | 'r7i' | 'r7iz' | 'r8g' | 'r8gd' | 't2' | 't2a' | 't2d' | 't3' | 't3a' | 't4g' | 'trn1' | 'trn1n' | 'u-3tb1' | 'u-6tb1' | 'u7i-12tb' | 'u7i-6tb' | 'u7i-8tb' | 'u7in-16tb' | 'u7in-24tb' | 'u7in-32tb' | 'vt1' | 'x1' | 'x1e' | 'x2gd' | 'x2idn' | 'x2iedn' | 'x2iezn' | 'x4' | 'x8g' | 'z1d' | 'z3'>;
471
+ /**
472
+ * Allowed values for `topology.kubernetes.io/region`.
473
+ */
474
+ 'topology.kubernetes.io/region'?: Array<'africa-south1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ash' | 'asia-east1' | 'asia-east2' | 'asia-northeast1' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south1' | 'asia-south2' | 'asia-southeast1' | 'asia-southeast2' | 'australia-southeast1' | 'australia-southeast2' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west1' | 'europe-west10' | 'europe-west12' | 'europe-west2' | 'europe-west3' | 'europe-west4' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'fsn1' | 'hel1' | 'hil' | 'me-central1' | 'me-central2' | 'me-west1' | 'nbg1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'sa-east-1' | 'sin' | 'southamerica-east1' | 'southamerica-west1' | 'us-central1' | 'us-east-1' | 'us-east-2' | 'us-east1' | 'us-east4' | 'us-east5' | 'us-south1' | 'us-west-1' | 'us-west-2' | 'us-west1' | 'us-west2' | 'us-west3' | 'us-west4'>;
475
+ };
453
476
  /**
454
- * Whether this instance type is available.
477
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
455
478
  */
456
- available?: boolean;
479
+ scalingProfile: 'aggressive' | 'conservative';
457
480
  };
458
481
  export type Invite = {
459
482
  /**
@@ -479,235 +502,121 @@ export type Invite = {
479
502
  };
480
503
  export type Invoice = {
481
504
  /**
482
- * Unique identifier of the invoice. UUID v4 string in canonical form
505
+ * Unique identifier of the invoice.
483
506
  */
484
507
  id?: string;
485
- /**
486
- * Unique identifier of the organization. UUID v4 string in canonical form
487
- */
488
- organizationId?: string;
508
+ number?: string;
489
509
  /**
490
510
  * Status of the invoice
491
511
  */
492
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
512
+ status?: string;
493
513
  /**
494
514
  * Total amount of the invoice
495
515
  */
496
- amount?: number;
516
+ total?: number;
497
517
  /**
498
518
  * Currency of the invoice
499
519
  */
500
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
520
+ currency?: string;
521
+ /**
522
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
523
+ */
524
+ created: string;
501
525
  /**
502
- * Total amount of credit adjustments
526
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
503
527
  */
504
- creditAdj?: number;
528
+ period_start: string;
505
529
  /**
506
- * Total amount of refund adjustments
530
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
507
531
  */
508
- refundAdj?: number;
532
+ period_end: string;
533
+ invoice_pdf?: string;
534
+ };
535
+ export type MarketplaceListingFiles = {
509
536
  /**
510
- * Date of the invoice
537
+ * Raw Chart.yaml content from the Helm chart
511
538
  */
512
- invoiceDate?: string;
539
+ chartYaml?: string;
513
540
  /**
514
- * Target date of the invoice
541
+ * Raw values.yaml content from the Helm chart
515
542
  */
516
- targetDate?: string;
543
+ valuesYaml?: string;
517
544
  /**
518
- * Number of the invoice
545
+ * JSON schema for values.yaml as a string
519
546
  */
520
- invoiceNumber?: string;
547
+ valuesSchemaJson?: string;
548
+ };
549
+ export type MarketplaceListing = {
521
550
  /**
522
- * Balance of the invoice
551
+ * Name of the chart
523
552
  */
524
- balance?: number;
553
+ name: string;
525
554
  /**
526
- * Bundle keys of the invoice
555
+ * Available versions of the chart
527
556
  */
528
- bundleKeys?: string;
557
+ versions: Array<string>;
529
558
  /**
530
- * Credits of the invoice
559
+ * Version channels for the chart
531
560
  */
532
- credits?: Array<{
533
- /**
534
- * Unique identifier of the invoice item. UUID v4 string in canonical form
535
- */
536
- id?: string;
537
- /**
538
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
539
- */
540
- linkedInvoiceItemId?: string;
541
- /**
542
- * Name of the product
543
- */
544
- productName?: string;
545
- /**
546
- * Name of the plan
547
- */
548
- planName?: string;
549
- /**
550
- * Name of the phase
551
- */
552
- phaseName?: string;
553
- /**
554
- * Name of the usage
555
- */
556
- usageName?: string;
557
- /**
558
- * Pretty name of the product
559
- */
560
- prettyProductName?: string;
561
- /**
562
- * Pretty name of the plan
563
- */
564
- prettyPlanName?: string;
565
- /**
566
- * Pretty name of the phase
567
- */
568
- prettyPhaseName?: string;
561
+ version_channels: Array<string>;
562
+ /**
563
+ * Latest version of the chart
564
+ */
565
+ latestVersion: string;
566
+ /**
567
+ * Chart metadata
568
+ */
569
+ metadata?: {
569
570
  /**
570
- * Pretty name of the usage
571
+ * Chart name from metadata
571
572
  */
572
- prettyUsageName?: string;
573
+ name: string;
573
574
  /**
574
- * Type of the invoice item
575
+ * Chart version from metadata
575
576
  */
576
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
577
+ version: string;
577
578
  /**
578
- * Description of the invoice item
579
+ * Chart description
579
580
  */
580
581
  description?: string;
581
582
  /**
582
- * Start date of the invoice item
583
- */
584
- startDate?: string;
585
- /**
586
- * End date of the invoice item
587
- */
588
- endDate?: string;
589
- /**
590
- * Amount of the invoice item
583
+ * Application version
591
584
  */
592
- amount?: number;
585
+ appVersion?: string;
593
586
  /**
594
- * Rate of the invoice item
587
+ * Helm API version
595
588
  */
596
- rate?: number;
589
+ apiVersion?: string;
597
590
  /**
598
- * Currency of the invoice item
591
+ * Chart keywords
599
592
  */
600
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
593
+ keywords?: Array<string>;
601
594
  /**
602
- * Quantity of the invoice item
595
+ * Chart home URL
603
596
  */
604
- quantity?: number;
597
+ home?: string;
605
598
  /**
606
- * Details of the invoice item
599
+ * A URL to an SVG or PNG image to be used as an icon
607
600
  */
608
- itemDetails?: string;
601
+ icon?: string;
609
602
  /**
610
- * Effective date of the catalog
603
+ * Chart source URLs
611
604
  */
612
- catalogEffectiveDate?: string;
605
+ sources?: Array<string>;
613
606
  /**
614
- * Child items of the invoice item
607
+ * Chart maintainers
615
608
  */
616
- childItems?: Array<Array<unknown> | boolean | number | {
617
- [key: string]: unknown;
618
- } | string>;
619
- }>;
620
- /**
621
- * Items of the invoice
622
- */
623
- items?: Array<{
624
- /**
625
- * Unique identifier of the invoice item. UUID v4 string in canonical form
626
- */
627
- id?: string;
628
- /**
629
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
630
- */
631
- linkedInvoiceItemId?: string;
632
- /**
633
- * Name of the product
634
- */
635
- productName?: string;
636
- /**
637
- * Name of the plan
638
- */
639
- planName?: string;
640
- /**
641
- * Name of the phase
642
- */
643
- phaseName?: string;
644
- /**
645
- * Name of the usage
646
- */
647
- usageName?: string;
648
- /**
649
- * Pretty name of the product
650
- */
651
- prettyProductName?: string;
652
- /**
653
- * Pretty name of the plan
654
- */
655
- prettyPlanName?: string;
656
- /**
657
- * Pretty name of the phase
658
- */
659
- prettyPhaseName?: string;
660
- /**
661
- * Pretty name of the usage
662
- */
663
- prettyUsageName?: string;
664
- /**
665
- * Type of the invoice item
666
- */
667
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
668
- /**
669
- * Description of the invoice item
670
- */
671
- description?: string;
672
- /**
673
- * Start date of the invoice item
674
- */
675
- startDate?: string;
676
- /**
677
- * End date of the invoice item
678
- */
679
- endDate?: string;
680
- /**
681
- * Amount of the invoice item
682
- */
683
- amount?: number;
684
- /**
685
- * Rate of the invoice item
686
- */
687
- rate?: number;
688
- /**
689
- * Currency of the invoice item
690
- */
691
- currency?: 'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYR' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GGP' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'IMP' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JEP' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LTL' | 'LVL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRO' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLL' | 'SOS' | 'SPL' | 'SRD' | 'STD' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TVD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VEF' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XDR' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWD' | 'BTC';
692
- /**
693
- * Quantity of the invoice item
694
- */
695
- quantity?: number;
696
- /**
697
- * Details of the invoice item
698
- */
699
- itemDetails?: string;
700
- /**
701
- * Effective date of the catalog
702
- */
703
- catalogEffectiveDate?: string;
704
- /**
705
- * Child items of the invoice item
706
- */
707
- childItems?: Array<Array<unknown> | boolean | number | {
708
- [key: string]: unknown;
709
- } | string>;
710
- }>;
609
+ maintainers?: Array<{
610
+ /**
611
+ * Maintainer name
612
+ */
613
+ name: string;
614
+ /**
615
+ * Maintainer email
616
+ */
617
+ email?: string;
618
+ }>;
619
+ };
711
620
  };
712
621
  export type OrganizationCreateInput = {
713
622
  /**
@@ -768,10 +677,6 @@ export type Organization = {
768
677
  * Maximum number of fleets that can be created per cluster.
769
678
  */
770
679
  fleets_max: number;
771
- /**
772
- * Maximum number of CPU cores per managed fleet.
773
- */
774
- managed_fleets_cpu_max: number;
775
680
  /**
776
681
  * List of Cloudfleet cluster tiers available for the organization.
777
682
  */
@@ -793,6 +698,10 @@ export type Organization = {
793
698
  */
794
699
  label: string;
795
700
  }>;
701
+ /**
702
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
703
+ */
704
+ cfcr_storage_gb: number;
796
705
  };
797
706
  /**
798
707
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
@@ -829,6 +738,453 @@ export type PaymentMethod = {
829
738
  */
830
739
  brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
831
740
  };
741
+ export type PlatformQuota = {
742
+ /**
743
+ * Maximum number of Basic clusters that can be created.
744
+ */
745
+ basic_clusters_max: number;
746
+ /**
747
+ * Available number of Basic clusters that can be created.
748
+ */
749
+ basic_clusters_available: number;
750
+ /**
751
+ * Maximum number of Pro clusters that can be created.
752
+ */
753
+ pro_clusters_max: number;
754
+ /**
755
+ * Available number of Pro clusters that can be created.
756
+ */
757
+ pro_clusters_available: number;
758
+ /**
759
+ * Maximum number of fleets that can be created per cluster.
760
+ */
761
+ fleets_max: number;
762
+ /**
763
+ * List of Cloudfleet cluster tiers available for the organization.
764
+ */
765
+ cluster_tiers: Array<string>;
766
+ /**
767
+ * List of Cloudfleet control plane regions available for the organization.
768
+ */
769
+ regions: Array<string>;
770
+ /**
771
+ * List of CFKE control plane versions available for the organization.
772
+ */
773
+ versions: Array<{
774
+ /**
775
+ * Id of the control plane version. Used in API calls.
776
+ */
777
+ id: string;
778
+ /**
779
+ * Label of the control plane version. Used in frontent UI.
780
+ */
781
+ label: string;
782
+ }>;
783
+ /**
784
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
785
+ */
786
+ cfcr_storage_gb: number;
787
+ };
788
+ export type RegistryRepository = {
789
+ /**
790
+ * Repository name.
791
+ */
792
+ name: string;
793
+ /**
794
+ * Registry region.
795
+ */
796
+ region: string;
797
+ /**
798
+ * Full URI of the repository.
799
+ */
800
+ uri: string;
801
+ };
802
+ export type RegistryRepositoryWithTags = {
803
+ /**
804
+ * Repository name.
805
+ */
806
+ name: string;
807
+ /**
808
+ * Registry region.
809
+ */
810
+ region: string;
811
+ /**
812
+ * Full URI of the repository.
813
+ */
814
+ uri: string;
815
+ /**
816
+ * Array of tags in the repository.
817
+ */
818
+ tags: Array<{
819
+ /**
820
+ * Tag name.
821
+ */
822
+ name: string;
823
+ /**
824
+ * Size of the tag in bytes.
825
+ */
826
+ size: number;
827
+ /**
828
+ * Media type of the manifest.
829
+ */
830
+ mediaType?: string;
831
+ /**
832
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
833
+ */
834
+ platforms?: Array<string>;
835
+ }>;
836
+ /**
837
+ * Total size of all tags in the repository in bytes.
838
+ */
839
+ totalSize: number;
840
+ };
841
+ export type RegistryTag = {
842
+ /**
843
+ * Tag name.
844
+ */
845
+ name: string;
846
+ /**
847
+ * Manifest digest for pulling by digest.
848
+ */
849
+ digest: string;
850
+ /**
851
+ * Media type of the manifest.
852
+ */
853
+ mediaType?: string;
854
+ /**
855
+ * Manifest config metadata.
856
+ */
857
+ config?: {
858
+ /**
859
+ * Size of the config in bytes.
860
+ */
861
+ size: number;
862
+ };
863
+ /**
864
+ * Array of layer metadata.
865
+ */
866
+ layers?: Array<{
867
+ /**
868
+ * Digest of the layer.
869
+ */
870
+ digest?: string;
871
+ /**
872
+ * Size of the layer in bytes.
873
+ */
874
+ size: number;
875
+ }>;
876
+ /**
877
+ * Array of manifests for multi-arch images.
878
+ */
879
+ manifests?: Array<{
880
+ /**
881
+ * Digest of the manifest.
882
+ */
883
+ digest: string;
884
+ /**
885
+ * Platform information for the manifest.
886
+ */
887
+ platform?: {
888
+ /**
889
+ * Architecture of the platform.
890
+ */
891
+ architecture: string;
892
+ /**
893
+ * Operating system of the platform.
894
+ */
895
+ os: string;
896
+ /**
897
+ * Variant of the platform (e.g., v7, v8 for ARM).
898
+ */
899
+ variant?: string;
900
+ };
901
+ /**
902
+ * Layers for this platform.
903
+ */
904
+ layers?: Array<{
905
+ /**
906
+ * Digest of the layer.
907
+ */
908
+ digest?: string;
909
+ /**
910
+ * Size of the layer in bytes.
911
+ */
912
+ size: number;
913
+ }>;
914
+ /**
915
+ * Total size of this platform manifest in bytes.
916
+ */
917
+ size?: number;
918
+ }>;
919
+ /**
920
+ * Total size of the tag in bytes.
921
+ */
922
+ size: number;
923
+ /**
924
+ * Registry region.
925
+ */
926
+ region: string;
927
+ /**
928
+ * Repository name.
929
+ */
930
+ repository: string;
931
+ /**
932
+ * Full URI of the tag.
933
+ */
934
+ uri: string;
935
+ };
936
+ export type TicketAttachment = {
937
+ /**
938
+ * Unique identifier of the attachment (Mongo ObjectId).
939
+ */
940
+ id: string;
941
+ /**
942
+ * Original filename as uploaded.
943
+ */
944
+ filename: string;
945
+ /**
946
+ * MIME content type of the attachment.
947
+ */
948
+ content_type: string;
949
+ /**
950
+ * Size of the attachment in bytes.
951
+ */
952
+ size: number;
953
+ };
954
+ export type TicketCreateInput = {
955
+ /**
956
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
957
+ */
958
+ category: 'billing' | 'technical' | 'general';
959
+ /**
960
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
961
+ */
962
+ body: string;
963
+ /**
964
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
965
+ */
966
+ properties?: {
967
+ [key: string]: unknown;
968
+ };
969
+ };
970
+ export type TicketListResponse = {
971
+ /**
972
+ * Tickets for the organization, ordered newest first. Messages are omitted from list responses.
973
+ */
974
+ items: Array<{
975
+ /**
976
+ * Unique identifier of the ticket (Mongo ObjectId).
977
+ */
978
+ id: string;
979
+ /**
980
+ * Current state of the ticket.
981
+ */
982
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
983
+ /**
984
+ * Ticket category.
985
+ */
986
+ category: 'billing' | 'technical' | 'general';
987
+ /**
988
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
989
+ */
990
+ summary: string;
991
+ /**
992
+ * Closure timestamp. Null while the ticket is open.
993
+ */
994
+ closed_at?: string;
995
+ /**
996
+ * Creation date of the ticket. ISO 8601 UTC.
997
+ */
998
+ date_created: string;
999
+ /**
1000
+ * Last update date of the ticket. ISO 8601 UTC.
1001
+ */
1002
+ date_updated: string;
1003
+ /**
1004
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1005
+ */
1006
+ messages?: Array<{
1007
+ /**
1008
+ * Unique identifier of the message (Mongo ObjectId).
1009
+ */
1010
+ id: string;
1011
+ /**
1012
+ * Message type. Internal notes are filtered out of customer-facing responses.
1013
+ */
1014
+ type: 'customer_reply' | 'agent_reply';
1015
+ /**
1016
+ * Message body in markdown.
1017
+ */
1018
+ body: string;
1019
+ /**
1020
+ * First name of the author. Null when not provided.
1021
+ */
1022
+ author_first_name?: string;
1023
+ /**
1024
+ * Last name of the author. Null when not provided.
1025
+ */
1026
+ author_last_name?: string;
1027
+ /**
1028
+ * Attachments associated with this message.
1029
+ */
1030
+ attachments?: Array<{
1031
+ /**
1032
+ * Unique identifier of the attachment (Mongo ObjectId).
1033
+ */
1034
+ id: string;
1035
+ /**
1036
+ * Original filename as uploaded.
1037
+ */
1038
+ filename: string;
1039
+ /**
1040
+ * MIME content type of the attachment.
1041
+ */
1042
+ content_type: string;
1043
+ /**
1044
+ * Size of the attachment in bytes.
1045
+ */
1046
+ size: number;
1047
+ }>;
1048
+ /**
1049
+ * Creation date of the message. ISO 8601 UTC.
1050
+ */
1051
+ date_created: string;
1052
+ }>;
1053
+ }>;
1054
+ };
1055
+ export type TicketMessageInput = {
1056
+ /**
1057
+ * Reply body in markdown.
1058
+ */
1059
+ body: string;
1060
+ };
1061
+ export type TicketMessage = {
1062
+ /**
1063
+ * Unique identifier of the message (Mongo ObjectId).
1064
+ */
1065
+ id: string;
1066
+ /**
1067
+ * Message type. Internal notes are filtered out of customer-facing responses.
1068
+ */
1069
+ type: 'customer_reply' | 'agent_reply';
1070
+ /**
1071
+ * Message body in markdown.
1072
+ */
1073
+ body: string;
1074
+ /**
1075
+ * First name of the author. Null when not provided.
1076
+ */
1077
+ author_first_name?: string;
1078
+ /**
1079
+ * Last name of the author. Null when not provided.
1080
+ */
1081
+ author_last_name?: string;
1082
+ /**
1083
+ * Attachments associated with this message.
1084
+ */
1085
+ attachments?: Array<{
1086
+ /**
1087
+ * Unique identifier of the attachment (Mongo ObjectId).
1088
+ */
1089
+ id: string;
1090
+ /**
1091
+ * Original filename as uploaded.
1092
+ */
1093
+ filename: string;
1094
+ /**
1095
+ * MIME content type of the attachment.
1096
+ */
1097
+ content_type: string;
1098
+ /**
1099
+ * Size of the attachment in bytes.
1100
+ */
1101
+ size: number;
1102
+ }>;
1103
+ /**
1104
+ * Creation date of the message. ISO 8601 UTC.
1105
+ */
1106
+ date_created: string;
1107
+ };
1108
+ export type Ticket = {
1109
+ /**
1110
+ * Unique identifier of the ticket (Mongo ObjectId).
1111
+ */
1112
+ id: string;
1113
+ /**
1114
+ * Current state of the ticket.
1115
+ */
1116
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
1117
+ /**
1118
+ * Ticket category.
1119
+ */
1120
+ category: 'billing' | 'technical' | 'general';
1121
+ /**
1122
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1123
+ */
1124
+ summary: string;
1125
+ /**
1126
+ * Closure timestamp. Null while the ticket is open.
1127
+ */
1128
+ closed_at?: string;
1129
+ /**
1130
+ * Creation date of the ticket. ISO 8601 UTC.
1131
+ */
1132
+ date_created: string;
1133
+ /**
1134
+ * Last update date of the ticket. ISO 8601 UTC.
1135
+ */
1136
+ date_updated: string;
1137
+ /**
1138
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1139
+ */
1140
+ messages?: Array<{
1141
+ /**
1142
+ * Unique identifier of the message (Mongo ObjectId).
1143
+ */
1144
+ id: string;
1145
+ /**
1146
+ * Message type. Internal notes are filtered out of customer-facing responses.
1147
+ */
1148
+ type: 'customer_reply' | 'agent_reply';
1149
+ /**
1150
+ * Message body in markdown.
1151
+ */
1152
+ body: string;
1153
+ /**
1154
+ * First name of the author. Null when not provided.
1155
+ */
1156
+ author_first_name?: string;
1157
+ /**
1158
+ * Last name of the author. Null when not provided.
1159
+ */
1160
+ author_last_name?: string;
1161
+ /**
1162
+ * Attachments associated with this message.
1163
+ */
1164
+ attachments?: Array<{
1165
+ /**
1166
+ * Unique identifier of the attachment (Mongo ObjectId).
1167
+ */
1168
+ id: string;
1169
+ /**
1170
+ * Original filename as uploaded.
1171
+ */
1172
+ filename: string;
1173
+ /**
1174
+ * MIME content type of the attachment.
1175
+ */
1176
+ content_type: string;
1177
+ /**
1178
+ * Size of the attachment in bytes.
1179
+ */
1180
+ size: number;
1181
+ }>;
1182
+ /**
1183
+ * Creation date of the message. ISO 8601 UTC.
1184
+ */
1185
+ date_created: string;
1186
+ }>;
1187
+ };
832
1188
  export type TokenCreateInput = {
833
1189
  /**
834
1190
  * Human readable access token name.
@@ -871,35 +1227,85 @@ export type TokenUpdateInput = {
871
1227
  */
872
1228
  role?: 'Administrator' | 'User';
873
1229
  };
1230
+ export type UsageFacets = {
1231
+ /**
1232
+ * List of unique cluster IDs
1233
+ */
1234
+ cluster_id?: Array<string>;
1235
+ /**
1236
+ * List of unique products
1237
+ */
1238
+ product?: Array<string>;
1239
+ };
1240
+ export type UsageResponse = {
1241
+ /**
1242
+ * Usage data
1243
+ */
1244
+ data: Array<{
1245
+ /**
1246
+ * Hour of the usage
1247
+ */
1248
+ hour: string;
1249
+ /**
1250
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1251
+ */
1252
+ cluster_id: string;
1253
+ /**
1254
+ * The product the usage is associated with
1255
+ */
1256
+ product: string;
1257
+ /**
1258
+ * Consumption
1259
+ */
1260
+ value: number;
1261
+ /**
1262
+ * Price per unit
1263
+ */
1264
+ price: number;
1265
+ /**
1266
+ * Total cost
1267
+ */
1268
+ total: number;
1269
+ }>;
1270
+ /**
1271
+ * Facets for filtering
1272
+ */
1273
+ facets: {
1274
+ /**
1275
+ * List of unique cluster IDs
1276
+ */
1277
+ cluster_id?: Array<string>;
1278
+ /**
1279
+ * List of unique products
1280
+ */
1281
+ product?: Array<string>;
1282
+ };
1283
+ };
874
1284
  export type Usage = {
875
1285
  /**
876
1286
  * Hour of the usage
877
1287
  */
878
- hour?: string;
1288
+ hour: string;
879
1289
  /**
880
1290
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
881
1291
  */
882
1292
  cluster_id: string;
883
1293
  /**
884
- * Tier of the cluster.
1294
+ * The product the usage is associated with
885
1295
  */
886
- cluster_tier: '';
1296
+ product: string;
887
1297
  /**
888
- * The product the usage is associated with
1298
+ * Consumption
889
1299
  */
890
- product: 'cfke_infra_compute' | 'cfke_nodes' | 'cfke_controlplane';
1300
+ value: number;
891
1301
  /**
892
- * Name of the Kubernetes node
1302
+ * Price per unit
893
1303
  */
894
- node_name: string;
1304
+ price: number;
895
1305
  /**
896
- * SKU of the Kubernetes node
1306
+ * Total cost
897
1307
  */
898
- sku: string;
899
- cpu: number | '';
900
- price: number | '';
901
- value: number | '';
902
- total: number | '';
1308
+ total: number;
903
1309
  };
904
1310
  export type UserCreateInput = {
905
1311
  /**
@@ -960,16 +1366,6 @@ export type User = {
960
1366
  * Creation date of the user. ISO 8601 date string in UTC timezone
961
1367
  */
962
1368
  date_created: string;
963
- cluster_permissions?: Array<{
964
- /**
965
- * Unique identifier of the cluster. UUID v4 string in canonical form
966
- */
967
- cluster_id: string;
968
- /**
969
- * User permissions to access the cluster. Can be `readwrite` or `readonly`.
970
- */
971
- permissions: 'readwrite' | 'readonly';
972
- }>;
973
1369
  };
974
1370
  export type UserUpdateInput = {
975
1371
  /**
@@ -996,7 +1392,12 @@ export type UserUpdateInput = {
996
1392
  export type GetUsageData = {
997
1393
  body?: never;
998
1394
  path?: never;
999
- query?: never;
1395
+ query?: {
1396
+ /**
1397
+ * Time granularity for usage aggregation - hourly (Past 48 hours aggregated by hour), daily (Past 30 days aggregated by day), monthly (Past 12 months aggregated by month)
1398
+ */
1399
+ granularity?: 'hourly' | 'daily' | 'monthly';
1400
+ };
1000
1401
  url: '/billing/usage';
1001
1402
  };
1002
1403
  export type GetUsageErrors = {
@@ -1007,136 +1408,244 @@ export type GetUsageErrors = {
1007
1408
  };
1008
1409
  export type GetUsageResponses = {
1009
1410
  /**
1010
- * An array of usage records.
1411
+ * Usage data with facets for filtering
1011
1412
  */
1012
- 200: Array<Usage>;
1413
+ 200: UsageResponse;
1013
1414
  };
1014
1415
  export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
1015
- export type GetBalanceData = {
1416
+ export type GetPaymentMethodData = {
1417
+ body?: never;
1418
+ path?: never;
1419
+ query?: never;
1420
+ url: '/billing/payment-method';
1421
+ };
1422
+ export type GetPaymentMethodErrors = {
1423
+ /**
1424
+ * Returns 404 Not Found if the organization does not have a payment method set up.
1425
+ */
1426
+ 404: unknown;
1427
+ };
1428
+ export type GetPaymentMethodResponses = {
1429
+ /**
1430
+ * Redacted payment card information.
1431
+ */
1432
+ 200: PaymentMethod;
1433
+ };
1434
+ export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1435
+ export type GetPaymentMethodSecretData = {
1016
1436
  body?: never;
1017
1437
  path?: never;
1018
1438
  query?: never;
1019
- url: '/billing/balance';
1439
+ url: '/billing/payment-method';
1440
+ };
1441
+ export type GetPaymentMethodSecretResponses = {
1442
+ /**
1443
+ * The client secret. Used for client-side retrieval using a publishable key. The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
1444
+ *
1445
+ */
1446
+ 200: {
1447
+ /**
1448
+ * The client secret.
1449
+ */
1450
+ id?: string;
1451
+ };
1452
+ };
1453
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1454
+ export type ListInvoicesData = {
1455
+ body?: never;
1456
+ path?: never;
1457
+ query?: never;
1458
+ url: '/billing/invoices';
1459
+ };
1460
+ export type ListInvoicesErrors = {
1461
+ /**
1462
+ * Not authenticated
1463
+ */
1464
+ 401: unknown;
1465
+ };
1466
+ export type ListInvoicesResponses = {
1467
+ /**
1468
+ * An array of usage records.
1469
+ */
1470
+ 200: Array<Invoice>;
1471
+ };
1472
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1473
+ export type GetContactData = {
1474
+ body?: never;
1475
+ path?: never;
1476
+ query?: never;
1477
+ url: '/billing/contact';
1478
+ };
1479
+ export type GetContactResponses = {
1480
+ /**
1481
+ * Returns a single object containing organization contact and billing address details.
1482
+ */
1483
+ 200: BillingContact;
1484
+ };
1485
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1486
+ export type UpdateContactData = {
1487
+ body: BillingContact;
1488
+ path?: never;
1489
+ query?: never;
1490
+ url: '/billing/contact';
1020
1491
  };
1021
- export type GetBalanceResponses = {
1492
+ export type UpdateContactResponses = {
1022
1493
  /**
1023
- * Current balance of the organization in USD as a floating-point number.
1494
+ * Successfully updated. Returns updated organization details.
1024
1495
  */
1025
- 200: number;
1496
+ 200: BillingContact;
1026
1497
  };
1027
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
1028
- export type GetPaymentMethodData = {
1498
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1499
+ export type GetCreditsData = {
1029
1500
  body?: never;
1030
1501
  path?: never;
1031
1502
  query?: never;
1032
- url: '/billing/payment-method';
1503
+ url: '/billing/credits';
1033
1504
  };
1034
- export type GetPaymentMethodErrors = {
1505
+ export type GetCreditsErrors = {
1035
1506
  /**
1036
- * Returns 404 Not Found if the organization does not have a payment method set up.
1507
+ * Not authenticated
1037
1508
  */
1038
- 404: unknown;
1509
+ 401: unknown;
1039
1510
  };
1040
- export type GetPaymentMethodResponses = {
1511
+ export type GetCreditsResponses = {
1041
1512
  /**
1042
- * Redacted payment card information.
1513
+ * An array of the applied promotional credits records.
1043
1514
  */
1044
- 200: PaymentMethod;
1515
+ 200: Array<BillingCredits>;
1045
1516
  };
1046
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1047
- export type GetPaymentMethodSecretData = {
1048
- body?: never;
1517
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1518
+ export type RedeemCreditsData = {
1519
+ body: {
1520
+ /**
1521
+ * Promotional code to redeem
1522
+ */
1523
+ code?: string;
1524
+ };
1049
1525
  path?: never;
1050
1526
  query?: never;
1051
- url: '/billing/payment-method';
1527
+ url: '/billing/credits';
1052
1528
  };
1053
- export type GetPaymentMethodSecretResponses = {
1529
+ export type RedeemCreditsErrors = {
1054
1530
  /**
1055
- * The client secret. Used for client-side retrieval using a publishable key. The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
1056
- *
1531
+ * Not authenticated
1057
1532
  */
1058
- 200: {
1059
- /**
1060
- * The client secret.
1061
- */
1062
- id?: string;
1063
- };
1533
+ 401: unknown;
1064
1534
  };
1065
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1066
- export type ListInvoicesData = {
1535
+ export type RedeemCreditsResponses = {
1536
+ /**
1537
+ * Successfully created a new organization.
1538
+ */
1539
+ 200: unknown;
1540
+ };
1541
+ export type ListChartsData = {
1067
1542
  body?: never;
1068
- path?: never;
1069
- query: {
1070
- /**
1071
- * Start date for the usage. Date of oldest data point to retrieve.
1072
- */
1073
- start_date: string;
1543
+ path: {
1074
1544
  /**
1075
- * End date for the usage. Date of newest data point to retrieve.
1545
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1076
1546
  */
1077
- end_date: string;
1547
+ cluster_id: string;
1078
1548
  };
1079
- url: '/billing/invoices';
1549
+ query?: never;
1550
+ url: '/clusters/{cluster_id}/charts';
1080
1551
  };
1081
- export type ListInvoicesErrors = {
1552
+ export type ListChartsErrors = {
1082
1553
  /**
1083
1554
  * Not authenticated
1084
1555
  */
1085
1556
  401: unknown;
1086
1557
  };
1087
- export type ListInvoicesResponses = {
1558
+ export type ListChartsResponses = {
1088
1559
  /**
1089
- * An array of usage records.
1560
+ * An array of charts
1090
1561
  */
1091
- 200: Array<Invoice>;
1562
+ 200: Array<Chart>;
1092
1563
  };
1093
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1094
- export type GetInvoiceData = {
1095
- body?: never;
1564
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1565
+ export type CreateChartData = {
1566
+ body: ChartCreateInput;
1096
1567
  path: {
1097
1568
  /**
1098
- * Unique invoice identifier. UUID v4 string in canonical form
1569
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1099
1570
  */
1100
- id: string;
1571
+ cluster_id: string;
1101
1572
  };
1102
1573
  query?: never;
1103
- url: '/billing/invoices/{id}';
1574
+ url: '/clusters/{cluster_id}/charts';
1104
1575
  };
1105
- export type GetInvoiceResponses = {
1576
+ export type CreateChartResponses = {
1106
1577
  /**
1107
- * Returns a single Invoice HTML representation under `html` property.
1578
+ * Successfully created. Returns created Chart ID.
1108
1579
  */
1109
- 200: {
1110
- html?: string;
1580
+ 200: string;
1581
+ };
1582
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1583
+ export type DeleteChartData = {
1584
+ body?: never;
1585
+ path: {
1586
+ /**
1587
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1588
+ */
1589
+ cluster_id: string;
1590
+ /**
1591
+ * Chart deployment name as the unique identifier of the chart.
1592
+ */
1593
+ chart_name: string;
1111
1594
  };
1595
+ query?: never;
1596
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1112
1597
  };
1113
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
1114
- export type GetContactData = {
1598
+ export type DeleteChartResponses = {
1599
+ /**
1600
+ * Successfully deleted.
1601
+ */
1602
+ 200: string;
1603
+ };
1604
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1605
+ export type GetChartData = {
1115
1606
  body?: never;
1116
- path?: never;
1607
+ path: {
1608
+ /**
1609
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1610
+ */
1611
+ cluster_id: string;
1612
+ /**
1613
+ * Chart deployment name as the unique identifier of the chart.
1614
+ */
1615
+ chart_name: string;
1616
+ };
1117
1617
  query?: never;
1118
- url: '/billing/contact';
1618
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1119
1619
  };
1120
- export type GetContactResponses = {
1620
+ export type GetChartResponses = {
1121
1621
  /**
1122
- * Returns a single object containing organization contact and billing address details.
1622
+ * Returns a single object containing chart details.
1123
1623
  */
1124
- 200: BillingContact;
1624
+ 200: Chart;
1125
1625
  };
1126
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1127
- export type UpdateContactData = {
1128
- body: BillingContact;
1129
- path?: never;
1626
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1627
+ export type UpdateChartData = {
1628
+ body: ChartUpdateInput;
1629
+ path: {
1630
+ /**
1631
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1632
+ */
1633
+ cluster_id: string;
1634
+ /**
1635
+ * Chart deployment name as the unique identifier of the chart.
1636
+ */
1637
+ chart_name: string;
1638
+ };
1130
1639
  query?: never;
1131
- url: '/billing/contact';
1640
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1132
1641
  };
1133
- export type UpdateContactResponses = {
1642
+ export type UpdateChartResponses = {
1134
1643
  /**
1135
- * Successfully updated. Returns updated organization details.
1644
+ * Successfully updated.
1136
1645
  */
1137
- 200: BillingContact;
1646
+ 200: string;
1138
1647
  };
1139
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1648
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1140
1649
  export type ListFleetsData = {
1141
1650
  body?: never;
1142
1651
  path: {
@@ -1368,283 +1877,37 @@ export type UpdateClusterData = {
1368
1877
  query?: never;
1369
1878
  url: '/clusters/{cluster_id}';
1370
1879
  };
1371
- export type UpdateClusterResponses = {
1372
- /**
1373
- * Successfully updated. Returns updated cluster details.
1374
- */
1375
- 200: Cluster;
1376
- };
1377
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1378
- export type GetJoinInformationData = {
1379
- body?: never;
1380
- path: {
1381
- /**
1382
- * Unique identifier of the cluster. UUID v4 string in canonical form
1383
- */
1384
- cluster_id: string;
1385
- };
1386
- query?: never;
1387
- url: '/clusters/{cluster_id}/join_information';
1388
- };
1389
- export type GetJoinInformationErrors = {
1390
- /**
1391
- * Not authenticated
1392
- */
1393
- 401: unknown;
1394
- };
1395
- export type GetJoinInformationResponses = {
1396
- /**
1397
- * An object of cluster join information
1398
- */
1399
- 200: Cluster;
1400
- };
1401
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1402
- export type GetInfrastructureData = {
1403
- body?: never;
1404
- path?: never;
1405
- query?: {
1406
- /**
1407
- * Version of the task definition. Currently only version 1 is supported.
1408
- */
1409
- version?: 1;
1410
- /**
1411
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
1412
- */
1413
- provider?: Array<string>;
1414
- /**
1415
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
1416
- */
1417
- region?: Array<string>;
1418
- /**
1419
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
1420
- */
1421
- sub_region?: Array<string>;
1422
- /**
1423
- * Limits selection of cloud regions to this list of canonical provider regions
1424
- */
1425
- csp_region?: Array<string>;
1426
- /**
1427
- * Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider
1428
- */
1429
- instance_type?: Array<string>;
1430
- /**
1431
- * List of Normalized accelerator model names. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field
1432
- */
1433
- accelerator_name?: Array<string>;
1434
- /**
1435
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1436
- */
1437
- accelerator_manufacturer?: Array<string>;
1438
- /**
1439
- * Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
1440
- */
1441
- accelerator_count_min?: number;
1442
- /**
1443
- * Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
1444
- */
1445
- accelerator_count_max?: number;
1446
- /**
1447
- * Minimum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
1448
- */
1449
- accelerator_memory_min?: number;
1450
- /**
1451
- * Maximum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
1452
- */
1453
- accelerator_memory_max?: number;
1454
- /**
1455
- * Minimum amount of RAM in gibibytes (GiB)
1456
- */
1457
- memory_min?: number;
1458
- /**
1459
- * Maximum amount of RAM in gibibytes (GiB)
1460
- */
1461
- memory_max?: number;
1462
- /**
1463
- * Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
1464
- */
1465
- vcpu_min?: number;
1466
- /**
1467
- * Maximum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
1468
- */
1469
- vcpu_max?: number;
1470
- /**
1471
- * Minimum total storage in GiB (attached and local)
1472
- */
1473
- storage_total_min?: number;
1474
- /**
1475
- * Maximum total storage in GiB (attached and local)
1476
- */
1477
- storage_total_max?: number;
1478
- /**
1479
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
1480
- */
1481
- storage_local_min?: number;
1482
- /**
1483
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
1484
- */
1485
- storage_local_max?: number;
1486
- /**
1487
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1488
- */
1489
- price_min?: number;
1490
- /**
1491
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1492
- */
1493
- price_max?: number;
1494
- };
1495
- url: '/infrastructure';
1496
- };
1497
- export type GetInfrastructureErrors = {
1498
- /**
1499
- * Returns a validation error if any of the search parameters in the request are invalid
1500
- */
1501
- 400: string;
1502
- };
1503
- export type GetInfrastructureError = GetInfrastructureErrors[keyof GetInfrastructureErrors];
1504
- export type GetInfrastructureResponses = {
1505
- /**
1506
- * An array of instances returned by the search
1507
- */
1508
- 200: Array<InfrastructureInstance>;
1509
- };
1510
- export type GetInfrastructureResponse = GetInfrastructureResponses[keyof GetInfrastructureResponses];
1511
- export type GetFacetsData = {
1512
- body?: never;
1513
- path?: never;
1514
- query?: never;
1515
- url: '/infrastructure/facets';
1516
- };
1517
- export type GetFacetsResponses = {
1518
- /**
1519
- * Calculates search facets of the infrastructure catalog
1520
- */
1521
- 200: Array<{
1522
- /**
1523
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
1524
- */
1525
- provider?: Array<string>;
1526
- /**
1527
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
1528
- */
1529
- region?: Array<string>;
1530
- /**
1531
- * Limits selection of cloud sub-regions to this list of Cloudfleet sub-regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
1532
- */
1533
- sub_region?: Array<string>;
1534
- /**
1535
- * Limits selection of cloud regions to this list of canonical provider regions
1536
- */
1537
- csp_region?: Array<string>;
1538
- /**
1539
- * Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
1540
- */
1541
- vcpu_min?: number;
1542
- /**
1543
- * Maximum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.
1544
- */
1545
- vcpu_max?: number;
1546
- /**
1547
- * Minimum amount of RAM in gibibytes (GiB)
1548
- */
1549
- memory_min?: number;
1550
- /**
1551
- * Maximum amount of RAM in gibibytes (GiB)
1552
- */
1553
- memory_max?: number;
1554
- /**
1555
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
1556
- */
1557
- storage_local_min?: number;
1558
- /**
1559
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
1560
- */
1561
- storage_local_max?: number;
1562
- /**
1563
- * List of Normalized accelerator model names. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field
1564
- */
1565
- accelerator_name?: Array<string>;
1566
- /**
1567
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1568
- */
1569
- accelerator_manufacturer?: Array<string>;
1570
- /**
1571
- * Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
1572
- */
1573
- accelerator_count_min?: number;
1574
- /**
1575
- * Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.
1576
- */
1577
- accelerator_count_max?: number;
1578
- /**
1579
- * Minimum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
1580
- */
1581
- accelerator_memory_min?: number;
1582
- /**
1583
- * Maximum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory
1584
- */
1585
- accelerator_memory_max?: number;
1586
- /**
1587
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1588
- */
1589
- price_min?: number;
1590
- /**
1591
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1592
- */
1593
- price_max?: number;
1594
- /**
1595
- * Structured array of regions and sub-regions
1596
- */
1597
- regions_struct?: Array<{
1598
- /**
1599
- * Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)
1600
- */
1601
- region?: string;
1602
- sub_region?: Array<string>;
1603
- }>;
1604
- /**
1605
- * Structured array of regions and sub-regions
1606
- */
1607
- accelerators_struct?: Array<{
1608
- /**
1609
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1610
- */
1611
- accelerator_manufacturer?: string;
1612
- accelerator_name?: Array<string>;
1613
- }>;
1614
- /**
1615
- * Total number of instances in the catalog
1616
- */
1617
- count_total?: number;
1618
- /**
1619
- * Total number of instances in the catalog with at least 1 accelerator
1620
- */
1621
- count_accelerators?: number;
1622
- /**
1623
- * Total number of unique instances types in the catalog
1624
- */
1625
- count_instance_types?: number;
1626
- /**
1627
- * Total number of unique instances types in the catalog with at least 1 accelerator
1628
- */
1629
- count_accelerators_instance_types?: number;
1630
- }>;
1631
- };
1632
- export type GetFacetsResponse = GetFacetsResponses[keyof GetFacetsResponses];
1633
- export type GetRegionsData = {
1880
+ export type UpdateClusterResponses = {
1881
+ /**
1882
+ * Successfully updated. Returns updated cluster details.
1883
+ */
1884
+ 200: Cluster;
1885
+ };
1886
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1887
+ export type GetJoinInformationData = {
1634
1888
  body?: never;
1635
- path?: never;
1889
+ path: {
1890
+ /**
1891
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1892
+ */
1893
+ cluster_id: string;
1894
+ };
1636
1895
  query?: never;
1637
- url: '/infrastructure/regions';
1896
+ url: '/clusters/{cluster_id}/join_information';
1638
1897
  };
1639
- export type GetRegionsResponses = {
1898
+ export type GetJoinInformationErrors = {
1640
1899
  /**
1641
- * Available Cloudfleet regions and Kubernetes versions.
1900
+ * Not authenticated
1642
1901
  */
1643
- 200: {
1644
- [key: string]: unknown;
1645
- };
1902
+ 401: unknown;
1903
+ };
1904
+ export type GetJoinInformationResponses = {
1905
+ /**
1906
+ * An object of cluster join information
1907
+ */
1908
+ 200: ClusterJoinInformation;
1646
1909
  };
1647
- export type GetRegionsResponse = GetRegionsResponses[keyof GetRegionsResponses];
1910
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1648
1911
  export type ListInvitesData = {
1649
1912
  body?: never;
1650
1913
  path?: never;
@@ -1717,6 +1980,95 @@ export type DeleteInviteResponses = {
1717
1980
  */
1718
1981
  200: unknown;
1719
1982
  };
1983
+ export type ListMarketplaceChartsData = {
1984
+ body?: never;
1985
+ path?: never;
1986
+ query?: never;
1987
+ url: '/marketplace';
1988
+ };
1989
+ export type ListMarketplaceChartsErrors = {
1990
+ /**
1991
+ * Not authenticated
1992
+ */
1993
+ 401: unknown;
1994
+ };
1995
+ export type ListMarketplaceChartsResponses = {
1996
+ /**
1997
+ * An array of chart listings in the marketplace.
1998
+ */
1999
+ 200: Array<MarketplaceListing>;
2000
+ };
2001
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2002
+ export type GetMarketplaceChartFilesData = {
2003
+ body?: never;
2004
+ path: {
2005
+ /**
2006
+ * Name of the chart in the marketplace.
2007
+ */
2008
+ chart_name: string;
2009
+ /**
2010
+ * Version channel pattern to match (e.g., "1.31.x-cfke.x" for latest 1.31 patch, "1.x.x-cfke.x" for latest 1.x minor).
2011
+ */
2012
+ version_channel: string;
2013
+ };
2014
+ query?: never;
2015
+ url: '/marketplace/{chart_name}/files/{version_channel}';
2016
+ };
2017
+ export type GetMarketplaceChartFilesErrors = {
2018
+ /**
2019
+ * Chart not found or no version matches the channel
2020
+ */
2021
+ 404: unknown;
2022
+ };
2023
+ export type GetMarketplaceChartFilesResponses = {
2024
+ /**
2025
+ * Returns an object containing the chart files for the latest matching version.
2026
+ */
2027
+ 200: MarketplaceListingFiles;
2028
+ };
2029
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2030
+ export type PostMcpData = {
2031
+ /**
2032
+ * JSON-RPC 2.0 request payload
2033
+ */
2034
+ body: {
2035
+ jsonrpc?: string;
2036
+ method?: string;
2037
+ id?: string | number;
2038
+ /**
2039
+ * Method-specific parameters
2040
+ */
2041
+ params?: {
2042
+ [key: string]: unknown;
2043
+ };
2044
+ };
2045
+ path?: never;
2046
+ query?: never;
2047
+ url: '/mcp';
2048
+ };
2049
+ export type PostMcpErrors = {
2050
+ /**
2051
+ * Not authenticated
2052
+ */
2053
+ 401: unknown;
2054
+ };
2055
+ export type PostMcpResponses = {
2056
+ /**
2057
+ * JSON-RPC 2.0 success or error response
2058
+ */
2059
+ 200: {
2060
+ jsonrpc?: string;
2061
+ id?: string | number;
2062
+ result?: {
2063
+ [key: string]: unknown;
2064
+ };
2065
+ error?: {
2066
+ code?: number;
2067
+ message?: string;
2068
+ };
2069
+ };
2070
+ };
2071
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
1720
2072
  export type GetOrganizationData = {
1721
2073
  body?: never;
1722
2074
  path?: never;
@@ -1742,6 +2094,249 @@ export type CreateOrganizationResponses = {
1742
2094
  */
1743
2095
  200: unknown;
1744
2096
  };
2097
+ export type ListRepositoriesData = {
2098
+ body?: never;
2099
+ path?: never;
2100
+ query?: never;
2101
+ url: '/registry';
2102
+ };
2103
+ export type ListRepositoriesErrors = {
2104
+ /**
2105
+ * Not authenticated
2106
+ */
2107
+ 401: unknown;
2108
+ /**
2109
+ * Internal server error
2110
+ */
2111
+ 500: unknown;
2112
+ };
2113
+ export type ListRepositoriesResponses = {
2114
+ /**
2115
+ * List of repositories
2116
+ */
2117
+ 200: Array<RegistryRepository>;
2118
+ };
2119
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2120
+ export type ListTagsData = {
2121
+ body?: never;
2122
+ path: {
2123
+ /**
2124
+ * Region where the repository is located
2125
+ */
2126
+ region: string;
2127
+ /**
2128
+ * Name of the repository
2129
+ */
2130
+ repository: string;
2131
+ };
2132
+ query?: never;
2133
+ url: '/registry/{region}/{repository}';
2134
+ };
2135
+ export type ListTagsErrors = {
2136
+ /**
2137
+ * Not authenticated
2138
+ */
2139
+ 401: unknown;
2140
+ /**
2141
+ * Repository not found
2142
+ */
2143
+ 404: unknown;
2144
+ /**
2145
+ * Internal server error
2146
+ */
2147
+ 500: unknown;
2148
+ };
2149
+ export type ListTagsResponses = {
2150
+ /**
2151
+ * Repository with tags
2152
+ */
2153
+ 200: RegistryRepositoryWithTags;
2154
+ };
2155
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2156
+ export type DeleteTagData = {
2157
+ body?: never;
2158
+ path: {
2159
+ /**
2160
+ * Region where the repository is located
2161
+ */
2162
+ region: string;
2163
+ /**
2164
+ * Name of the repository
2165
+ */
2166
+ repository: string;
2167
+ /**
2168
+ * Name of the tag
2169
+ */
2170
+ tag: string;
2171
+ };
2172
+ query?: never;
2173
+ url: '/registry/{region}/{repository}/{tag}';
2174
+ };
2175
+ export type DeleteTagErrors = {
2176
+ /**
2177
+ * Not authenticated
2178
+ */
2179
+ 401: unknown;
2180
+ /**
2181
+ * Tag not found
2182
+ */
2183
+ 404: unknown;
2184
+ /**
2185
+ * Internal server error
2186
+ */
2187
+ 500: unknown;
2188
+ };
2189
+ export type DeleteTagResponses = {
2190
+ /**
2191
+ * Tag successfully deleted
2192
+ */
2193
+ 200: unknown;
2194
+ };
2195
+ export type GetTagData = {
2196
+ body?: never;
2197
+ path: {
2198
+ /**
2199
+ * Region where the repository is located
2200
+ */
2201
+ region: string;
2202
+ /**
2203
+ * Name of the repository
2204
+ */
2205
+ repository: string;
2206
+ /**
2207
+ * Name of the tag
2208
+ */
2209
+ tag: string;
2210
+ };
2211
+ query?: never;
2212
+ url: '/registry/{region}/{repository}/{tag}';
2213
+ };
2214
+ export type GetTagErrors = {
2215
+ /**
2216
+ * Not authenticated
2217
+ */
2218
+ 401: unknown;
2219
+ /**
2220
+ * Tag not found
2221
+ */
2222
+ 404: unknown;
2223
+ /**
2224
+ * Internal server error
2225
+ */
2226
+ 500: unknown;
2227
+ };
2228
+ export type GetTagResponses = {
2229
+ /**
2230
+ * Tag details
2231
+ */
2232
+ 200: RegistryTag;
2233
+ };
2234
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2235
+ export type ListTicketsData = {
2236
+ body?: never;
2237
+ path?: never;
2238
+ query?: never;
2239
+ url: '/tickets';
2240
+ };
2241
+ export type ListTicketsResponses = {
2242
+ /**
2243
+ * Tickets for the organization.
2244
+ */
2245
+ 200: TicketListResponse;
2246
+ };
2247
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
2248
+ export type CreateTicketData = {
2249
+ body: {
2250
+ /**
2251
+ * JSON-encoded TicketCreateInput.
2252
+ */
2253
+ payload?: string;
2254
+ attachments?: Array<Blob | File>;
2255
+ };
2256
+ path?: never;
2257
+ query?: never;
2258
+ url: '/tickets';
2259
+ };
2260
+ export type CreateTicketResponses = {
2261
+ /**
2262
+ * Ticket created.
2263
+ */
2264
+ 200: Ticket;
2265
+ };
2266
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
2267
+ export type CloseTicketData = {
2268
+ body?: never;
2269
+ path: {
2270
+ ticket_id: string;
2271
+ };
2272
+ query?: never;
2273
+ url: '/tickets/{ticket_id}';
2274
+ };
2275
+ export type CloseTicketResponses = {
2276
+ /**
2277
+ * Ticket closed.
2278
+ */
2279
+ 200: Ticket;
2280
+ };
2281
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
2282
+ export type GetTicketData = {
2283
+ body?: never;
2284
+ path: {
2285
+ ticket_id: string;
2286
+ };
2287
+ query?: never;
2288
+ url: '/tickets/{ticket_id}';
2289
+ };
2290
+ export type GetTicketResponses = {
2291
+ /**
2292
+ * Ticket with messages (internal notes excluded).
2293
+ */
2294
+ 200: Ticket;
2295
+ };
2296
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2297
+ export type ReplyTicketData = {
2298
+ body: {
2299
+ /**
2300
+ * JSON-encoded TicketMessageInput.
2301
+ */
2302
+ payload?: string;
2303
+ attachments?: Array<Blob | File>;
2304
+ };
2305
+ path: {
2306
+ ticket_id: string;
2307
+ };
2308
+ query?: never;
2309
+ url: '/tickets/{ticket_id}/messages';
2310
+ };
2311
+ export type ReplyTicketErrors = {
2312
+ /**
2313
+ * Ticket is closed. Open a new ticket instead.
2314
+ */
2315
+ 409: unknown;
2316
+ };
2317
+ export type ReplyTicketResponses = {
2318
+ /**
2319
+ * Reply appended.
2320
+ */
2321
+ 200: TicketMessage;
2322
+ };
2323
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2324
+ export type GetTicketAttachmentData = {
2325
+ body?: never;
2326
+ path: {
2327
+ ticket_id: string;
2328
+ attachment_id: string;
2329
+ };
2330
+ query?: never;
2331
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
2332
+ };
2333
+ export type GetTicketAttachmentResponses = {
2334
+ /**
2335
+ * Attachment binary stream.
2336
+ */
2337
+ 200: Blob | File;
2338
+ };
2339
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1745
2340
  export type ListTokensData = {
1746
2341
  body?: never;
1747
2342
  path?: never;
@@ -1998,56 +2593,4 @@ export type UpdateUserResponses = {
1998
2593
  200: User;
1999
2594
  };
2000
2595
  export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
2001
- export type DeleteClusterPermissionsData = {
2002
- body?: never;
2003
- path: {
2004
- /**
2005
- * Unique user identifier. UUID v4 string in canonical form
2006
- */
2007
- user_id: string;
2008
- /**
2009
- * Unique cluster identifier. UUID v4 string in canonical form
2010
- */
2011
- cluster_id: string;
2012
- };
2013
- query?: never;
2014
- url: '/users/{user_id}/clusters/{cluster_id}';
2015
- };
2016
- export type DeleteClusterPermissionsResponses = {
2017
- /**
2018
- * Successfully removed user from the cluster. Returns updated user details.
2019
- */
2020
- 200: User;
2021
- };
2022
- export type DeleteClusterPermissionsResponse = DeleteClusterPermissionsResponses[keyof DeleteClusterPermissionsResponses];
2023
- export type SetClusterPermissionsData = {
2024
- body: {
2025
- /**
2026
- * Level of permissions for the user to access the cluster
2027
- */
2028
- permissions?: 'readwrite' | 'readonly';
2029
- };
2030
- path: {
2031
- /**
2032
- * Unique user identifier. UUID v4 string in canonical form
2033
- */
2034
- user_id: string;
2035
- /**
2036
- * Unique cluster identifier. UUID v4 string in canonical form
2037
- */
2038
- cluster_id: string;
2039
- };
2040
- query?: never;
2041
- url: '/users/{user_id}/clusters/{cluster_id}';
2042
- };
2043
- export type SetClusterPermissionsResponses = {
2044
- /**
2045
- * Successfully created. Returns created user details.
2046
- */
2047
- 200: User;
2048
- };
2049
- export type SetClusterPermissionsResponse = SetClusterPermissionsResponses[keyof SetClusterPermissionsResponses];
2050
- export type ClientOptions = {
2051
- baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
2052
- };
2053
2596
  //# sourceMappingURL=types.gen.d.ts.map