@cloudfleet/sdk 0.0.1-b5706bb → 0.0.1-ba4d67b

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 (88) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1199 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1215 -0
  5. package/dist/@tanstack/react-query.gen.js.map +1 -0
  6. package/dist/client/client.gen.d.ts +3 -0
  7. package/dist/client/client.gen.d.ts.map +1 -0
  8. package/dist/client/client.gen.js +217 -0
  9. package/dist/client/client.gen.js.map +1 -0
  10. package/dist/client/index.d.ts +9 -0
  11. package/dist/client/index.d.ts.map +1 -0
  12. package/dist/client/index.js +7 -0
  13. package/dist/client/index.js.map +1 -0
  14. package/dist/client/types.gen.d.ts +121 -0
  15. package/dist/client/types.gen.d.ts.map +1 -0
  16. package/dist/client/types.gen.js +3 -0
  17. package/dist/client/types.gen.js.map +1 -0
  18. package/dist/client/utils.gen.d.ts +38 -0
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/utils.gen.js +229 -0
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +13 -0
  23. package/dist/client.gen.d.ts.map +1 -0
  24. package/dist/client.gen.js +4 -0
  25. package/dist/client.gen.js.map +1 -0
  26. package/dist/core/auth.gen.d.ts +19 -0
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/auth.gen.js +15 -0
  29. package/dist/core/auth.gen.js.map +1 -0
  30. package/dist/core/bodySerializer.gen.d.ts +26 -0
  31. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  32. package/dist/core/bodySerializer.gen.js +58 -0
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/params.gen.d.ts +44 -0
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/params.gen.js +101 -0
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/pathSerializer.gen.d.ts +34 -0
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/pathSerializer.gen.js +107 -0
  41. package/dist/core/pathSerializer.gen.js.map +1 -0
  42. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  43. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  44. package/dist/core/queryKeySerializer.gen.js +93 -0
  45. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  46. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  47. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  48. package/dist/core/serverSentEvents.gen.js +133 -0
  49. package/dist/core/serverSentEvents.gen.js.map +1 -0
  50. package/dist/core/types.gen.d.ts +79 -0
  51. package/dist/core/types.gen.d.ts.map +1 -0
  52. package/dist/core/types.gen.js +3 -0
  53. package/dist/core/types.gen.js.map +1 -0
  54. package/dist/core/utils.gen.d.ts +20 -0
  55. package/dist/core/utils.gen.d.ts.map +1 -0
  56. package/dist/core/utils.gen.js +88 -0
  57. package/dist/core/utils.gen.js.map +1 -0
  58. package/dist/index.d.ts +3 -0
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +3 -0
  61. package/dist/index.js.map +1 -1
  62. package/dist/schemas.gen.d.ts +1793 -1083
  63. package/dist/schemas.gen.d.ts.map +1 -1
  64. package/dist/schemas.gen.js +3358 -1361
  65. package/dist/schemas.gen.js.map +1 -1
  66. package/dist/sdk.gen.d.ts +352 -198
  67. package/dist/sdk.gen.d.ts.map +1 -1
  68. package/dist/sdk.gen.js +468 -296
  69. package/dist/sdk.gen.js.map +1 -1
  70. package/dist/services/kubernetes/api.d.ts +196 -0
  71. package/dist/services/kubernetes/api.d.ts.map +1 -0
  72. package/dist/services/kubernetes/api.js +140 -0
  73. package/dist/services/kubernetes/api.js.map +1 -0
  74. package/dist/services/kubernetes/index.d.ts +44 -0
  75. package/dist/services/kubernetes/index.d.ts.map +1 -0
  76. package/dist/services/kubernetes/index.js +68 -0
  77. package/dist/services/kubernetes/index.js.map +1 -0
  78. package/dist/services/kubernetes/types.d.ts +1335 -0
  79. package/dist/services/kubernetes/types.d.ts.map +1 -0
  80. package/dist/services/kubernetes/types.js +2 -0
  81. package/dist/services/kubernetes/types.js.map +1 -0
  82. package/dist/types.gen.d.ts +1998 -1252
  83. package/dist/types.gen.d.ts.map +1 -1
  84. package/dist/zod.gen.d.ts +3993 -2818
  85. package/dist/zod.gen.d.ts.map +1 -1
  86. package/dist/zod.gen.js +1724 -945
  87. package/dist/zod.gen.js.map +1 -1
  88. package/package.json +30 -7
@@ -1,20 +1,254 @@
1
- export type ClusterCreateInput = {
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
+ };
4
+ export type BasicPriceConsentInput = {
2
5
  /**
3
- * Name of the cluster.
6
+ * The administrator's decision on the new Basic price. `accepted` continues to paid billing when the signup credit runs out; `rejected` opts out (clusters are suspended, never charged). A `rejected` org can later be flipped back to `accepted`.
7
+ */
8
+ decision: 'accepted' | 'rejected';
9
+ };
10
+ export type BasicPriceConsent = {
11
+ /**
12
+ * Consent status for the new Basic price. `not_applicable` when the organization is not in scope for the migration. `pending` when the organization must opt in but no admin has decided yet. `accepted` / `rejected` reflect the recorded decision.
13
+ */
14
+ status: 'not_applicable' | 'pending' | 'accepted' | 'rejected';
15
+ /**
16
+ * When the current decision was recorded. Absent while `not_applicable` or `pending`.
17
+ */
18
+ decided_at?: string;
19
+ /**
20
+ * User id of the administrator who recorded the current decision. Absent while `not_applicable` or `pending`.
21
+ */
22
+ decided_by?: string;
23
+ };
24
+ export type BillingContact = {
25
+ /**
26
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
27
+ */
28
+ type: 'business' | 'personal';
29
+ /**
30
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
31
+ */
32
+ company?: string;
33
+ /**
34
+ * Street address, P.O. box, c/o
35
+ */
36
+ address1?: string;
37
+ /**
38
+ * Apartment, suite, unit, building, floor, etc.
39
+ */
40
+ address2?: string;
41
+ /**
42
+ * Postal code as a string.
43
+ */
44
+ postalCode?: string;
45
+ /**
46
+ * City or town name.
47
+ */
48
+ city?: string;
49
+ /**
50
+ * State, province, or region name.
51
+ */
52
+ state?: string;
53
+ /**
54
+ * Country as a ISO 3166-1 alpha-2 country code.
55
+ */
56
+ country?: string;
57
+ /**
58
+ * Phone number as a string.
59
+ */
60
+ phone?: string;
61
+ /**
62
+ * Email address used for billing as a string.
63
+ */
64
+ email: string;
65
+ /**
66
+ * Name of the billing contact person.
67
+ */
68
+ individual_name: string;
69
+ /**
70
+ * Tax ID of the organization.
71
+ */
72
+ tax_id?: string;
73
+ /**
74
+ * Type of the tax ID.
75
+ */
76
+ 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' | '';
77
+ };
78
+ export type BillingCredits = {
79
+ /**
80
+ * Generated unique identifier of the promotional code.
81
+ */
82
+ id?: string;
83
+ /**
84
+ * Type of the promotional code.
85
+ */
86
+ type: 'credit' | 'discount';
87
+ /**
88
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
89
+ */
90
+ date_start: string;
91
+ /**
92
+ * Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.
93
+ */
94
+ date_end?: string;
95
+ /**
96
+ * Promotional code used by the customer.
97
+ */
98
+ code: string;
99
+ /**
100
+ * Description of the promotional code.
101
+ */
102
+ description?: string;
103
+ /**
104
+ * Total value of the promotional code.
105
+ */
106
+ value_total: number;
107
+ /**
108
+ * Remaining value of the promotional code.
109
+ */
110
+ value_remaining?: number;
111
+ };
112
+ export type ChartCreateInput = {
113
+ /**
114
+ * Values to be used in the chart encoded as a JSON string.
115
+ */
116
+ values: string;
117
+ /**
118
+ * Desired version range or channel for the chart.
119
+ */
120
+ version_channel: string;
121
+ /**
122
+ * Unique identifier of the chart deployment aka name of the helm release.
4
123
  */
5
124
  name: string;
6
125
  /**
7
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
126
+ * Namespace of the chart deployment
127
+ */
128
+ namespace: string;
129
+ /**
130
+ * Name of the chart listing
131
+ */
132
+ chart: string;
133
+ };
134
+ export type Chart = {
135
+ /**
136
+ * Values to be used in the chart encoded as a JSON string.
137
+ */
138
+ values: string;
139
+ /**
140
+ * Desired version range or channel for the chart.
141
+ */
142
+ version_channel: string;
143
+ /**
144
+ * Unique identifier of the chart deployment aka name of the helm release.
145
+ */
146
+ name: string;
147
+ /**
148
+ * Namespace of the chart deployment
149
+ */
150
+ namespace: string;
151
+ /**
152
+ * Name of the chart listing
153
+ */
154
+ chart: string;
155
+ /**
156
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
8
157
  */
9
- region?: 'staging' | 'northamerica-central-1';
158
+ status: string;
159
+ /**
160
+ * Current version of the chart deployment.
161
+ */
162
+ version_current: string;
163
+ /**
164
+ * Creation date and time of the chart deployment.
165
+ */
166
+ created_at: string;
167
+ /**
168
+ * Last update date and time of the chart deployment.
169
+ */
170
+ updated_at: string;
171
+ /**
172
+ * Indicates if the chart deployment is ready to be used.
173
+ */
174
+ ready: boolean;
175
+ };
176
+ export type ChartUpdateInput = {
177
+ /**
178
+ * Values to be used in the chart encoded as a JSON string.
179
+ */
180
+ values: string;
181
+ /**
182
+ * Desired version range or channel for the chart.
183
+ */
184
+ version_channel: string;
185
+ };
186
+ /**
187
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
188
+ */
189
+ export type ClusterCreateInput = {
190
+ /**
191
+ * Name of the cluster.
192
+ */
193
+ name: string;
10
194
  /**
11
195
  * Tier of the cluster.
12
196
  */
13
- tier: 'basic' | 'pro';
197
+ tier?: 'basic' | 'pro' | 'enterprise';
14
198
  /**
15
199
  * Version of the kubernetes cluster.
16
200
  */
17
201
  version_channel?: string;
202
+ /**
203
+ * Release channel for the cluster's control plane.
204
+ */
205
+ release_channel?: 'rapid' | 'stable' | 'extended';
206
+ /**
207
+ * Cluster feature toggles.
208
+ */
209
+ features?: {
210
+ /**
211
+ * GPU sharing strategy.
212
+ */
213
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
214
+ /**
215
+ * Maximum number of pods that may share a single GPU.
216
+ */
217
+ gpu_max_shared_clients_per_gpu?: number;
218
+ /**
219
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
220
+ */
221
+ cilium_socket_lb_host_namespace_only?: boolean;
222
+ };
223
+ /**
224
+ * Cloudfleet control plane region. This field can not be updated after creation.
225
+ */
226
+ region: string;
227
+ /**
228
+ * Cluster networking configuration. Immutable after creation.
229
+ */
230
+ networking?: {
231
+ /**
232
+ * CIDR block for pod IPs.
233
+ */
234
+ pod_cidr?: string;
235
+ /**
236
+ * CIDR block for service IPs.
237
+ */
238
+ service_cidr?: string;
239
+ /**
240
+ * Enable IPv4+IPv6 dual-stack networking.
241
+ */
242
+ dual_stack?: boolean;
243
+ /**
244
+ * IPv6 pod CIDR. Requires dual_stack.
245
+ */
246
+ pod_cidr_v6?: string;
247
+ /**
248
+ * IPv6 service CIDR. Requires dual_stack.
249
+ */
250
+ service_cidr_v6?: string;
251
+ };
18
252
  };
19
253
  export type ClusterJoinInformation = {
20
254
  /**
@@ -25,6 +259,14 @@ export type ClusterJoinInformation = {
25
259
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
26
260
  */
27
261
  endpoint: string;
262
+ /**
263
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
264
+ */
265
+ cluster_dns: string;
266
+ /**
267
+ * Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.
268
+ */
269
+ pod_cidr: string;
28
270
  /**
29
271
  * Authentication key for the cluster.
30
272
  */
@@ -49,6 +291,10 @@ export type ClusterJoinInformation = {
49
291
  * Containerd version of the cluster.
50
292
  */
51
293
  containerd: string;
294
+ /**
295
+ * NVIDIA driver version of the cluster.
296
+ */
297
+ nvidia_driver: string;
52
298
  };
53
299
  /**
54
300
  * OIDC Information for hosts to access to third party API's.
@@ -68,32 +314,82 @@ export type ClusterJoinInformation = {
68
314
  gcp_workload_identity_provider: string;
69
315
  };
70
316
  };
317
+ /**
318
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
319
+ */
71
320
  export type Cluster = {
72
321
  /**
73
322
  * Name of the cluster.
74
323
  */
75
324
  name: string;
76
- /**
77
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.
78
- */
79
- region?: 'staging' | 'northamerica-central-1';
80
325
  /**
81
326
  * Tier of the cluster.
82
327
  */
83
- tier: 'basic' | 'pro';
328
+ tier: 'basic' | 'pro' | 'enterprise';
84
329
  /**
85
330
  * Version of the kubernetes cluster.
86
331
  */
87
- version_channel?: string;
332
+ version_channel: string;
333
+ /**
334
+ * Release channel for the cluster's control plane.
335
+ */
336
+ release_channel: 'rapid' | 'stable' | 'extended';
337
+ /**
338
+ * Cluster feature toggles.
339
+ */
340
+ features: {
341
+ /**
342
+ * GPU sharing strategy.
343
+ */
344
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
345
+ /**
346
+ * Maximum number of pods that may share a single GPU.
347
+ */
348
+ gpu_max_shared_clients_per_gpu: number;
349
+ /**
350
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
351
+ */
352
+ cilium_socket_lb_host_namespace_only: boolean;
353
+ };
354
+ /**
355
+ * Cloudfleet control plane region. This field can not be updated after creation.
356
+ */
357
+ region: string;
358
+ /**
359
+ * Cluster networking configuration. Immutable after creation.
360
+ */
361
+ networking: {
362
+ /**
363
+ * CIDR block for pod IPs.
364
+ */
365
+ pod_cidr: string;
366
+ /**
367
+ * CIDR block for service IPs.
368
+ */
369
+ service_cidr: string;
370
+ /**
371
+ * Enable IPv4+IPv6 dual-stack networking.
372
+ */
373
+ dual_stack: boolean;
374
+ /**
375
+ * IPv6 pod CIDR. Requires dual_stack.
376
+ */
377
+ pod_cidr_v6: string;
378
+ /**
379
+ * IPv6 service CIDR. Requires dual_stack.
380
+ */
381
+ service_cidr_v6: string;
382
+ };
88
383
  /**
89
384
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
90
385
  */
91
386
  id: string;
92
387
  /**
93
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
388
+ * Status of the cluster.
94
389
  */
95
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
390
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
96
391
  endpoint?: string | '';
392
+ endpoint_public?: string | '';
97
393
  /**
98
394
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
99
395
  */
@@ -113,952 +409,1075 @@ export type Cluster = {
113
409
  /**
114
410
  * Indicates if the cluster is ready to be used.
115
411
  */
116
- ready?: boolean;
412
+ ready: boolean;
117
413
  };
414
+ /**
415
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
416
+ */
118
417
  export type ClusterUpdateInput = {
119
418
  /**
120
419
  * Name of the cluster.
121
420
  */
122
- name?: string;
421
+ name: string;
422
+ /**
423
+ * Tier of the cluster.
424
+ */
425
+ tier?: 'basic' | 'pro' | 'enterprise';
123
426
  /**
124
427
  * Version of the kubernetes cluster.
125
428
  */
126
429
  version_channel?: string;
430
+ /**
431
+ * Release channel for the cluster's control plane.
432
+ */
433
+ release_channel?: 'rapid' | 'stable' | 'extended';
434
+ /**
435
+ * Cluster feature toggles.
436
+ */
437
+ features?: {
438
+ /**
439
+ * GPU sharing strategy.
440
+ */
441
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
442
+ /**
443
+ * Maximum number of pods that may share a single GPU.
444
+ */
445
+ gpu_max_shared_clients_per_gpu?: number;
446
+ /**
447
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
448
+ */
449
+ cilium_socket_lb_host_namespace_only?: boolean;
450
+ };
127
451
  };
452
+ /**
453
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
454
+ */
128
455
  export type FleetCreateInput = {
129
456
  /**
130
457
  * Limits define a set of bounds for provisioning capacity.
131
458
  */
132
459
  limits?: {
133
460
  /**
134
- * CPU limit in cores.
461
+ * CPU limit in cores. Maximum 100,000.
135
462
  */
136
- cpu: number;
463
+ cpu?: number;
137
464
  };
138
465
  gcp?: {
139
- enabled?: boolean;
466
+ enabled: boolean;
140
467
  /**
141
- * Project GCP Project id to deploy instances into
468
+ * 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.
142
469
  */
143
- project: string;
470
+ project?: string;
144
471
  };
145
472
  hetzner?: {
146
- enabled?: boolean;
147
- apiKey?: string;
148
- } | {
473
+ enabled: boolean;
474
+ /**
475
+ * Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.
476
+ */
149
477
  apiKey?: string;
150
- enabled?: boolean;
151
478
  };
152
479
  aws?: {
153
- enabled?: boolean;
480
+ enabled: boolean;
154
481
  /**
155
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
482
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
156
483
  */
157
- controllerRoleArn: string;
484
+ controllerRoleArn?: string;
158
485
  };
159
486
  /**
160
- * Unique identifier of the kubernetes fleet.
487
+ * 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.
161
488
  */
162
- id: string;
489
+ constraints?: {
490
+ /**
491
+ * Allowed values for `karpenter.sh/capacity-type`.
492
+ */
493
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
494
+ /**
495
+ * Allowed values for `kubernetes.io/arch`.
496
+ */
497
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
498
+ /**
499
+ * Allowed values for `cfke.io/instance-family`.
500
+ */
501
+ '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'>;
502
+ /**
503
+ * Allowed values for `topology.kubernetes.io/region`.
504
+ */
505
+ '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'>;
506
+ };
163
507
  /**
164
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
508
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
165
509
  */
166
- type: 'managed' | 'connected';
510
+ scalingProfile?: 'aggressive' | 'conservative';
511
+ /**
512
+ * Unique identifier of the kubernetes fleet.
513
+ */
514
+ id: string;
167
515
  };
516
+ /**
517
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
518
+ */
168
519
  export type Fleet = {
169
520
  /**
170
521
  * Limits define a set of bounds for provisioning capacity.
171
522
  */
172
523
  limits?: {
173
524
  /**
174
- * CPU limit in cores.
525
+ * CPU limit in cores. Maximum 100,000.
175
526
  */
176
- cpu: number;
527
+ cpu?: number;
177
528
  };
178
529
  gcp?: {
179
- enabled?: boolean;
530
+ enabled: boolean;
180
531
  /**
181
- * Project GCP Project id to deploy instances into
532
+ * 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.
182
533
  */
183
- project: string;
534
+ project?: string;
184
535
  };
185
536
  hetzner?: {
186
- enabled?: boolean;
187
- apiKey?: string;
188
- } | {
537
+ enabled: boolean;
538
+ /**
539
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
540
+ */
189
541
  apiKey?: string;
190
- enabled?: boolean;
191
542
  };
192
543
  aws?: {
193
- enabled?: boolean;
544
+ enabled: boolean;
545
+ /**
546
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
547
+ */
548
+ controllerRoleArn?: string;
549
+ };
550
+ /**
551
+ * 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.
552
+ */
553
+ constraints: {
554
+ /**
555
+ * Allowed values for `karpenter.sh/capacity-type`.
556
+ */
557
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
558
+ /**
559
+ * Allowed values for `kubernetes.io/arch`.
560
+ */
561
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
194
562
  /**
195
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
563
+ * Allowed values for `cfke.io/instance-family`.
196
564
  */
197
- controllerRoleArn: string;
565
+ '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'>;
566
+ /**
567
+ * Allowed values for `topology.kubernetes.io/region`.
568
+ */
569
+ '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'>;
198
570
  };
571
+ /**
572
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
573
+ */
574
+ scalingProfile: 'aggressive' | 'conservative';
199
575
  /**
200
576
  * Unique identifier of the kubernetes fleet.
201
577
  */
202
578
  id: string;
203
579
  /**
204
- * Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.
580
+ * Indicates whether the fleet configuration is healthy.
581
+ */
582
+ ready: boolean;
583
+ /**
584
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
585
+ */
586
+ status_message?: string;
587
+ /**
588
+ * Creation date and time of the fleet.
205
589
  */
206
- type: 'managed' | 'connected';
590
+ created_at: string;
591
+ /**
592
+ * Date and time the fleet was last updated.
593
+ */
594
+ updated_at: string;
207
595
  };
596
+ /**
597
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
598
+ */
208
599
  export type FleetUpdateInput = {
209
600
  /**
210
601
  * Limits define a set of bounds for provisioning capacity.
211
602
  */
212
603
  limits?: {
213
604
  /**
214
- * CPU limit in cores.
605
+ * CPU limit in cores. Maximum 100,000.
215
606
  */
216
- cpu: number;
607
+ cpu?: number;
217
608
  };
218
609
  gcp?: {
219
- enabled?: boolean;
610
+ enabled: boolean;
220
611
  /**
221
- * Project GCP Project id to deploy instances into
612
+ * 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.
222
613
  */
223
- project: string;
614
+ project?: string;
224
615
  };
225
616
  hetzner?: {
226
- enabled?: boolean;
227
- apiKey?: string;
228
- } | {
617
+ enabled: boolean;
618
+ /**
619
+ * Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.
620
+ */
229
621
  apiKey?: string;
230
- enabled?: boolean;
231
622
  };
232
623
  aws?: {
233
- enabled?: boolean;
624
+ enabled: boolean;
234
625
  /**
235
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
626
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
236
627
  */
237
- controllerRoleArn: string;
628
+ controllerRoleArn?: string;
238
629
  };
239
- };
240
- export type InfrastructureFilter = {
241
630
  /**
242
- * Version of the infrastructure filter definition. Currently only version 1 is supported.
631
+ * 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.
243
632
  */
244
- version?: 1;
633
+ constraints?: {
634
+ /**
635
+ * Allowed values for `karpenter.sh/capacity-type`.
636
+ */
637
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
638
+ /**
639
+ * Allowed values for `kubernetes.io/arch`.
640
+ */
641
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
642
+ /**
643
+ * Allowed values for `cfke.io/instance-family`.
644
+ */
645
+ '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'>;
646
+ /**
647
+ * Allowed values for `topology.kubernetes.io/region`.
648
+ */
649
+ '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'>;
650
+ };
245
651
  /**
246
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
652
+ * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).
247
653
  */
248
- provider?: Array<string>;
654
+ scalingProfile?: 'aggressive' | 'conservative';
655
+ };
656
+ export type InviteCreateInput = {
249
657
  /**
250
- * 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/)
658
+ * Email address of the user to invite.
251
659
  */
252
- region?: Array<string>;
660
+ email: string;
253
661
  /**
254
- * 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/)
662
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
255
663
  */
256
- sub_region?: Array<string>;
664
+ role?: 'Administrator' | 'User';
665
+ };
666
+ export type Invite = {
257
667
  /**
258
- * Limits selection of cloud regions to this list of canonical provider regions
668
+ * Unique identifier of the invitation.
259
669
  */
260
- csp_region?: Array<string>;
670
+ id?: string;
261
671
  /**
262
- * Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider
672
+ * Unique identifier of the organization the project belongs to. UUID v4 string in canonical form
263
673
  */
264
- instance_type?: Array<string>;
674
+ organization_id?: string;
265
675
  /**
266
- * 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
267
- */
268
- accelerator_name?: Array<string>;
269
- /**
270
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
676
+ * Creation date of the project. ISO 8601 date string in UTC timezone
271
677
  */
272
- accelerator_manufacturer?: Array<string>;
678
+ date_created: string;
273
679
  /**
274
- * 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.
680
+ * User email address.
275
681
  */
276
- accelerator_count_min?: number;
682
+ email?: string;
277
683
  /**
278
- * 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.
684
+ * Generated unique invite code.
279
685
  */
280
- accelerator_count_max?: number;
686
+ code?: string;
281
687
  /**
282
- * 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
688
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
283
689
  */
284
- accelerator_memory_min?: number;
690
+ role?: 'Administrator' | 'User';
691
+ };
692
+ export type Invoice = {
285
693
  /**
286
- * 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
694
+ * Unique identifier of the invoice.
287
695
  */
288
- accelerator_memory_max?: number;
696
+ id?: string;
697
+ number?: string;
289
698
  /**
290
- * Minimum amount of RAM in gibibytes (GiB)
699
+ * Status of the invoice
291
700
  */
292
- memory_min?: number;
701
+ status?: string;
293
702
  /**
294
- * Maximum amount of RAM in gibibytes (GiB)
703
+ * Total amount of the invoice
295
704
  */
296
- memory_max?: number;
705
+ total?: number;
297
706
  /**
298
- * 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.
707
+ * Currency of the invoice
299
708
  */
300
- vcpu_min?: number;
709
+ currency?: string;
301
710
  /**
302
- * 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.
711
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
303
712
  */
304
- vcpu_max?: number;
713
+ created: string;
305
714
  /**
306
- * Minimum total storage in GiB (attached and local)
715
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
307
716
  */
308
- storage_total_min?: number;
717
+ period_start: string;
309
718
  /**
310
- * Maximum total storage in GiB (attached and local)
719
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
311
720
  */
312
- storage_total_max?: number;
721
+ period_end: string;
722
+ invoice_pdf?: string;
723
+ };
724
+ export type MarketplaceListingFiles = {
313
725
  /**
314
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
726
+ * Raw Chart.yaml content from the Helm chart
315
727
  */
316
- storage_local_min?: number;
728
+ chartYaml?: string;
317
729
  /**
318
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
730
+ * Raw values.yaml content from the Helm chart
319
731
  */
320
- storage_local_max?: number;
732
+ valuesYaml?: string;
321
733
  /**
322
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
734
+ * JSON schema for values.yaml as a string
323
735
  */
324
- price_min?: number;
736
+ valuesSchemaJson?: string;
737
+ };
738
+ export type MarketplaceListing = {
325
739
  /**
326
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
740
+ * Name of the chart
327
741
  */
328
- price_max?: number;
329
- };
330
- export type InfrastructureInstance = {
742
+ name: string;
331
743
  /**
332
- * Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.
744
+ * Available versions of the chart
333
745
  */
334
- sku: string;
746
+ versions: Array<string>;
335
747
  /**
336
- * Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
748
+ * Version channels for the chart
337
749
  */
338
- provider: string;
750
+ version_channels: Array<string>;
339
751
  /**
340
- * 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/)
752
+ * Latest version of the chart
341
753
  */
342
- region: string;
754
+ latestVersion: string;
343
755
  /**
344
- * 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/)
756
+ * Chart metadata
345
757
  */
346
- sub_region: string;
758
+ metadata?: {
759
+ /**
760
+ * Chart name from metadata
761
+ */
762
+ name: string;
763
+ /**
764
+ * Chart version from metadata
765
+ */
766
+ version: string;
767
+ /**
768
+ * Chart description
769
+ */
770
+ description?: string;
771
+ /**
772
+ * Application version
773
+ */
774
+ appVersion?: string;
775
+ /**
776
+ * Helm API version
777
+ */
778
+ apiVersion?: string;
779
+ /**
780
+ * Chart keywords
781
+ */
782
+ keywords?: Array<string>;
783
+ /**
784
+ * Chart home URL
785
+ */
786
+ home?: string;
787
+ /**
788
+ * A URL to an SVG or PNG image to be used as an icon
789
+ */
790
+ icon?: string;
791
+ /**
792
+ * Chart source URLs
793
+ */
794
+ sources?: Array<string>;
795
+ /**
796
+ * Chart maintainers
797
+ */
798
+ maintainers?: Array<{
799
+ /**
800
+ * Maintainer name
801
+ */
802
+ name: string;
803
+ /**
804
+ * Maintainer email
805
+ */
806
+ email?: string;
807
+ }>;
808
+ };
809
+ };
810
+ export type OrganizationCreateInput = {
347
811
  /**
348
- * Region as defined by the cloud service provider
812
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
349
813
  */
350
- csp_region: string;
814
+ type: 'business' | 'personal';
351
815
  /**
352
- * Availability zone as defined by the cloud service provider
816
+ * Email address used for billing as a string.
353
817
  */
354
- csp_zone: string;
818
+ email: string;
355
819
  /**
356
- * Instance / VM type as defined by the cloud service provider
820
+ * First name of the billing contact person.
357
821
  */
358
- instance_type: string;
822
+ first_name: string;
359
823
  /**
360
- * Instance CPU architecture
824
+ * Last name of the billing contact person.
361
825
  */
362
- architecture: string;
826
+ last_name: string;
363
827
  /**
364
- * Instance operating system
828
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
365
829
  */
366
- os: string;
830
+ company_name: string;
367
831
  /**
368
- * 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.
832
+ * Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.
369
833
  */
370
- vcpu: number;
834
+ password: string;
835
+ };
836
+ export type OrganizationCreateOutput = {
371
837
  /**
372
- * Total amount of RAM in gibibytes (GiB)
838
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
373
839
  */
374
- memory: number;
840
+ id: string;
841
+ };
842
+ export type Organization = {
375
843
  /**
376
- * Volume of directly attached, block-device local storage in gibibytes (GiB)
844
+ * Unique identifier of the organization. UUID v4 string in canonical form
377
845
  */
378
- local_storage: number;
846
+ id: string;
379
847
  /**
380
- * 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
848
+ * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
381
849
  */
382
- accelerator_name?: string;
850
+ name?: string;
383
851
  /**
384
- * Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
852
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
385
853
  */
386
- accelerator_manufacturer?: string;
854
+ type: 'business' | 'personal';
387
855
  /**
388
- * 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.
856
+ * Creation date of the organization. ISO 8601 date string in UTC timezone
389
857
  */
390
- accelerator_count?: number;
858
+ date_created: string;
391
859
  /**
392
- * 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
860
+ * For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.
393
861
  */
394
- accelerator_memory?: number;
862
+ quota: {
863
+ /**
864
+ * Maximum number of Basic clusters that can be created.
865
+ */
866
+ basic_clusters_max: number;
867
+ /**
868
+ * Available number of Basic clusters that can be created.
869
+ */
870
+ basic_clusters_available: number;
871
+ /**
872
+ * Maximum number of Pro clusters that can be created.
873
+ */
874
+ pro_clusters_max: number;
875
+ /**
876
+ * Available number of Pro clusters that can be created.
877
+ */
878
+ pro_clusters_available: number;
879
+ /**
880
+ * Maximum number of Enterprise clusters that can be created.
881
+ */
882
+ enterprise_clusters_max: number;
883
+ /**
884
+ * Available number of Enterprise clusters that can be created.
885
+ */
886
+ enterprise_clusters_available: number;
887
+ /**
888
+ * Maximum number of fleets that can be created per cluster.
889
+ */
890
+ fleets_max: number;
891
+ /**
892
+ * List of Cloudfleet cluster tiers available for the organization.
893
+ */
894
+ cluster_tiers: Array<string>;
895
+ /**
896
+ * List of Cloudfleet control plane regions available for the organization.
897
+ */
898
+ regions: Array<string>;
899
+ /**
900
+ * List of CFKE control plane versions available for the organization.
901
+ */
902
+ versions: Array<{
903
+ /**
904
+ * Id of the control plane version. Used in API calls.
905
+ */
906
+ id: string;
907
+ /**
908
+ * Label of the control plane version. Used in frontent UI.
909
+ */
910
+ label: string;
911
+ }>;
912
+ /**
913
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
914
+ */
915
+ cfcr_storage_gb: number;
916
+ };
395
917
  /**
396
- * Maximum number of pods that can be run on this instance type.
918
+ * Status of the organization. Can be `active` or `closed`, or `suspended`.
397
919
  */
398
- pods_capacity?: number;
920
+ status: 'active' | 'closed' | 'suspended';
399
921
  /**
400
- * Capacity type of the instance. E.g. `on-demand`, `spot`.
922
+ * Verification status of the organization, which determines the assigned quota. `none` when billing information is incomplete, `submitted` when billing information is complete but the organization is not yet verified, `verified` when the organization is verified.
401
923
  */
402
- capacity_type?: string;
924
+ verification: 'none' | 'submitted' | 'verified';
925
+ };
926
+ export type PaymentMethod = {
403
927
  /**
404
- * Price of running the inctance per hour in USD as defined by the cloud service provider
928
+ * Payment method identifier. Stripe payment method id for cards/SEPA; the constant `bank_transfer` for the invoice/bank-transfer method. Used to set as default or delete the payment method.
405
929
  */
406
- price: number;
930
+ id: string;
407
931
  /**
408
- * Whether this instance type is available.
932
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
409
933
  */
410
- available?: boolean;
411
- };
412
- export type Invite = {
934
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
413
935
  /**
414
- * Unique identifier of the invitation.
936
+ * Last 4 digits of the payment card number, of the bank account (IBAN) for SEPA Direct Debit, or of the destination IBAN for bank transfer.
415
937
  */
416
- id?: string;
938
+ last4: string;
417
939
  /**
418
- * Unique identifier of the organization the project belongs to. UUID v4 string in canonical form
940
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
419
941
  */
420
- organization_id?: string;
942
+ exp_month: number;
421
943
  /**
422
- * Creation date of the project. ISO 8601 date string in UTC timezone
944
+ * Four-digit number representing the card's expiration year. May be in the past for an expired card still on file. Null for SEPA Direct Debit and bank transfer.
423
945
  */
424
- date_created: string;
946
+ exp_year: number;
425
947
  /**
426
- * User email address.
948
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
427
949
  */
428
- email?: string;
950
+ brand: string;
429
951
  /**
430
- * Generated unique invite code.
952
+ * Full destination IBAN to send bank transfers to. Set only for `bank_transfer`; null otherwise. This is Cloudfleet's virtual receiving account, shown in full so the customer can pay into it.
431
953
  */
432
- code?: string;
433
- };
434
- export type Invoice = {
954
+ iban: string;
435
955
  /**
436
- * Unique identifier of the invoice. UUID v4 string in canonical form
956
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
437
957
  */
438
- id?: string;
958
+ bic: string;
439
959
  /**
440
- * Unique identifier of the organization. UUID v4 string in canonical form
960
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
441
961
  */
442
- organizationId?: string;
962
+ account_holder_name: string;
443
963
  /**
444
- * Status of the invoice
964
+ * Whether this payment method is the default used for invoices and active subscriptions. Always false for `bank_transfer` (it cannot be a Stripe default payment method).
445
965
  */
446
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
966
+ is_default: boolean;
967
+ };
968
+ export type PlatformQuota = {
447
969
  /**
448
- * Total amount of the invoice
970
+ * Maximum number of Basic clusters that can be created.
449
971
  */
450
- amount?: number;
972
+ basic_clusters_max: number;
451
973
  /**
452
- * Currency of the invoice
974
+ * Available number of Basic clusters that can be created.
453
975
  */
454
- 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';
976
+ basic_clusters_available: number;
455
977
  /**
456
- * Total amount of credit adjustments
978
+ * Maximum number of Pro clusters that can be created.
457
979
  */
458
- creditAdj?: number;
980
+ pro_clusters_max: number;
459
981
  /**
460
- * Total amount of refund adjustments
982
+ * Available number of Pro clusters that can be created.
461
983
  */
462
- refundAdj?: number;
984
+ pro_clusters_available: number;
463
985
  /**
464
- * Date of the invoice
986
+ * Maximum number of Enterprise clusters that can be created.
465
987
  */
466
- invoiceDate?: string;
988
+ enterprise_clusters_max: number;
467
989
  /**
468
- * Target date of the invoice
990
+ * Available number of Enterprise clusters that can be created.
469
991
  */
470
- targetDate?: string;
992
+ enterprise_clusters_available: number;
471
993
  /**
472
- * Number of the invoice
994
+ * Maximum number of fleets that can be created per cluster.
473
995
  */
474
- invoiceNumber?: string;
996
+ fleets_max: number;
475
997
  /**
476
- * Balance of the invoice
998
+ * List of Cloudfleet cluster tiers available for the organization.
477
999
  */
478
- balance?: number;
1000
+ cluster_tiers: Array<string>;
479
1001
  /**
480
- * Bundle keys of the invoice
1002
+ * List of Cloudfleet control plane regions available for the organization.
481
1003
  */
482
- bundleKeys?: string;
1004
+ regions: Array<string>;
483
1005
  /**
484
- * Credits of the invoice
1006
+ * List of CFKE control plane versions available for the organization.
485
1007
  */
486
- credits?: Array<{
487
- /**
488
- * Unique identifier of the invoice item. UUID v4 string in canonical form
489
- */
490
- id?: string;
491
- /**
492
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
493
- */
494
- linkedInvoiceItemId?: string;
1008
+ versions: Array<{
495
1009
  /**
496
- * Name of the product
1010
+ * Id of the control plane version. Used in API calls.
497
1011
  */
498
- productName?: string;
499
- /**
500
- * Name of the plan
501
- */
502
- planName?: string;
1012
+ id: string;
503
1013
  /**
504
- * Name of the phase
1014
+ * Label of the control plane version. Used in frontent UI.
505
1015
  */
506
- phaseName?: string;
1016
+ label: string;
1017
+ }>;
1018
+ /**
1019
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
1020
+ */
1021
+ cfcr_storage_gb: number;
1022
+ };
1023
+ export type RegistryRepository = {
1024
+ /**
1025
+ * Repository name.
1026
+ */
1027
+ name: string;
1028
+ /**
1029
+ * Registry region.
1030
+ */
1031
+ region: string;
1032
+ /**
1033
+ * Full URI of the repository.
1034
+ */
1035
+ uri: string;
1036
+ };
1037
+ export type RegistryRepositoryWithTags = {
1038
+ /**
1039
+ * Repository name.
1040
+ */
1041
+ name: string;
1042
+ /**
1043
+ * Registry region.
1044
+ */
1045
+ region: string;
1046
+ /**
1047
+ * Full URI of the repository.
1048
+ */
1049
+ uri: string;
1050
+ /**
1051
+ * Array of tags in the repository.
1052
+ */
1053
+ tags: Array<{
507
1054
  /**
508
- * Name of the usage
1055
+ * Tag name.
509
1056
  */
510
- usageName?: string;
1057
+ name: string;
511
1058
  /**
512
- * Pretty name of the product
1059
+ * Size of the tag in bytes.
513
1060
  */
514
- prettyProductName?: string;
1061
+ size: number;
515
1062
  /**
516
- * Pretty name of the plan
1063
+ * Media type of the manifest.
517
1064
  */
518
- prettyPlanName?: string;
1065
+ mediaType?: string;
519
1066
  /**
520
- * Pretty name of the phase
1067
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
521
1068
  */
522
- prettyPhaseName?: string;
1069
+ platforms?: Array<string>;
1070
+ }>;
1071
+ /**
1072
+ * Total size of all tags in the repository in bytes.
1073
+ */
1074
+ totalSize: number;
1075
+ };
1076
+ export type RegistryTag = {
1077
+ /**
1078
+ * Tag name.
1079
+ */
1080
+ name: string;
1081
+ /**
1082
+ * Manifest digest for pulling by digest.
1083
+ */
1084
+ digest: string;
1085
+ /**
1086
+ * Media type of the manifest.
1087
+ */
1088
+ mediaType?: string;
1089
+ /**
1090
+ * Manifest config metadata.
1091
+ */
1092
+ config?: {
523
1093
  /**
524
- * Pretty name of the usage
1094
+ * Size of the config in bytes.
525
1095
  */
526
- prettyUsageName?: string;
1096
+ size: number;
1097
+ };
1098
+ /**
1099
+ * Array of layer metadata.
1100
+ */
1101
+ layers?: Array<{
527
1102
  /**
528
- * Type of the invoice item
1103
+ * Digest of the layer.
529
1104
  */
530
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
1105
+ digest?: string;
531
1106
  /**
532
- * Description of the invoice item
1107
+ * Size of the layer in bytes.
533
1108
  */
534
- description?: string;
1109
+ size: number;
1110
+ }>;
1111
+ /**
1112
+ * Array of manifests for multi-arch images.
1113
+ */
1114
+ manifests?: Array<{
535
1115
  /**
536
- * Start date of the invoice item
1116
+ * Digest of the manifest.
537
1117
  */
538
- startDate?: string;
1118
+ digest: string;
539
1119
  /**
540
- * End date of the invoice item
1120
+ * Platform information for the manifest.
541
1121
  */
542
- endDate?: string;
1122
+ platform?: {
1123
+ /**
1124
+ * Architecture of the platform.
1125
+ */
1126
+ architecture: string;
1127
+ /**
1128
+ * Operating system of the platform.
1129
+ */
1130
+ os: string;
1131
+ /**
1132
+ * Variant of the platform (e.g., v7, v8 for ARM).
1133
+ */
1134
+ variant?: string;
1135
+ };
543
1136
  /**
544
- * Amount of the invoice item
1137
+ * Layers for this platform.
545
1138
  */
546
- amount?: number;
1139
+ layers?: Array<{
1140
+ /**
1141
+ * Digest of the layer.
1142
+ */
1143
+ digest?: string;
1144
+ /**
1145
+ * Size of the layer in bytes.
1146
+ */
1147
+ size: number;
1148
+ }>;
547
1149
  /**
548
- * Rate of the invoice item
1150
+ * Total size of this platform manifest in bytes.
549
1151
  */
550
- rate?: number;
1152
+ size?: number;
1153
+ }>;
1154
+ /**
1155
+ * Total size of the tag in bytes.
1156
+ */
1157
+ size: number;
1158
+ /**
1159
+ * Registry region.
1160
+ */
1161
+ region: string;
1162
+ /**
1163
+ * Repository name.
1164
+ */
1165
+ repository: string;
1166
+ /**
1167
+ * Full URI of the tag.
1168
+ */
1169
+ uri: string;
1170
+ };
1171
+ export type TicketAttachment = {
1172
+ /**
1173
+ * Unique identifier of the attachment (Mongo ObjectId).
1174
+ */
1175
+ id: string;
1176
+ /**
1177
+ * Original filename as uploaded.
1178
+ */
1179
+ filename: string;
1180
+ /**
1181
+ * MIME content type of the attachment.
1182
+ */
1183
+ content_type: string;
1184
+ /**
1185
+ * Size of the attachment in bytes.
1186
+ */
1187
+ size: number;
1188
+ };
1189
+ export type TicketCreateInput = {
1190
+ /**
1191
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
1192
+ */
1193
+ category: 'billing' | 'technical' | 'general';
1194
+ /**
1195
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
1196
+ */
1197
+ body: string;
1198
+ /**
1199
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
1200
+ */
1201
+ properties?: {
1202
+ [key: string]: unknown;
1203
+ };
1204
+ };
1205
+ export type TicketMessageInput = {
1206
+ /**
1207
+ * Reply body in markdown.
1208
+ */
1209
+ body: string;
1210
+ };
1211
+ export type TicketMessage = {
1212
+ /**
1213
+ * Unique identifier of the message (Mongo ObjectId).
1214
+ */
1215
+ id: string;
1216
+ /**
1217
+ * Message type. Internal notes are filtered out of customer-facing responses.
1218
+ */
1219
+ type: 'customer_reply' | 'agent_reply';
1220
+ /**
1221
+ * Message body in markdown.
1222
+ */
1223
+ body: string;
1224
+ /**
1225
+ * First name of the author. Null when not provided.
1226
+ */
1227
+ author_first_name?: string;
1228
+ /**
1229
+ * Last name of the author. Null when not provided.
1230
+ */
1231
+ author_last_name?: string;
1232
+ /**
1233
+ * Attachments associated with this message.
1234
+ */
1235
+ attachments?: Array<{
551
1236
  /**
552
- * Currency of the invoice item
1237
+ * Unique identifier of the attachment (Mongo ObjectId).
553
1238
  */
554
- 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';
1239
+ id: string;
555
1240
  /**
556
- * Quantity of the invoice item
1241
+ * Original filename as uploaded.
557
1242
  */
558
- quantity?: number;
1243
+ filename: string;
559
1244
  /**
560
- * Details of the invoice item
1245
+ * MIME content type of the attachment.
561
1246
  */
562
- itemDetails?: string;
1247
+ content_type: string;
563
1248
  /**
564
- * Effective date of the catalog
1249
+ * Size of the attachment in bytes.
565
1250
  */
566
- catalogEffectiveDate?: string;
567
- /**
568
- * Child items of the invoice item
569
- */
570
- childItems?: Array<Array<unknown> | boolean | number | {
571
- [key: string]: unknown;
572
- } | string>;
1251
+ size: number;
573
1252
  }>;
574
1253
  /**
575
- * Items of the invoice
1254
+ * Creation date of the message. ISO 8601 UTC.
576
1255
  */
577
- items?: Array<{
578
- /**
579
- * Unique identifier of the invoice item. UUID v4 string in canonical form
580
- */
581
- id?: string;
582
- /**
583
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
584
- */
585
- linkedInvoiceItemId?: string;
586
- /**
587
- * Name of the product
588
- */
589
- productName?: string;
590
- /**
591
- * Name of the plan
592
- */
593
- planName?: string;
594
- /**
595
- * Name of the phase
596
- */
597
- phaseName?: string;
598
- /**
599
- * Name of the usage
600
- */
601
- usageName?: string;
602
- /**
603
- * Pretty name of the product
604
- */
605
- prettyProductName?: string;
606
- /**
607
- * Pretty name of the plan
608
- */
609
- prettyPlanName?: string;
610
- /**
611
- * Pretty name of the phase
612
- */
613
- prettyPhaseName?: string;
614
- /**
615
- * Pretty name of the usage
616
- */
617
- prettyUsageName?: string;
618
- /**
619
- * Type of the invoice item
620
- */
621
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
622
- /**
623
- * Description of the invoice item
624
- */
625
- description?: string;
626
- /**
627
- * Start date of the invoice item
628
- */
629
- startDate?: string;
630
- /**
631
- * End date of the invoice item
632
- */
633
- endDate?: string;
634
- /**
635
- * Amount of the invoice item
636
- */
637
- amount?: number;
638
- /**
639
- * Rate of the invoice item
640
- */
641
- rate?: number;
642
- /**
643
- * Currency of the invoice item
644
- */
645
- 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';
646
- /**
647
- * Quantity of the invoice item
648
- */
649
- quantity?: number;
650
- /**
651
- * Details of the invoice item
652
- */
653
- itemDetails?: string;
654
- /**
655
- * Effective date of the catalog
656
- */
657
- catalogEffectiveDate?: string;
658
- /**
659
- * Child items of the invoice item
660
- */
661
- childItems?: Array<Array<unknown> | boolean | number | {
662
- [key: string]: unknown;
663
- } | string>;
664
- }>;
1256
+ date_created: string;
665
1257
  };
666
- export type OrganizationContactInfo = {
667
- /**
668
- * Street address, P.O. box, c/o
669
- */
670
- address1?: string;
671
- /**
672
- * Apartment, suite, unit, building, floor, etc.
673
- */
674
- address2?: string;
675
- /**
676
- * Postal code as a string.
677
- */
678
- postalCode?: string;
679
- /**
680
- * City or town name.
681
- */
682
- city?: string;
1258
+ export type Ticket = {
683
1259
  /**
684
- * State, province, or region name.
1260
+ * Unique identifier of the ticket (Mongo ObjectId).
685
1261
  */
686
- state?: string;
1262
+ id: string;
687
1263
  /**
688
- * Country as a ISO 3166-1 alpha-2 country code.
1264
+ * Current state of the ticket.
689
1265
  */
690
- country?: string;
1266
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
691
1267
  /**
692
- * Phone number as a string.
1268
+ * Ticket category.
693
1269
  */
694
- phone?: string;
1270
+ category: 'billing' | 'technical' | 'general';
695
1271
  /**
696
- * Email address used for billing as a string.
1272
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
697
1273
  */
698
- email: string;
1274
+ summary: string;
699
1275
  /**
700
- * First name of the billing contact person.
1276
+ * Closure timestamp. Null while the ticket is open.
701
1277
  */
702
- first_name: string;
1278
+ closed_at?: string;
703
1279
  /**
704
- * Last name of the billing contact person.
1280
+ * Creation date of the ticket. ISO 8601 UTC.
705
1281
  */
706
- last_name: string;
707
- };
708
- export type OrganizationCreateInput = {
1282
+ date_created: string;
709
1283
  /**
710
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1284
+ * Last update date of the ticket. ISO 8601 UTC.
711
1285
  */
712
- name: string;
1286
+ date_updated: string;
713
1287
  /**
714
- * Organization contact information and billing address.
1288
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
715
1289
  */
716
- contactInfo: {
717
- /**
718
- * Street address, P.O. box, c/o
719
- */
720
- address1?: string;
721
- /**
722
- * Apartment, suite, unit, building, floor, etc.
723
- */
724
- address2?: string;
1290
+ messages?: Array<{
725
1291
  /**
726
- * Postal code as a string.
1292
+ * Unique identifier of the message (Mongo ObjectId).
727
1293
  */
728
- postalCode?: string;
729
- /**
730
- * City or town name.
731
- */
732
- city?: string;
1294
+ id: string;
733
1295
  /**
734
- * State, province, or region name.
1296
+ * Message type. Internal notes are filtered out of customer-facing responses.
735
1297
  */
736
- state?: string;
1298
+ type: 'customer_reply' | 'agent_reply';
737
1299
  /**
738
- * Country as a ISO 3166-1 alpha-2 country code.
1300
+ * Message body in markdown.
739
1301
  */
740
- country?: string;
1302
+ body: string;
741
1303
  /**
742
- * Phone number as a string.
1304
+ * First name of the author. Null when not provided.
743
1305
  */
744
- phone?: string;
1306
+ author_first_name?: string;
745
1307
  /**
746
- * Email address used for billing as a string.
1308
+ * Last name of the author. Null when not provided.
747
1309
  */
748
- email: string;
1310
+ author_last_name?: string;
749
1311
  /**
750
- * First name of the billing contact person.
1312
+ * Attachments associated with this message.
751
1313
  */
752
- first_name: string;
1314
+ attachments?: Array<{
1315
+ /**
1316
+ * Unique identifier of the attachment (Mongo ObjectId).
1317
+ */
1318
+ id: string;
1319
+ /**
1320
+ * Original filename as uploaded.
1321
+ */
1322
+ filename: string;
1323
+ /**
1324
+ * MIME content type of the attachment.
1325
+ */
1326
+ content_type: string;
1327
+ /**
1328
+ * Size of the attachment in bytes.
1329
+ */
1330
+ size: number;
1331
+ }>;
753
1332
  /**
754
- * Last name of the billing contact person.
1333
+ * Creation date of the message. ISO 8601 UTC.
755
1334
  */
756
- last_name: string;
757
- };
1335
+ date_created: string;
1336
+ }>;
1337
+ };
1338
+ export type TokenCreateInput = {
758
1339
  /**
759
- * Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.
1340
+ * Human readable access token name.
760
1341
  */
761
- password: string;
1342
+ name: string;
1343
+ /**
1344
+ * Role assumed by the token.
1345
+ */
1346
+ role: 'Administrator' | 'User';
762
1347
  };
763
- export type Organization = {
1348
+ export type Token = {
764
1349
  /**
765
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1350
+ * Human readable access token name.
766
1351
  */
767
1352
  name: string;
768
1353
  /**
769
- * Organization contact information and billing address.
1354
+ * Role assumed by the token.
770
1355
  */
771
- contactInfo: {
772
- /**
773
- * Street address, P.O. box, c/o
774
- */
775
- address1?: string;
776
- /**
777
- * Apartment, suite, unit, building, floor, etc.
778
- */
779
- address2?: string;
780
- /**
781
- * Postal code as a string.
782
- */
783
- postalCode?: string;
784
- /**
785
- * City or town name.
786
- */
787
- city?: string;
788
- /**
789
- * State, province, or region name.
790
- */
791
- state?: string;
792
- /**
793
- * Country as a ISO 3166-1 alpha-2 country code.
794
- */
795
- country?: string;
796
- /**
797
- * Phone number as a string.
798
- */
799
- phone?: string;
800
- /**
801
- * Email address used for billing as a string.
802
- */
803
- email: string;
804
- /**
805
- * First name of the billing contact person.
806
- */
807
- first_name: string;
808
- /**
809
- * Last name of the billing contact person.
810
- */
811
- last_name: string;
812
- };
1356
+ role: 'Administrator' | 'User';
813
1357
  /**
814
- * Unique identifier of the organization. UUID v4 string in canonical form
1358
+ * Generated unique identifier of the access token.
815
1359
  */
816
- id: string;
1360
+ id?: string;
817
1361
  /**
818
- * Creation date of the organization. ISO 8601 date string in UTC timezone
1362
+ * Access token secret. Unmasked only during creation.
819
1363
  */
820
- date_created: string;
1364
+ secret?: string;
821
1365
  /**
822
- * For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.
1366
+ * Creation date of the access token. ISO 8601 date string in UTC timezone
823
1367
  */
824
- quota: {
825
- /**
826
- * Maximum number of Basic clusters that can be created.
827
- */
828
- basic_clusters_max: number;
829
- /**
830
- * Available number of Basic clusters that can be created.
831
- */
832
- basic_clusters_available: number;
833
- /**
834
- * Maximum number of Pro clusters that can be created.
835
- */
836
- pro_clusters_max: number;
837
- /**
838
- * Available number of Pro clusters that can be created.
839
- */
840
- pro_clusters_available: number;
841
- /**
842
- * Maximum number of fleets that can be created per cluster.
843
- */
844
- fleets_max: number;
845
- /**
846
- * Maximum number of CPU cores per managed fleet.
847
- */
848
- managed_fleets_cpu_max: number;
849
- /**
850
- * List of Cloudfleet cluster tiers available for the organization.
851
- */
852
- cluster_tiers: Array<string>;
853
- /**
854
- * List of Cloudfleet control plane regions available for the organization.
855
- */
856
- regions: Array<string>;
857
- /**
858
- * List of CFKE control plane versions available for the organization.
859
- */
860
- versions: Array<{
861
- /**
862
- * Id of the control plane version. Used in API calls.
863
- */
864
- id: string;
865
- /**
866
- * Label of the control plane version. Used in frontent UI.
867
- */
868
- label: string;
869
- }>;
870
- };
1368
+ date_created: string;
1369
+ };
1370
+ export type TokenUpdateInput = {
871
1371
  /**
872
- * List of pending actions that the user needs to complete. Used in Cloudfleet console to guide the user through the onboarding process.
1372
+ * Human readable access token name.
873
1373
  */
874
- pending_actions: Array<'signup-billing-address' | 'signup-payment-method' | 'signup-invite-team' | 'signup-create-cluster'>;
1374
+ name?: string;
875
1375
  /**
876
- * Status of the organization. Can be `active` or `closed`, or `suspended`.
1376
+ * Role assumed by the token.
877
1377
  */
878
- status: 'active' | 'closed' | 'suspended';
1378
+ role?: 'Administrator' | 'User';
879
1379
  };
880
- export type OrganizationUpdateInput = {
1380
+ export type UsageFacets = {
881
1381
  /**
882
- * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
1382
+ * List of unique cluster IDs
883
1383
  */
884
- name?: string;
1384
+ cluster_id?: Array<string>;
885
1385
  /**
886
- * Organization contact information and billing address.
1386
+ * List of unique products
887
1387
  */
888
- contactInfo: {
889
- /**
890
- * Street address, P.O. box, c/o
891
- */
892
- address1?: string;
893
- /**
894
- * Apartment, suite, unit, building, floor, etc.
895
- */
896
- address2?: string;
1388
+ product?: Array<'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage'>;
1389
+ };
1390
+ export type UsageResponse = {
1391
+ /**
1392
+ * Usage data
1393
+ */
1394
+ data: Array<{
897
1395
  /**
898
- * Postal code as a string.
1396
+ * Hour of the usage
899
1397
  */
900
- postalCode?: string;
1398
+ hour: string;
901
1399
  /**
902
- * City or town name.
1400
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
903
1401
  */
904
- city?: string;
1402
+ cluster_id: string;
905
1403
  /**
906
- * State, province, or region name.
1404
+ * The product the usage is associated with
907
1405
  */
908
- state?: string;
1406
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
909
1407
  /**
910
- * Country as a ISO 3166-1 alpha-2 country code.
1408
+ * Consumption
911
1409
  */
912
- country?: string;
1410
+ value: number;
913
1411
  /**
914
- * Phone number as a string.
1412
+ * Price per unit
915
1413
  */
916
- phone?: string;
1414
+ price: number;
917
1415
  /**
918
- * Email address used for billing as a string.
1416
+ * Total cost
919
1417
  */
920
- email: string;
1418
+ total: number;
1419
+ }>;
1420
+ /**
1421
+ * Facets for filtering
1422
+ */
1423
+ facets: {
921
1424
  /**
922
- * First name of the billing contact person.
1425
+ * List of unique cluster IDs
923
1426
  */
924
- first_name: string;
1427
+ cluster_id?: Array<string>;
925
1428
  /**
926
- * Last name of the billing contact person.
1429
+ * List of unique products
927
1430
  */
928
- last_name: string;
1431
+ product?: Array<'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage'>;
929
1432
  };
930
1433
  };
931
- export type PaymentMethod = {
932
- /**
933
- * Unique identifier of the organization. UUID v4 string in canonical form.
934
- */
935
- id: string;
1434
+ export type Usage = {
936
1435
  /**
937
- * Whether organization payment method was set up and ready to use for payments.
1436
+ * Hour of the usage
938
1437
  */
939
- setup: boolean;
1438
+ hour: string;
940
1439
  /**
941
- * Payment method type type. Only `card` payments supported at the moment.
1440
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
942
1441
  */
943
- type: 'card';
1442
+ cluster_id: string;
944
1443
  /**
945
- * Last 4 digits of the payment card number.
1444
+ * The product the usage is associated with
946
1445
  */
947
- last4: string;
1446
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
948
1447
  /**
949
- * Two-digit number representing the card's expiration month.
1448
+ * Consumption
950
1449
  */
951
- exp_month: number;
1450
+ value: number;
952
1451
  /**
953
- * Four-digit number representing the card's expiration year.
1452
+ * Price per unit
954
1453
  */
955
- exp_year: number;
1454
+ price: number;
956
1455
  /**
957
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
1456
+ * Total cost
958
1457
  */
959
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
1458
+ total: number;
960
1459
  };
961
- export type TokenCreateInput = {
1460
+ export type UserCreateInput = {
962
1461
  /**
963
- * Human readable access token name.
1462
+ * User email address.
964
1463
  */
965
- name: string;
1464
+ email: string;
966
1465
  /**
967
- * Role assumed by the token.
1466
+ * User first name.
968
1467
  */
969
- role: 'Administrator' | 'User';
970
- };
971
- export type Token = {
1468
+ first_name: string;
972
1469
  /**
973
- * Human readable access token name.
1470
+ * User last name.
974
1471
  */
975
- name: string;
1472
+ last_name: string;
976
1473
  /**
977
- * Role assumed by the token.
1474
+ * Generated unique invite code.
978
1475
  */
979
- role: 'Administrator' | 'User';
1476
+ code: string;
980
1477
  /**
981
- * Generated unique identifier of the access token.
982
- */
983
- id?: string;
984
- /**
985
- * Access token secret. Unmasked only during creation.
986
- */
987
- secret?: string;
988
- /**
989
- * Creation date of the access token. ISO 8601 date string in UTC timezone
990
- */
991
- date_created: string;
992
- };
993
- export type TokenUpdateInput = {
994
- /**
995
- * Human readable access token name.
996
- */
997
- name?: string;
998
- /**
999
- * Role assumed by the token.
1000
- */
1001
- role?: 'Administrator' | 'User';
1002
- };
1003
- export type Usage = {
1004
- /**
1005
- * Hour of the usage
1006
- */
1007
- hour?: string;
1008
- /**
1009
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1010
- */
1011
- cluster_id: string;
1012
- /**
1013
- * Tier of the cluster.
1014
- */
1015
- cluster_tier: '';
1016
- /**
1017
- * The product the usage is associated with
1018
- */
1019
- product: 'cfke_infra_compute' | 'cfke_nodes' | 'cfke_controlplane';
1020
- /**
1021
- * Name of the Kubernetes node
1022
- */
1023
- node_name: string;
1024
- /**
1025
- * SKU of the Kubernetes node
1026
- */
1027
- sku: string;
1028
- cpu: number | '';
1029
- price: number | '';
1030
- value: number | '';
1031
- total: number | '';
1032
- };
1033
- export type UserCreateInput = {
1034
- /**
1035
- * User email address.
1036
- */
1037
- email: string;
1038
- /**
1039
- * User first name.
1040
- */
1041
- first_name: string;
1042
- /**
1043
- * User last name.
1044
- */
1045
- last_name: string;
1046
- /**
1047
- * Generated unique invite code.
1048
- */
1049
- code: string;
1050
- /**
1051
- * User password. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.
1478
+ * User password. Must be at least 8 characters long.
1052
1479
  */
1053
1480
  password: string;
1054
- /**
1055
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1056
- */
1057
- status?: 'active' | 'inactive';
1058
- /**
1059
- * User role. Can be 'Administrator', 'User'.
1060
- */
1061
- role?: 'Administrator' | 'User';
1062
1481
  };
1063
1482
  export type User = {
1064
1483
  /**
@@ -1089,16 +1508,6 @@ export type User = {
1089
1508
  * Creation date of the user. ISO 8601 date string in UTC timezone
1090
1509
  */
1091
1510
  date_created: string;
1092
- cluster_permissions?: Array<{
1093
- /**
1094
- * Unique identifier of the cluster. UUID v4 string in canonical form
1095
- */
1096
- cluster_id: string;
1097
- /**
1098
- * User permissions to access the cluster. Can be `readwrite` or `readonly`.
1099
- */
1100
- permissions: 'readwrite' | 'readonly';
1101
- }>;
1102
1511
  };
1103
1512
  export type UserUpdateInput = {
1104
1513
  /**
@@ -1122,632 +1531,658 @@ export type UserUpdateInput = {
1122
1531
  */
1123
1532
  status?: 'active' | 'inactive';
1124
1533
  };
1125
- export type GetUsageData = {
1534
+ export type ListUserOrganizationsData = {
1535
+ body?: never;
1536
+ path: {
1537
+ /**
1538
+ * User email address.
1539
+ */
1540
+ email: string;
1541
+ };
1542
+ query?: never;
1543
+ url: '/users/organizations/{email}';
1544
+ };
1545
+ export type ListUserOrganizationsResponses = {
1546
+ /**
1547
+ * An array of organizations the user belongs to.
1548
+ */
1549
+ 200: Array<{
1550
+ /**
1551
+ * Unique identifier of the organization. UUID v4 string in canonical form
1552
+ */
1553
+ realm?: string;
1554
+ /**
1555
+ * Human-readable name of the organization
1556
+ */
1557
+ displayName?: string;
1558
+ }>;
1559
+ };
1560
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1561
+ export type ListUsersData = {
1126
1562
  body?: never;
1127
1563
  path?: never;
1128
1564
  query?: never;
1129
- url: '/billing/usage';
1565
+ url: '/users';
1130
1566
  };
1131
- export type GetUsageErrors = {
1567
+ export type ListUsersErrors = {
1132
1568
  /**
1133
1569
  * Not authenticated
1134
1570
  */
1135
1571
  401: unknown;
1136
1572
  };
1137
- export type GetUsageResponses = {
1573
+ export type ListUsersResponses = {
1138
1574
  /**
1139
- * An array of usage records.
1575
+ * An array of users
1140
1576
  */
1141
- 200: Array<Usage>;
1577
+ 200: Array<User>;
1142
1578
  };
1143
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
1144
- export type GetBalanceData = {
1145
- body?: never;
1579
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1580
+ export type CreateUserData = {
1581
+ body: UserCreateInput;
1146
1582
  path?: never;
1147
1583
  query?: never;
1148
- url: '/billing/balance';
1584
+ url: '/users';
1149
1585
  };
1150
- export type GetBalanceResponses = {
1586
+ export type CreateUserResponses = {
1151
1587
  /**
1152
- * Current balance of the organization in USD as a floating-point number.
1588
+ * Successfully created. Returns created user details.
1153
1589
  */
1154
- 200: number;
1590
+ 200: User;
1155
1591
  };
1156
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
1157
- export type GetPaymentMethodData = {
1592
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1593
+ export type DeleteUserData = {
1158
1594
  body?: never;
1159
- path?: never;
1595
+ path: {
1596
+ /**
1597
+ * Unique user identifier. UUID v4 string in canonical form
1598
+ */
1599
+ user_id: string;
1600
+ };
1160
1601
  query?: never;
1161
- url: '/billing/payment-method';
1602
+ url: '/users/{user_id}';
1162
1603
  };
1163
- export type GetPaymentMethodErrors = {
1604
+ export type DeleteUserErrors = {
1164
1605
  /**
1165
- * Returns 404 Not Found if the organization does not have a payment method set up.
1606
+ * Deleting own user is not allowed. Delete your organization instead.
1166
1607
  */
1167
- 404: unknown;
1168
- };
1169
- export type GetPaymentMethodResponses = {
1608
+ 400: unknown;
1170
1609
  /**
1171
- * Redacted payment card information.
1610
+ * Not authenticated
1172
1611
  */
1173
- 200: PaymentMethod;
1174
- };
1175
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1176
- export type GetPaymentMethodSecretData = {
1177
- body?: never;
1178
- path?: never;
1179
- query?: never;
1180
- url: '/billing/payment-method';
1612
+ 401: unknown;
1181
1613
  };
1182
- export type GetPaymentMethodSecretResponses = {
1614
+ export type DeleteUserResponses = {
1183
1615
  /**
1184
- * 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.
1185
- *
1616
+ * User profile information
1186
1617
  */
1187
- 200: {
1188
- /**
1189
- * The client secret.
1190
- */
1191
- id?: string;
1192
- };
1618
+ 200: User;
1193
1619
  };
1194
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1195
- export type ListInvoicesData = {
1620
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1621
+ export type GetUserData = {
1196
1622
  body?: never;
1197
- path?: never;
1198
- query: {
1199
- /**
1200
- * Start date for the usage. Date of oldest data point to retrieve.
1201
- */
1202
- start_date: string;
1623
+ path: {
1203
1624
  /**
1204
- * End date for the usage. Date of newest data point to retrieve.
1625
+ * Unique user identifier. UUID v4 string in canonical form
1205
1626
  */
1206
- end_date: string;
1627
+ user_id: string;
1207
1628
  };
1208
- url: '/billing/invoices';
1629
+ query?: never;
1630
+ url: '/users/{user_id}';
1209
1631
  };
1210
- export type ListInvoicesErrors = {
1632
+ export type GetUserErrors = {
1211
1633
  /**
1212
1634
  * Not authenticated
1213
1635
  */
1214
1636
  401: unknown;
1215
1637
  };
1216
- export type ListInvoicesResponses = {
1638
+ export type GetUserResponses = {
1217
1639
  /**
1218
- * An array of usage records.
1640
+ * User profile information
1219
1641
  */
1220
- 200: Array<Invoice>;
1642
+ 200: User;
1221
1643
  };
1222
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1223
- export type GetInvoiceData = {
1224
- body?: never;
1644
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1645
+ export type UpdateUserData = {
1646
+ body: UserUpdateInput;
1225
1647
  path: {
1226
1648
  /**
1227
- * Unique invoice identifier. UUID v4 string in canonical form
1649
+ * Unique user identifier. UUID v4 string in canonical form
1228
1650
  */
1229
- id: string;
1651
+ user_id: string;
1230
1652
  };
1231
1653
  query?: never;
1232
- url: '/billing/invoices/{id}';
1654
+ url: '/users/{user_id}';
1233
1655
  };
1234
- export type GetInvoiceResponses = {
1656
+ export type UpdateUserResponses = {
1235
1657
  /**
1236
- * Returns a single Invoice HTML representation under `html` property.
1658
+ * Successfully created. Returns created user details.
1237
1659
  */
1238
- 200: {
1239
- html?: string;
1240
- };
1660
+ 200: User;
1241
1661
  };
1242
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
1243
- export type ListFleetsData = {
1662
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1663
+ export type ListTokensData = {
1244
1664
  body?: never;
1245
- path: {
1246
- /**
1247
- * Unique identifier of the cluster. UUID v4 string in canonical form
1248
- */
1249
- cluster_id: string;
1250
- };
1665
+ path?: never;
1251
1666
  query?: never;
1252
- url: '/clusters/{cluster_id}/fleets';
1667
+ url: '/tokens';
1253
1668
  };
1254
- export type ListFleetsErrors = {
1669
+ export type ListTokensErrors = {
1255
1670
  /**
1256
1671
  * Not authenticated
1257
1672
  */
1258
1673
  401: unknown;
1259
1674
  };
1260
- export type ListFleetsResponses = {
1675
+ export type ListTokensResponses = {
1261
1676
  /**
1262
- * An array of fleets
1677
+ * Returns a list of access token details with masked secrets.
1263
1678
  */
1264
- 200: Array<Fleet>;
1679
+ 200: Array<Token>;
1265
1680
  };
1266
- export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
1267
- export type CreateFleetData = {
1268
- body: FleetCreateInput;
1269
- path: {
1270
- /**
1271
- * Unique identifier of the cluster. UUID v4 string in canonical form
1272
- */
1273
- cluster_id: string;
1274
- };
1681
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1682
+ export type CreateTokenData = {
1683
+ body: TokenCreateInput;
1684
+ path?: never;
1275
1685
  query?: never;
1276
- url: '/clusters/{cluster_id}/fleets';
1686
+ url: '/tokens';
1277
1687
  };
1278
- export type CreateFleetErrors = {
1688
+ export type CreateTokenErrors = {
1279
1689
  /**
1280
- * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1690
+ * Not authenticated
1281
1691
  */
1282
- 402: string;
1692
+ 401: unknown;
1283
1693
  };
1284
- export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1285
- export type CreateFleetResponses = {
1694
+ export type CreateTokenResponses = {
1286
1695
  /**
1287
- * Successfully created. Returns created Fleet ID.
1696
+ * Successfully created. Returns created token details with unmasked/raw secret.
1288
1697
  */
1289
- 200: string;
1698
+ 200: Token;
1290
1699
  };
1291
- export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
1292
- export type DeleteFleetData = {
1700
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1701
+ export type DeleteTokenData = {
1293
1702
  body?: never;
1294
1703
  path: {
1295
1704
  /**
1296
- * Unique identifier of the cluster. UUID v4 string in canonical form
1297
- */
1298
- cluster_id: string;
1299
- /**
1300
- * Unique identifier of the fleet. UUID v4 string in canonical form
1705
+ * Generated unique identifier of the access token.
1301
1706
  */
1302
- fleet_name: string;
1707
+ token_id: string;
1303
1708
  };
1304
1709
  query?: never;
1305
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1710
+ url: '/tokens/{token_id}';
1306
1711
  };
1307
- export type DeleteFleetResponses = {
1712
+ export type DeleteTokenResponses = {
1308
1713
  /**
1309
1714
  * Successfully deleted.
1310
1715
  */
1311
- 200: string;
1716
+ 200: unknown;
1312
1717
  };
1313
- export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
1314
- export type GetFleetData = {
1718
+ export type GetTokenData = {
1315
1719
  body?: never;
1316
1720
  path: {
1317
1721
  /**
1318
- * Unique identifier of the cluster. UUID v4 string in canonical form
1319
- */
1320
- cluster_id: string;
1321
- /**
1322
- * Unique identifier of the fleet. UUID v4 string in canonical form
1722
+ * Generated unique identifier of the access token.
1323
1723
  */
1324
- fleet_name: string;
1724
+ token_id: string;
1325
1725
  };
1326
1726
  query?: never;
1327
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1727
+ url: '/tokens/{token_id}';
1328
1728
  };
1329
- export type GetFleetResponses = {
1729
+ export type GetTokenErrors = {
1330
1730
  /**
1331
- * Returns a single object containing fleet details.
1731
+ * Not authenticated
1332
1732
  */
1333
- 200: Fleet;
1733
+ 401: unknown;
1334
1734
  };
1335
- export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
1336
- export type UpdateFleetData = {
1337
- body: FleetUpdateInput;
1735
+ export type GetTokenResponses = {
1736
+ /**
1737
+ * Returns access token details with masked secret.
1738
+ */
1739
+ 200: Token;
1740
+ };
1741
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1742
+ export type UpdateTokenData = {
1743
+ body: TokenUpdateInput;
1338
1744
  path: {
1339
1745
  /**
1340
- * Unique identifier of the cluster. UUID v4 string in canonical form
1341
- */
1342
- cluster_id: string;
1343
- /**
1344
- * Unique identifier of the fleet. UUID v4 string in canonical form
1746
+ * Generated unique identifier of the access token.
1345
1747
  */
1346
- fleet_name: string;
1748
+ token_id: string;
1347
1749
  };
1348
1750
  query?: never;
1349
- url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1751
+ url: '/tokens/{token_id}';
1350
1752
  };
1351
- export type UpdateFleetErrors = {
1753
+ export type UpdateTokenErrors = {
1352
1754
  /**
1353
- * Organization must have a valid payment method configured to access this endpoint.
1755
+ * Not authenticated
1354
1756
  */
1355
- 402: string;
1757
+ 401: unknown;
1356
1758
  };
1357
- export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1358
- export type UpdateFleetResponses = {
1759
+ export type UpdateTokenResponses = {
1359
1760
  /**
1360
- * Successfully updated.
1761
+ * Successfully updated. Returns updated token details with masked secret.
1361
1762
  */
1362
- 200: string;
1763
+ 200: Token;
1363
1764
  };
1364
- export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1365
- export type QueryClusterData = {
1765
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1766
+ export type RegenerateTokenData = {
1366
1767
  body?: never;
1367
1768
  path: {
1368
1769
  /**
1369
- * Unique identifier of the cluster. UUID v4 string in canonical form
1770
+ * Generated unique identifier of the access token.
1370
1771
  */
1371
- cluster_id: string;
1772
+ token_id: string;
1372
1773
  };
1373
1774
  query?: never;
1374
- url: '/clusters/{cluster_id}/query';
1775
+ url: '/tokens/{token_id}/secret';
1375
1776
  };
1376
- export type QueryClusterErrors = {
1777
+ export type RegenerateTokenErrors = {
1377
1778
  /**
1378
1779
  * Not authenticated
1379
1780
  */
1380
1781
  401: unknown;
1381
1782
  };
1382
- export type QueryClusterResponses = {
1783
+ export type RegenerateTokenResponses = {
1383
1784
  /**
1384
- * Kubernetes API response
1785
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1385
1786
  */
1386
- 200: unknown;
1787
+ 200: Token;
1387
1788
  };
1388
- export type ListClustersData = {
1789
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1790
+ export type ListTicketsData = {
1389
1791
  body?: never;
1390
1792
  path?: never;
1391
1793
  query?: never;
1392
- url: '/clusters';
1393
- };
1394
- export type ListClustersErrors = {
1395
- /**
1396
- * Not authenticated
1397
- */
1398
- 401: unknown;
1794
+ url: '/tickets';
1399
1795
  };
1400
- export type ListClustersResponses = {
1796
+ export type ListTicketsResponses = {
1401
1797
  /**
1402
- * An array of clusters
1798
+ * An array of tickets for the organization, newest first.
1403
1799
  */
1404
- 200: Array<Cluster>;
1800
+ 200: Array<Ticket>;
1405
1801
  };
1406
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1407
- export type CreateClusterData = {
1408
- body: ClusterCreateInput;
1802
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1803
+ export type CreateTicketData = {
1804
+ body: {
1805
+ /**
1806
+ * JSON-encoded TicketCreateInput.
1807
+ */
1808
+ payload?: string;
1809
+ attachments?: Array<Blob | File>;
1810
+ };
1409
1811
  path?: never;
1410
1812
  query?: never;
1411
- url: '/clusters';
1412
- };
1413
- export type CreateClusterErrors = {
1414
- /**
1415
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1416
- */
1417
- 402: string;
1813
+ url: '/tickets';
1418
1814
  };
1419
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1420
- export type CreateClusterResponses = {
1815
+ export type CreateTicketResponses = {
1421
1816
  /**
1422
- * Successfully created. Returns created Cluster ID.
1817
+ * Ticket created.
1423
1818
  */
1424
- 200: string;
1819
+ 200: Ticket;
1425
1820
  };
1426
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1427
- export type DeleteClusterData = {
1821
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1822
+ export type CloseTicketData = {
1428
1823
  body?: never;
1429
1824
  path: {
1430
- /**
1431
- * Unique identifier of the cluster. UUID v4 string in canonical form
1432
- */
1433
- cluster_id: string;
1825
+ ticket_id: string;
1434
1826
  };
1435
1827
  query?: never;
1436
- url: '/clusters/{cluster_id}';
1828
+ url: '/tickets/{ticket_id}';
1437
1829
  };
1438
- export type DeleteClusterResponses = {
1830
+ export type CloseTicketResponses = {
1439
1831
  /**
1440
- * Successfully deleted.
1832
+ * Ticket closed.
1441
1833
  */
1442
- 200: string;
1834
+ 200: Ticket;
1443
1835
  };
1444
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1445
- export type GetClusterData = {
1836
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1837
+ export type GetTicketData = {
1446
1838
  body?: never;
1447
1839
  path: {
1448
- /**
1449
- * Unique identifier of the cluster. UUID v4 string in canonical form
1450
- */
1451
- cluster_id: string;
1840
+ ticket_id: string;
1452
1841
  };
1453
1842
  query?: never;
1454
- url: '/clusters/{cluster_id}';
1843
+ url: '/tickets/{ticket_id}';
1455
1844
  };
1456
- export type GetClusterResponses = {
1845
+ export type GetTicketResponses = {
1457
1846
  /**
1458
- * Returns a single object containing cluster details.
1847
+ * Ticket with messages (internal notes excluded).
1459
1848
  */
1460
- 200: Cluster;
1849
+ 200: Ticket;
1461
1850
  };
1462
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1463
- export type UpdateClusterData = {
1464
- body: ClusterUpdateInput;
1465
- path: {
1851
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
1852
+ export type ReplyTicketData = {
1853
+ body: {
1466
1854
  /**
1467
- * Unique identifier of the cluster. UUID v4 string in canonical form
1855
+ * JSON-encoded TicketMessageInput.
1468
1856
  */
1469
- cluster_id: string;
1857
+ payload?: string;
1858
+ attachments?: Array<Blob | File>;
1859
+ };
1860
+ path: {
1861
+ ticket_id: string;
1470
1862
  };
1471
1863
  query?: never;
1472
- url: '/clusters/{cluster_id}';
1864
+ url: '/tickets/{ticket_id}/messages';
1473
1865
  };
1474
- export type UpdateClusterResponses = {
1866
+ export type ReplyTicketErrors = {
1475
1867
  /**
1476
- * Successfully updated. Returns updated cluster details.
1868
+ * Ticket is closed. Open a new ticket instead.
1477
1869
  */
1478
- 200: Cluster;
1870
+ 409: unknown;
1479
1871
  };
1480
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1481
- export type GetJoinInformationData = {
1872
+ export type ReplyTicketResponses = {
1873
+ /**
1874
+ * Reply appended.
1875
+ */
1876
+ 200: TicketMessage;
1877
+ };
1878
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
1879
+ export type GetTicketAttachmentData = {
1482
1880
  body?: never;
1483
1881
  path: {
1484
- /**
1485
- * Unique identifier of the cluster. UUID v4 string in canonical form
1486
- */
1487
- cluster_id: string;
1882
+ ticket_id: string;
1883
+ attachment_id: string;
1488
1884
  };
1489
1885
  query?: never;
1490
- url: '/clusters/{cluster_id}/join_information';
1886
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
1491
1887
  };
1492
- export type GetJoinInformationErrors = {
1888
+ export type GetTicketAttachmentResponses = {
1889
+ /**
1890
+ * Attachment binary stream.
1891
+ */
1892
+ 200: Blob | File;
1893
+ };
1894
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
1895
+ export type ListRepositoriesData = {
1896
+ body?: never;
1897
+ path?: never;
1898
+ query?: never;
1899
+ url: '/registry';
1900
+ };
1901
+ export type ListRepositoriesErrors = {
1493
1902
  /**
1494
1903
  * Not authenticated
1495
1904
  */
1496
1905
  401: unknown;
1906
+ /**
1907
+ * Internal server error
1908
+ */
1909
+ 500: unknown;
1497
1910
  };
1498
- export type GetJoinInformationResponses = {
1911
+ export type ListRepositoriesResponses = {
1499
1912
  /**
1500
- * An object of cluster join information
1913
+ * List of repositories
1501
1914
  */
1502
- 200: Cluster;
1915
+ 200: Array<RegistryRepository>;
1503
1916
  };
1504
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1505
- export type GetInfrastructureData = {
1917
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
1918
+ export type ListTagsData = {
1506
1919
  body?: never;
1507
- path?: never;
1508
- query?: {
1509
- /**
1510
- * Version of the task definition. Currently only version 1 is supported.
1511
- */
1512
- version?: 1;
1513
- /**
1514
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
1515
- */
1516
- provider?: Array<string>;
1517
- /**
1518
- * 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/)
1519
- */
1520
- region?: Array<string>;
1521
- /**
1522
- * 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/)
1523
- */
1524
- sub_region?: Array<string>;
1525
- /**
1526
- * Limits selection of cloud regions to this list of canonical provider regions
1527
- */
1528
- csp_region?: Array<string>;
1529
- /**
1530
- * Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider
1531
- */
1532
- instance_type?: Array<string>;
1533
- /**
1534
- * 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
1535
- */
1536
- accelerator_name?: Array<string>;
1537
- /**
1538
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1539
- */
1540
- accelerator_manufacturer?: Array<string>;
1541
- /**
1542
- * 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.
1543
- */
1544
- accelerator_count_min?: number;
1545
- /**
1546
- * 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.
1547
- */
1548
- accelerator_count_max?: number;
1549
- /**
1550
- * 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
1551
- */
1552
- accelerator_memory_min?: number;
1553
- /**
1554
- * 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
1555
- */
1556
- accelerator_memory_max?: number;
1557
- /**
1558
- * Minimum amount of RAM in gibibytes (GiB)
1559
- */
1560
- memory_min?: number;
1561
- /**
1562
- * Maximum amount of RAM in gibibytes (GiB)
1563
- */
1564
- memory_max?: number;
1920
+ path: {
1565
1921
  /**
1566
- * 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.
1922
+ * Region where the repository is located
1567
1923
  */
1568
- vcpu_min?: number;
1924
+ region: string;
1569
1925
  /**
1570
- * 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.
1926
+ * Name of the repository
1571
1927
  */
1572
- vcpu_max?: number;
1928
+ repository: string;
1929
+ };
1930
+ query?: never;
1931
+ url: '/registry/{region}/{repository}';
1932
+ };
1933
+ export type ListTagsErrors = {
1934
+ /**
1935
+ * Not authenticated
1936
+ */
1937
+ 401: unknown;
1938
+ /**
1939
+ * Repository not found
1940
+ */
1941
+ 404: unknown;
1942
+ /**
1943
+ * Internal server error
1944
+ */
1945
+ 500: unknown;
1946
+ };
1947
+ export type ListTagsResponses = {
1948
+ /**
1949
+ * Repository with tags
1950
+ */
1951
+ 200: RegistryRepositoryWithTags;
1952
+ };
1953
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
1954
+ export type DeleteTagData = {
1955
+ body?: never;
1956
+ path: {
1573
1957
  /**
1574
- * Minimum total storage in GiB (attached and local)
1958
+ * Region where the repository is located
1575
1959
  */
1576
- storage_total_min?: number;
1960
+ region: string;
1577
1961
  /**
1578
- * Maximum total storage in GiB (attached and local)
1962
+ * Name of the repository
1579
1963
  */
1580
- storage_total_max?: number;
1964
+ repository: string;
1581
1965
  /**
1582
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
1966
+ * Name of the tag
1583
1967
  */
1584
- storage_local_min?: number;
1968
+ tag: string;
1969
+ };
1970
+ query?: never;
1971
+ url: '/registry/{region}/{repository}/{tag}';
1972
+ };
1973
+ export type DeleteTagErrors = {
1974
+ /**
1975
+ * Not authenticated
1976
+ */
1977
+ 401: unknown;
1978
+ /**
1979
+ * Tag not found
1980
+ */
1981
+ 404: unknown;
1982
+ /**
1983
+ * Internal server error
1984
+ */
1985
+ 500: unknown;
1986
+ };
1987
+ export type DeleteTagResponses = {
1988
+ /**
1989
+ * Tag successfully deleted
1990
+ */
1991
+ 200: unknown;
1992
+ };
1993
+ export type GetTagData = {
1994
+ body?: never;
1995
+ path: {
1585
1996
  /**
1586
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
1997
+ * Region where the repository is located
1587
1998
  */
1588
- storage_local_max?: number;
1999
+ region: string;
1589
2000
  /**
1590
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
2001
+ * Name of the repository
1591
2002
  */
1592
- price_min?: number;
2003
+ repository: string;
1593
2004
  /**
1594
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
2005
+ * Name of the tag
1595
2006
  */
1596
- price_max?: number;
2007
+ tag: string;
1597
2008
  };
1598
- url: '/infrastructure';
2009
+ query?: never;
2010
+ url: '/registry/{region}/{repository}/{tag}';
1599
2011
  };
1600
- export type GetInfrastructureErrors = {
2012
+ export type GetTagErrors = {
2013
+ /**
2014
+ * Not authenticated
2015
+ */
2016
+ 401: unknown;
2017
+ /**
2018
+ * Tag not found
2019
+ */
2020
+ 404: unknown;
1601
2021
  /**
1602
- * Returns a validation error if any of the search parameters in the request are invalid
2022
+ * Internal server error
1603
2023
  */
1604
- 400: Blob | File;
2024
+ 500: unknown;
1605
2025
  };
1606
- export type GetInfrastructureError = GetInfrastructureErrors[keyof GetInfrastructureErrors];
1607
- export type GetInfrastructureResponses = {
2026
+ export type GetTagResponses = {
1608
2027
  /**
1609
- * An array of instances returned by the search
2028
+ * Tag details
1610
2029
  */
1611
- 200: Array<InfrastructureInstance>;
2030
+ 200: RegistryTag;
1612
2031
  };
1613
- export type GetInfrastructureResponse = GetInfrastructureResponses[keyof GetInfrastructureResponses];
1614
- export type GetFacetsData = {
2032
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2033
+ export type GetOrganizationData = {
1615
2034
  body?: never;
1616
2035
  path?: never;
1617
2036
  query?: never;
1618
- url: '/infrastructure/facets';
2037
+ url: '/organization';
1619
2038
  };
1620
- export type GetFacetsResponses = {
2039
+ export type GetOrganizationResponses = {
1621
2040
  /**
1622
- * Calculates search facets of the infrastructure catalog
2041
+ * Returns a single object containing organization details.
1623
2042
  */
1624
- 200: Array<{
1625
- /**
1626
- * Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)
1627
- */
1628
- provider?: Array<string>;
1629
- /**
1630
- * 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/)
1631
- */
1632
- region?: Array<string>;
1633
- /**
1634
- * 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/)
1635
- */
1636
- sub_region?: Array<string>;
1637
- /**
1638
- * Limits selection of cloud regions to this list of canonical provider regions
1639
- */
1640
- csp_region?: Array<string>;
1641
- /**
1642
- * 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.
1643
- */
1644
- vcpu_min?: number;
1645
- /**
1646
- * 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.
1647
- */
1648
- vcpu_max?: number;
1649
- /**
1650
- * Minimum amount of RAM in gibibytes (GiB)
1651
- */
1652
- memory_min?: number;
1653
- /**
1654
- * Maximum amount of RAM in gibibytes (GiB)
1655
- */
1656
- memory_max?: number;
1657
- /**
1658
- * Minimum volume of directly attached, block-device local storage in gibibytes (GiB)
1659
- */
1660
- storage_local_min?: number;
1661
- /**
1662
- * Maximum volume of directly attached, block-device local storage in gibibytes (GiB)
1663
- */
1664
- storage_local_max?: number;
1665
- /**
1666
- * 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
1667
- */
1668
- accelerator_name?: Array<string>;
1669
- /**
1670
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1671
- */
1672
- accelerator_manufacturer?: Array<string>;
1673
- /**
1674
- * 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.
1675
- */
1676
- accelerator_count_min?: number;
1677
- /**
1678
- * 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.
1679
- */
1680
- accelerator_count_max?: number;
1681
- /**
1682
- * 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
1683
- */
1684
- accelerator_memory_min?: number;
1685
- /**
1686
- * 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
1687
- */
1688
- accelerator_memory_max?: number;
1689
- /**
1690
- * Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1691
- */
1692
- price_min?: number;
1693
- /**
1694
- * Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.
1695
- */
1696
- price_max?: number;
1697
- /**
1698
- * Structured array of regions and sub-regions
1699
- */
1700
- regions_struct?: Array<{
1701
- /**
1702
- * 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/)
1703
- */
1704
- region?: string;
1705
- sub_region?: Array<string>;
1706
- }>;
1707
- /**
1708
- * Structured array of regions and sub-regions
1709
- */
1710
- accelerators_struct?: Array<{
1711
- /**
1712
- * List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer
1713
- */
1714
- accelerator_manufacturer?: string;
1715
- accelerator_name?: Array<string>;
1716
- }>;
1717
- /**
1718
- * Total number of instances in the catalog
1719
- */
1720
- count_total?: number;
1721
- /**
1722
- * Total number of instances in the catalog with at least 1 accelerator
1723
- */
1724
- count_accelerators?: number;
1725
- /**
1726
- * Total number of unique instances types in the catalog
1727
- */
1728
- count_instance_types?: number;
2043
+ 200: Organization;
2044
+ };
2045
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2046
+ export type CreateOrganizationData = {
2047
+ body: OrganizationCreateInput;
2048
+ path?: never;
2049
+ query?: never;
2050
+ url: '/organization';
2051
+ };
2052
+ export type CreateOrganizationResponses = {
2053
+ /**
2054
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2055
+ *
2056
+ */
2057
+ 200: OrganizationCreateOutput;
2058
+ };
2059
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2060
+ export type GetBasicPriceConsentData = {
2061
+ body?: never;
2062
+ path?: never;
2063
+ query?: never;
2064
+ url: '/organization/basic-price-consent';
2065
+ };
2066
+ export type GetBasicPriceConsentResponses = {
2067
+ /**
2068
+ * Returns the current consent status.
2069
+ */
2070
+ 200: BasicPriceConsent;
2071
+ };
2072
+ export type GetBasicPriceConsentResponse = GetBasicPriceConsentResponses[keyof GetBasicPriceConsentResponses];
2073
+ export type SetBasicPriceConsentData = {
2074
+ body: BasicPriceConsentInput;
2075
+ path?: never;
2076
+ query?: never;
2077
+ url: '/organization/basic-price-consent';
2078
+ };
2079
+ export type SetBasicPriceConsentErrors = {
2080
+ /**
2081
+ * The authenticated principal has no email address (e.g. a service account) and cannot record this decision.
2082
+ *
2083
+ */
2084
+ 401: unknown;
2085
+ /**
2086
+ * The consent flow does not apply to this organization.
2087
+ */
2088
+ 409: unknown;
2089
+ };
2090
+ export type SetBasicPriceConsentResponses = {
2091
+ /**
2092
+ * Decision recorded. Returns the updated consent status.
2093
+ */
2094
+ 200: BasicPriceConsent;
2095
+ };
2096
+ export type SetBasicPriceConsentResponse = SetBasicPriceConsentResponses[keyof SetBasicPriceConsentResponses];
2097
+ export type PostMcpData = {
2098
+ /**
2099
+ * JSON-RPC 2.0 request payload
2100
+ */
2101
+ body: {
2102
+ jsonrpc?: string;
2103
+ method?: string;
2104
+ id?: string | number;
1729
2105
  /**
1730
- * Total number of unique instances types in the catalog with at least 1 accelerator
2106
+ * Method-specific parameters
1731
2107
  */
1732
- count_accelerators_instance_types?: number;
1733
- }>;
2108
+ params?: {
2109
+ [key: string]: unknown;
2110
+ };
2111
+ };
2112
+ path?: never;
2113
+ query?: never;
2114
+ url: '/mcp';
1734
2115
  };
1735
- export type GetFacetsResponse = GetFacetsResponses[keyof GetFacetsResponses];
1736
- export type GetRegionsData = {
2116
+ export type PostMcpErrors = {
2117
+ /**
2118
+ * Not authenticated
2119
+ */
2120
+ 401: unknown;
2121
+ };
2122
+ export type PostMcpResponses = {
2123
+ /**
2124
+ * JSON-RPC 2.0 success or error response
2125
+ */
2126
+ 200: {
2127
+ jsonrpc?: string;
2128
+ id?: string | number;
2129
+ result?: {
2130
+ [key: string]: unknown;
2131
+ };
2132
+ error?: {
2133
+ code?: number;
2134
+ message?: string;
2135
+ };
2136
+ };
2137
+ };
2138
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2139
+ export type ListMarketplaceChartsData = {
1737
2140
  body?: never;
1738
2141
  path?: never;
1739
2142
  query?: never;
1740
- url: '/infrastructure/regions';
2143
+ url: '/marketplace';
1741
2144
  };
1742
- export type GetRegionsResponses = {
2145
+ export type ListMarketplaceChartsErrors = {
1743
2146
  /**
1744
- * Available Cloudfleet regions and Kubernetes versions.
2147
+ * Not authenticated
1745
2148
  */
1746
- 200: {
1747
- [key: string]: unknown;
2149
+ 401: unknown;
2150
+ };
2151
+ export type ListMarketplaceChartsResponses = {
2152
+ /**
2153
+ * An array of chart listings in the marketplace.
2154
+ */
2155
+ 200: Array<MarketplaceListing>;
2156
+ };
2157
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2158
+ export type GetMarketplaceChartFilesData = {
2159
+ body?: never;
2160
+ path: {
2161
+ /**
2162
+ * Name of the chart in the marketplace.
2163
+ */
2164
+ chart_name: string;
2165
+ /**
2166
+ * 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).
2167
+ */
2168
+ version_channel: string;
1748
2169
  };
2170
+ query?: never;
2171
+ url: '/marketplace/{chart_name}/files/{version_channel}';
1749
2172
  };
1750
- export type GetRegionsResponse = GetRegionsResponses[keyof GetRegionsResponses];
2173
+ export type GetMarketplaceChartFilesErrors = {
2174
+ /**
2175
+ * Chart not found or no version matches the channel
2176
+ */
2177
+ 404: unknown;
2178
+ };
2179
+ export type GetMarketplaceChartFilesResponses = {
2180
+ /**
2181
+ * Returns an object containing the chart files for the latest matching version.
2182
+ */
2183
+ 200: MarketplaceListingFiles;
2184
+ };
2185
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
1751
2186
  export type ListInvitesData = {
1752
2187
  body?: never;
1753
2188
  path?: never;
@@ -1768,12 +2203,7 @@ export type ListInvitesResponses = {
1768
2203
  };
1769
2204
  export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1770
2205
  export type CreateInviteData = {
1771
- body: {
1772
- /**
1773
- * User email address
1774
- */
1775
- email?: string;
1776
- };
2206
+ body: InviteCreateInput;
1777
2207
  path?: never;
1778
2208
  query?: never;
1779
2209
  url: '/invites';
@@ -1798,9 +2228,18 @@ export type GetInviteData = {
1798
2228
  };
1799
2229
  export type GetInviteResponses = {
1800
2230
  /**
1801
- * Returns a single object containing invite details.
2231
+ * The invitation code is valid. Returns the invited email and organization.
1802
2232
  */
1803
- 200: Invite;
2233
+ 200: {
2234
+ /**
2235
+ * Email address the invite was issued to.
2236
+ */
2237
+ email?: string;
2238
+ /**
2239
+ * Identifier of the organization the invite grants access to.
2240
+ */
2241
+ organization_id?: string;
2242
+ };
1804
2243
  };
1805
2244
  export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1806
2245
  export type DeleteInviteData = {
@@ -1820,347 +2259,654 @@ export type DeleteInviteResponses = {
1820
2259
  */
1821
2260
  200: unknown;
1822
2261
  };
1823
- export type GetOrganizationData = {
2262
+ export type QueryClusterData = {
1824
2263
  body?: never;
1825
- path?: never;
2264
+ path: {
2265
+ /**
2266
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2267
+ */
2268
+ cluster_id: string;
2269
+ };
1826
2270
  query?: never;
1827
- url: '/organization';
2271
+ url: '/clusters/{cluster_id}/query';
1828
2272
  };
1829
- export type GetOrganizationResponses = {
2273
+ export type QueryClusterErrors = {
1830
2274
  /**
1831
- * Returns a single object containing organization details.
2275
+ * Not authenticated
1832
2276
  */
1833
- 200: Organization;
2277
+ 401: unknown;
1834
2278
  };
1835
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1836
- export type CreateOrganizationData = {
1837
- body: OrganizationCreateInput;
2279
+ export type QueryClusterResponses = {
2280
+ /**
2281
+ * Kubernetes API response
2282
+ */
2283
+ 200: unknown;
2284
+ };
2285
+ export type ListFleetsData = {
2286
+ body?: never;
2287
+ path: {
2288
+ /**
2289
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2290
+ */
2291
+ cluster_id: string;
2292
+ };
2293
+ query?: never;
2294
+ url: '/clusters/{cluster_id}/fleets';
2295
+ };
2296
+ export type ListFleetsErrors = {
2297
+ /**
2298
+ * Not authenticated
2299
+ */
2300
+ 401: unknown;
2301
+ };
2302
+ export type ListFleetsResponses = {
2303
+ /**
2304
+ * An array of fleets
2305
+ */
2306
+ 200: Array<Fleet>;
2307
+ };
2308
+ export type ListFleetsResponse = ListFleetsResponses[keyof ListFleetsResponses];
2309
+ export type CreateFleetData = {
2310
+ body: FleetCreateInput;
2311
+ path: {
2312
+ /**
2313
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2314
+ */
2315
+ cluster_id: string;
2316
+ };
2317
+ query?: never;
2318
+ url: '/clusters/{cluster_id}/fleets';
2319
+ };
2320
+ export type CreateFleetErrors = {
2321
+ /**
2322
+ * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
2323
+ */
2324
+ 402: string;
2325
+ /**
2326
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2327
+ */
2328
+ 409: string;
2329
+ };
2330
+ export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
2331
+ export type CreateFleetResponses = {
2332
+ /**
2333
+ * Successfully created. Returns created Fleet ID.
2334
+ */
2335
+ 200: string;
2336
+ };
2337
+ export type CreateFleetResponse = CreateFleetResponses[keyof CreateFleetResponses];
2338
+ export type DeleteFleetData = {
2339
+ body?: never;
2340
+ path: {
2341
+ /**
2342
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2343
+ */
2344
+ cluster_id: string;
2345
+ /**
2346
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2347
+ */
2348
+ fleet_name: string;
2349
+ };
2350
+ query?: never;
2351
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2352
+ };
2353
+ export type DeleteFleetErrors = {
2354
+ /**
2355
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2356
+ */
2357
+ 409: string;
2358
+ };
2359
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
2360
+ export type DeleteFleetResponses = {
2361
+ /**
2362
+ * Successfully deleted.
2363
+ */
2364
+ 200: string;
2365
+ };
2366
+ export type DeleteFleetResponse = DeleteFleetResponses[keyof DeleteFleetResponses];
2367
+ export type GetFleetData = {
2368
+ body?: never;
2369
+ path: {
2370
+ /**
2371
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2372
+ */
2373
+ cluster_id: string;
2374
+ /**
2375
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2376
+ */
2377
+ fleet_name: string;
2378
+ };
2379
+ query?: never;
2380
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2381
+ };
2382
+ export type GetFleetResponses = {
2383
+ /**
2384
+ * Returns a single object containing fleet details.
2385
+ */
2386
+ 200: Fleet;
2387
+ };
2388
+ export type GetFleetResponse = GetFleetResponses[keyof GetFleetResponses];
2389
+ export type UpdateFleetData = {
2390
+ body: FleetUpdateInput;
2391
+ path: {
2392
+ /**
2393
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2394
+ */
2395
+ cluster_id: string;
2396
+ /**
2397
+ * Unique identifier of the fleet. UUID v4 string in canonical form
2398
+ */
2399
+ fleet_name: string;
2400
+ };
2401
+ query?: never;
2402
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}';
2403
+ };
2404
+ export type UpdateFleetErrors = {
2405
+ /**
2406
+ * Organization must have a valid payment method configured to access this endpoint.
2407
+ */
2408
+ 402: string;
2409
+ /**
2410
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2411
+ */
2412
+ 409: string;
2413
+ };
2414
+ export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
2415
+ export type UpdateFleetResponses = {
2416
+ /**
2417
+ * Successfully updated.
2418
+ */
2419
+ 200: string;
2420
+ };
2421
+ export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
2422
+ export type ListChartsData = {
2423
+ body?: never;
2424
+ path: {
2425
+ /**
2426
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2427
+ */
2428
+ cluster_id: string;
2429
+ };
2430
+ query?: never;
2431
+ url: '/clusters/{cluster_id}/charts';
2432
+ };
2433
+ export type ListChartsErrors = {
2434
+ /**
2435
+ * Not authenticated
2436
+ */
2437
+ 401: unknown;
2438
+ };
2439
+ export type ListChartsResponses = {
2440
+ /**
2441
+ * An array of charts
2442
+ */
2443
+ 200: Array<Chart>;
2444
+ };
2445
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2446
+ export type CreateChartData = {
2447
+ body: ChartCreateInput;
2448
+ path: {
2449
+ /**
2450
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2451
+ */
2452
+ cluster_id: string;
2453
+ };
2454
+ query?: never;
2455
+ url: '/clusters/{cluster_id}/charts';
2456
+ };
2457
+ export type CreateChartErrors = {
2458
+ /**
2459
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2460
+ */
2461
+ 409: string;
2462
+ };
2463
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2464
+ export type CreateChartResponses = {
2465
+ /**
2466
+ * Successfully created. Returns created Chart ID.
2467
+ */
2468
+ 200: string;
2469
+ };
2470
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2471
+ export type DeleteChartData = {
2472
+ body?: never;
2473
+ path: {
2474
+ /**
2475
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2476
+ */
2477
+ cluster_id: string;
2478
+ /**
2479
+ * Chart deployment name as the unique identifier of the chart.
2480
+ */
2481
+ chart_name: string;
2482
+ };
2483
+ query?: never;
2484
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2485
+ };
2486
+ export type DeleteChartErrors = {
2487
+ /**
2488
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2489
+ */
2490
+ 409: string;
2491
+ };
2492
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2493
+ export type DeleteChartResponses = {
2494
+ /**
2495
+ * Successfully deleted.
2496
+ */
2497
+ 200: string;
2498
+ };
2499
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2500
+ export type GetChartData = {
2501
+ body?: never;
2502
+ path: {
2503
+ /**
2504
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2505
+ */
2506
+ cluster_id: string;
2507
+ /**
2508
+ * Chart deployment name as the unique identifier of the chart.
2509
+ */
2510
+ chart_name: string;
2511
+ };
2512
+ query?: never;
2513
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2514
+ };
2515
+ export type GetChartResponses = {
2516
+ /**
2517
+ * Returns a single object containing chart details.
2518
+ */
2519
+ 200: Chart;
2520
+ };
2521
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2522
+ export type UpdateChartData = {
2523
+ body: ChartUpdateInput;
2524
+ path: {
2525
+ /**
2526
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2527
+ */
2528
+ cluster_id: string;
2529
+ /**
2530
+ * Chart deployment name as the unique identifier of the chart.
2531
+ */
2532
+ chart_name: string;
2533
+ };
2534
+ query?: never;
2535
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
2536
+ };
2537
+ export type UpdateChartErrors = {
2538
+ /**
2539
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2540
+ */
2541
+ 409: string;
2542
+ };
2543
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2544
+ export type UpdateChartResponses = {
2545
+ /**
2546
+ * Successfully updated.
2547
+ */
2548
+ 200: string;
2549
+ };
2550
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2551
+ export type ListClustersData = {
2552
+ body?: never;
1838
2553
  path?: never;
1839
2554
  query?: never;
1840
- url: '/organization';
2555
+ url: '/clusters';
1841
2556
  };
1842
- export type CreateOrganizationResponses = {
2557
+ export type ListClustersErrors = {
1843
2558
  /**
1844
- * Successfully created a new organization.
2559
+ * Not authenticated
1845
2560
  */
1846
- 200: unknown;
2561
+ 401: unknown;
2562
+ };
2563
+ export type ListClustersResponses = {
2564
+ /**
2565
+ * An array of clusters
2566
+ */
2567
+ 200: Array<Cluster>;
1847
2568
  };
1848
- export type UpdateOrganizationData = {
1849
- body: OrganizationUpdateInput;
2569
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2570
+ export type CreateClusterData = {
2571
+ body: ClusterCreateInput;
1850
2572
  path?: never;
1851
2573
  query?: never;
1852
- url: '/organization';
2574
+ url: '/clusters';
1853
2575
  };
1854
- export type UpdateOrganizationResponses = {
2576
+ export type CreateClusterErrors = {
1855
2577
  /**
1856
- * Successfully updated. Returns updated organization details.
2578
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1857
2579
  */
1858
- 200: Organization;
2580
+ 402: string;
1859
2581
  };
1860
- export type UpdateOrganizationResponse = UpdateOrganizationResponses[keyof UpdateOrganizationResponses];
1861
- export type ListTokensData = {
2582
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2583
+ export type CreateClusterResponses = {
2584
+ /**
2585
+ * Successfully created. Returns created Cluster ID.
2586
+ */
2587
+ 200: string;
2588
+ };
2589
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2590
+ export type DeleteClusterData = {
1862
2591
  body?: never;
1863
- path?: never;
2592
+ path: {
2593
+ /**
2594
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2595
+ */
2596
+ cluster_id: string;
2597
+ };
1864
2598
  query?: never;
1865
- url: '/tokens';
2599
+ url: '/clusters/{cluster_id}';
1866
2600
  };
1867
- export type ListTokensErrors = {
2601
+ export type DeleteClusterErrors = {
1868
2602
  /**
1869
- * Not authenticated
2603
+ * Cluster not found; it does not exist or has already been deleted.
1870
2604
  */
1871
- 401: unknown;
1872
- };
1873
- export type ListTokensResponses = {
2605
+ 404: unknown;
1874
2606
  /**
1875
- * Returns a list of access token details with masked secrets.
2607
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1876
2608
  */
1877
- 200: Array<Token>;
1878
- };
1879
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1880
- export type CreateTokenData = {
1881
- body: TokenCreateInput;
1882
- path?: never;
1883
- query?: never;
1884
- url: '/tokens';
1885
- };
1886
- export type CreateTokenErrors = {
2609
+ 409: string;
1887
2610
  /**
1888
- * Not authenticated
2611
+ * Transient failure tearing down the cluster; retry the request.
1889
2612
  */
1890
- 401: unknown;
2613
+ 503: unknown;
1891
2614
  };
1892
- export type CreateTokenResponses = {
2615
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2616
+ export type DeleteClusterResponses = {
1893
2617
  /**
1894
- * Successfully created. Returns created token details with unmasked/raw secret.
2618
+ * Successfully deleted. The cluster has been torn down.
1895
2619
  */
1896
- 200: Token;
2620
+ 200: string;
1897
2621
  };
1898
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1899
- export type DeleteTokenData = {
2622
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2623
+ export type GetClusterData = {
1900
2624
  body?: never;
1901
2625
  path: {
1902
2626
  /**
1903
- * Generated unique identifier of the access token.
2627
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1904
2628
  */
1905
- token_id: string;
2629
+ cluster_id: string;
1906
2630
  };
1907
2631
  query?: never;
1908
- url: '/tokens/{token_id}';
2632
+ url: '/clusters/{cluster_id}';
1909
2633
  };
1910
- export type DeleteTokenResponses = {
2634
+ export type GetClusterResponses = {
1911
2635
  /**
1912
- * Successfully deleted.
2636
+ * Returns a single object containing cluster details.
1913
2637
  */
1914
- 200: unknown;
2638
+ 200: Cluster;
1915
2639
  };
1916
- export type GetTokenData = {
1917
- body?: never;
2640
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2641
+ export type UpdateClusterData = {
2642
+ body: ClusterUpdateInput;
1918
2643
  path: {
1919
2644
  /**
1920
- * Generated unique identifier of the access token.
2645
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1921
2646
  */
1922
- token_id: string;
2647
+ cluster_id: string;
1923
2648
  };
1924
2649
  query?: never;
1925
- url: '/tokens/{token_id}';
2650
+ url: '/clusters/{cluster_id}';
1926
2651
  };
1927
- export type GetTokenErrors = {
2652
+ export type UpdateClusterErrors = {
1928
2653
  /**
1929
- * Not authenticated
2654
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
1930
2655
  */
1931
- 401: unknown;
2656
+ 409: string;
1932
2657
  };
1933
- export type GetTokenResponses = {
2658
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2659
+ export type UpdateClusterResponses = {
1934
2660
  /**
1935
- * Returns access token details with masked secret.
2661
+ * Successfully updated. Returns updated cluster details.
1936
2662
  */
1937
- 200: Token;
2663
+ 200: Cluster;
1938
2664
  };
1939
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1940
- export type UpdateTokenData = {
1941
- body: TokenUpdateInput;
2665
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2666
+ export type GetJoinInformationData = {
2667
+ body?: never;
1942
2668
  path: {
1943
2669
  /**
1944
- * Generated unique identifier of the access token.
2670
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1945
2671
  */
1946
- token_id: string;
2672
+ cluster_id: string;
1947
2673
  };
1948
2674
  query?: never;
1949
- url: '/tokens/{token_id}';
2675
+ url: '/clusters/{cluster_id}/join_information';
1950
2676
  };
1951
- export type UpdateTokenErrors = {
2677
+ export type GetJoinInformationErrors = {
1952
2678
  /**
1953
2679
  * Not authenticated
1954
2680
  */
1955
2681
  401: unknown;
2682
+ /**
2683
+ * The cluster cannot service this operation: it is still being created, or it is suspended. Retry once it is ready, or resume the cluster first.
2684
+ */
2685
+ 409: string;
1956
2686
  };
1957
- export type UpdateTokenResponses = {
2687
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2688
+ export type GetJoinInformationResponses = {
1958
2689
  /**
1959
- * Successfully updated. Returns updated token details with masked secret.
2690
+ * An object of cluster join information
1960
2691
  */
1961
- 200: Token;
2692
+ 200: ClusterJoinInformation;
1962
2693
  };
1963
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1964
- export type RegenerateTokenData = {
2694
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2695
+ export type GetUsageData = {
1965
2696
  body?: never;
1966
- path: {
2697
+ path?: never;
2698
+ query?: {
1967
2699
  /**
1968
- * Generated unique identifier of the access token.
2700
+ * 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)
1969
2701
  */
1970
- token_id: string;
2702
+ granularity?: 'hourly' | 'daily' | 'monthly';
1971
2703
  };
1972
- query?: never;
1973
- url: '/tokens/{token_id}/secret';
2704
+ url: '/billing/usage';
1974
2705
  };
1975
- export type RegenerateTokenErrors = {
2706
+ export type GetUsageErrors = {
1976
2707
  /**
1977
2708
  * Not authenticated
1978
2709
  */
1979
2710
  401: unknown;
1980
2711
  };
1981
- export type RegenerateTokenResponses = {
2712
+ export type GetUsageResponses = {
1982
2713
  /**
1983
- * Successfully updated. Returns updated token details with unmasked / raw secret.
2714
+ * Usage data with facets for filtering
1984
2715
  */
1985
- 200: Token;
2716
+ 200: UsageResponse;
1986
2717
  };
1987
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1988
- export type ListUserOrganizationsData = {
2718
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2719
+ export type GetPaymentMethodSecretData = {
1989
2720
  body?: never;
1990
- path: {
1991
- /**
1992
- * User email address.
1993
- */
1994
- email: string;
1995
- };
2721
+ path?: never;
1996
2722
  query?: never;
1997
- url: '/users/organizations/{email}';
2723
+ url: '/billing/payment-method';
1998
2724
  };
1999
- export type ListUserOrganizationsResponses = {
2725
+ export type GetPaymentMethodSecretResponses = {
2000
2726
  /**
2001
- * An array of organizations the user belongs to.
2727
+ * 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.
2728
+ *
2002
2729
  */
2003
- 200: Array<{
2004
- /**
2005
- * Unique identifier of the organization. UUID v4 string in canonical form
2006
- */
2007
- realm?: string;
2730
+ 200: {
2008
2731
  /**
2009
- * Human-readable name of the organization
2732
+ * The client secret.
2010
2733
  */
2011
- displayName?: string;
2012
- }>;
2734
+ id?: string;
2735
+ };
2013
2736
  };
2014
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
2015
- export type ListUsersData = {
2737
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2738
+ export type ListPaymentMethodsData = {
2016
2739
  body?: never;
2017
2740
  path?: never;
2018
2741
  query?: never;
2019
- url: '/users';
2742
+ url: '/billing/payment-methods';
2020
2743
  };
2021
- export type ListUsersErrors = {
2744
+ export type ListPaymentMethodsErrors = {
2022
2745
  /**
2023
2746
  * Not authenticated
2024
2747
  */
2025
2748
  401: unknown;
2026
2749
  };
2027
- export type ListUsersResponses = {
2750
+ export type ListPaymentMethodsResponses = {
2028
2751
  /**
2029
- * An array of users
2752
+ * An array of payment methods.
2030
2753
  */
2031
- 200: Array<User>;
2754
+ 200: Array<PaymentMethod>;
2032
2755
  };
2033
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
2034
- export type CreateUserData = {
2035
- body: UserCreateInput;
2036
- path?: never;
2756
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2757
+ export type SetDefaultPaymentMethodData = {
2758
+ body?: never;
2759
+ path: {
2760
+ /**
2761
+ * Stripe payment method identifier.
2762
+ */
2763
+ paymentMethodId: string;
2764
+ };
2037
2765
  query?: never;
2038
- url: '/users';
2766
+ url: '/billing/payment-methods/{paymentMethodId}/default';
2039
2767
  };
2040
- export type CreateUserResponses = {
2768
+ export type SetDefaultPaymentMethodErrors = {
2041
2769
  /**
2042
- * Successfully created. Returns created user details.
2770
+ * The bank transfer payment method cannot be set as the default.
2043
2771
  */
2044
- 200: User;
2772
+ 400: unknown;
2773
+ /**
2774
+ * Not authenticated
2775
+ */
2776
+ 401: unknown;
2777
+ /**
2778
+ * Payment method not found.
2779
+ */
2780
+ 404: unknown;
2045
2781
  };
2046
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
2047
- export type DeleteUserData = {
2782
+ export type SetDefaultPaymentMethodResponses = {
2783
+ /**
2784
+ * Default payment method updated.
2785
+ */
2786
+ 204: void;
2787
+ };
2788
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2789
+ export type DeletePaymentMethodData = {
2048
2790
  body?: never;
2049
2791
  path: {
2050
2792
  /**
2051
- * Unique user identifier. UUID v4 string in canonical form
2793
+ * Stripe payment method identifier.
2052
2794
  */
2053
- user_id: string;
2795
+ paymentMethodId: string;
2054
2796
  };
2055
2797
  query?: never;
2056
- url: '/users/{user_id}';
2798
+ url: '/billing/payment-methods/{paymentMethodId}';
2057
2799
  };
2058
- export type DeleteUserErrors = {
2800
+ export type DeletePaymentMethodErrors = {
2059
2801
  /**
2060
- * Deleting own user is not allowed. Delete your organization instead.
2802
+ * The bank transfer payment method cannot be removed.
2061
2803
  */
2062
2804
  400: unknown;
2063
2805
  /**
2064
2806
  * Not authenticated
2065
2807
  */
2066
2808
  401: unknown;
2809
+ /**
2810
+ * Payment method not found.
2811
+ */
2812
+ 404: unknown;
2813
+ /**
2814
+ * Cannot delete the only remaining payment method.
2815
+ */
2816
+ 409: unknown;
2067
2817
  };
2068
- export type DeleteUserResponses = {
2818
+ export type DeletePaymentMethodResponses = {
2069
2819
  /**
2070
- * User profile information
2820
+ * Payment method deleted.
2071
2821
  */
2072
- 200: User;
2822
+ 204: void;
2073
2823
  };
2074
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
2075
- export type GetUserData = {
2824
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
2825
+ export type ListInvoicesData = {
2076
2826
  body?: never;
2077
- path: {
2078
- /**
2079
- * Unique user identifier. UUID v4 string in canonical form
2080
- */
2081
- user_id: string;
2082
- };
2827
+ path?: never;
2083
2828
  query?: never;
2084
- url: '/users/{user_id}';
2829
+ url: '/billing/invoices';
2085
2830
  };
2086
- export type GetUserErrors = {
2831
+ export type ListInvoicesErrors = {
2087
2832
  /**
2088
2833
  * Not authenticated
2089
2834
  */
2090
2835
  401: unknown;
2091
2836
  };
2092
- export type GetUserResponses = {
2837
+ export type ListInvoicesResponses = {
2093
2838
  /**
2094
- * User profile information
2839
+ * An array of usage records.
2095
2840
  */
2096
- 200: User;
2841
+ 200: Array<Invoice>;
2097
2842
  };
2098
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
2099
- export type UpdateUserData = {
2100
- body: UserUpdateInput;
2101
- path: {
2102
- /**
2103
- * Unique user identifier. UUID v4 string in canonical form
2104
- */
2105
- user_id: string;
2106
- };
2843
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
2844
+ export type GetContactData = {
2845
+ body?: never;
2846
+ path?: never;
2107
2847
  query?: never;
2108
- url: '/users/{user_id}';
2848
+ url: '/billing/contact';
2109
2849
  };
2110
- export type UpdateUserResponses = {
2850
+ export type GetContactResponses = {
2111
2851
  /**
2112
- * Successfully created. Returns created user details.
2852
+ * Returns a single object containing organization contact and billing address details.
2113
2853
  */
2114
- 200: User;
2854
+ 200: BillingContact;
2115
2855
  };
2116
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
2117
- export type DeleteClusterPermissionsData = {
2856
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
2857
+ export type UpdateContactData = {
2858
+ body: BillingContact;
2859
+ path?: never;
2860
+ query?: never;
2861
+ url: '/billing/contact';
2862
+ };
2863
+ export type UpdateContactResponses = {
2864
+ /**
2865
+ * Successfully updated. Returns updated organization details.
2866
+ */
2867
+ 200: BillingContact;
2868
+ };
2869
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
2870
+ export type GetCreditsData = {
2118
2871
  body?: never;
2119
- path: {
2120
- /**
2121
- * Unique user identifier. UUID v4 string in canonical form
2122
- */
2123
- user_id: string;
2124
- /**
2125
- * Unique cluster identifier. UUID v4 string in canonical form
2126
- */
2127
- cluster_id: string;
2128
- };
2872
+ path?: never;
2129
2873
  query?: never;
2130
- url: '/users/{user_id}/clusters/{cluster_id}';
2874
+ url: '/billing/credits';
2875
+ };
2876
+ export type GetCreditsErrors = {
2877
+ /**
2878
+ * Not authenticated
2879
+ */
2880
+ 401: unknown;
2131
2881
  };
2132
- export type DeleteClusterPermissionsResponses = {
2882
+ export type GetCreditsResponses = {
2133
2883
  /**
2134
- * Successfully removed user from the cluster. Returns updated user details.
2884
+ * An array of the applied promotional credits records.
2135
2885
  */
2136
- 200: User;
2886
+ 200: Array<BillingCredits>;
2137
2887
  };
2138
- export type DeleteClusterPermissionsResponse = DeleteClusterPermissionsResponses[keyof DeleteClusterPermissionsResponses];
2139
- export type SetClusterPermissionsData = {
2888
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
2889
+ export type RedeemCreditsData = {
2140
2890
  body: {
2141
2891
  /**
2142
- * Level of permissions for the user to access the cluster
2143
- */
2144
- permissions?: 'readwrite' | 'readonly';
2145
- };
2146
- path: {
2147
- /**
2148
- * Unique user identifier. UUID v4 string in canonical form
2149
- */
2150
- user_id: string;
2151
- /**
2152
- * Unique cluster identifier. UUID v4 string in canonical form
2892
+ * Promotional code to redeem
2153
2893
  */
2154
- cluster_id: string;
2894
+ code?: string;
2155
2895
  };
2896
+ path?: never;
2156
2897
  query?: never;
2157
- url: '/users/{user_id}/clusters/{cluster_id}';
2898
+ url: '/billing/credits';
2158
2899
  };
2159
- export type SetClusterPermissionsResponses = {
2900
+ export type RedeemCreditsErrors = {
2160
2901
  /**
2161
- * Successfully created. Returns created user details.
2902
+ * Not authenticated
2162
2903
  */
2163
- 200: User;
2904
+ 401: unknown;
2905
+ };
2906
+ export type RedeemCreditsResponses = {
2907
+ /**
2908
+ * Successfully created a new organization.
2909
+ */
2910
+ 200: unknown;
2164
2911
  };
2165
- export type SetClusterPermissionsResponse = SetClusterPermissionsResponses[keyof SetClusterPermissionsResponses];
2166
2912
  //# sourceMappingURL=types.gen.d.ts.map