@cloudfleet/sdk 0.0.1-263dfe6 → 0.0.1-279de9d

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 (94) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1077 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1286 -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 +8 -7
  11. package/dist/client/index.d.ts.map +1 -1
  12. package/dist/client/index.js +6 -4
  13. package/dist/client/index.js.map +1 -1
  14. package/dist/client/{types.d.ts → types.gen.d.ts} +23 -22
  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.d.ts → utils.gen.d.ts} +17 -25
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/{utils.js → utils.gen.js} +66 -122
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +3 -3
  23. package/dist/client.gen.d.ts.map +1 -1
  24. package/dist/client.gen.js +1 -3
  25. package/dist/client.gen.js.map +1 -1
  26. package/dist/core/{auth.d.ts → auth.gen.d.ts} +1 -1
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/{auth.js → auth.gen.js} +2 -1
  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.js → bodySerializer.gen.js} +6 -2
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/{params.d.ts → params.gen.d.ts} +11 -1
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/{params.js → params.gen.js} +24 -11
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/{pathSerializer.d.ts → pathSerializer.gen.d.ts} +1 -1
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/{pathSerializer.js → pathSerializer.gen.js} +5 -12
  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.d.ts → types.gen.d.ts} +16 -16
  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/schemas.gen.d.ts +1826 -633
  59. package/dist/schemas.gen.d.ts.map +1 -1
  60. package/dist/schemas.gen.js +3254 -686
  61. package/dist/schemas.gen.js.map +1 -1
  62. package/dist/sdk.gen.d.ts +334 -161
  63. package/dist/sdk.gen.d.ts.map +1 -1
  64. package/dist/sdk.gen.js +479 -333
  65. package/dist/sdk.gen.js.map +1 -1
  66. package/dist/services/kubernetes/api.d.ts +20 -20
  67. package/dist/types.gen.d.ts +2069 -844
  68. package/dist/types.gen.d.ts.map +1 -1
  69. package/dist/zod.gen.d.ts +3801 -2544
  70. package/dist/zod.gen.d.ts.map +1 -1
  71. package/dist/zod.gen.js +1571 -1180
  72. package/dist/zod.gen.js.map +1 -1
  73. package/package.json +28 -8
  74. package/dist/client/client.d.ts +0 -3
  75. package/dist/client/client.d.ts.map +0 -1
  76. package/dist/client/client.js +0 -146
  77. package/dist/client/client.js.map +0 -1
  78. package/dist/client/types.d.ts.map +0 -1
  79. package/dist/client/types.js +0 -2
  80. package/dist/client/types.js.map +0 -1
  81. package/dist/client/utils.d.ts.map +0 -1
  82. package/dist/client/utils.js.map +0 -1
  83. package/dist/core/auth.d.ts.map +0 -1
  84. package/dist/core/auth.js.map +0 -1
  85. package/dist/core/bodySerializer.d.ts +0 -18
  86. package/dist/core/bodySerializer.d.ts.map +0 -1
  87. package/dist/core/bodySerializer.js.map +0 -1
  88. package/dist/core/params.d.ts.map +0 -1
  89. package/dist/core/params.js.map +0 -1
  90. package/dist/core/pathSerializer.d.ts.map +0 -1
  91. package/dist/core/pathSerializer.js.map +0 -1
  92. package/dist/core/types.d.ts.map +0 -1
  93. package/dist/core/types.js +0 -2
  94. package/dist/core/types.js.map +0 -1
@@ -1,4 +1,11 @@
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
+ };
1
4
  export type BillingContact = {
5
+ /**
6
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
7
+ */
8
+ type: 'business' | 'personal';
2
9
  /**
3
10
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
4
11
  */
@@ -36,13 +43,9 @@ export type BillingContact = {
36
43
  */
37
44
  email: string;
38
45
  /**
39
- * First name of the billing contact person.
40
- */
41
- first_name: string;
42
- /**
43
- * Last name of the billing contact person.
46
+ * Name of the billing contact person.
44
47
  */
45
- last_name: string;
48
+ individual_name: string;
46
49
  /**
47
50
  * Tax ID of the organization.
48
51
  */
@@ -50,7 +53,7 @@ export type BillingContact = {
50
53
  /**
51
54
  * Type of the tax ID.
52
55
  */
53
- 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' | '';
56
+ tax_id_type?: 'ad_nrt' | 'ae_trn' | 'al_tin' | 'am_tin' | 'ao_tin' | 'ar_cuit' | 'at_vat' | 'au_abn' | 'au_arn' | 'aw_tin' | 'az_tin' | 'ba_tin' | 'bb_tin' | 'bd_bin' | 'be_vat' | 'bf_ifu' | 'bg_uic' | 'bg_vat' | 'bh_vat' | 'bj_ifu' | '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' | 'cm_niu' | 'cn_tin' | 'co_nit' | 'cr_tin' | 'cv_nif' | 'cy_vat' | 'cz_vat' | 'de_stn' | 'de_vat' | 'dk_vat' | 'do_rcn' | 'ec_ruc' | 'ee_vat' | 'eg_tin' | 'es_cif' | 'es_vat' | 'et_tin' | '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' | 'kg_tin' | 'kh_tin' | 'kr_brn' | 'kz_bin' | 'la_tin' | 'li_uid' | 'li_vat' | 'lk_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' | '';
54
57
  };
55
58
  export type BillingCredits = {
56
59
  /**
@@ -58,35 +61,31 @@ export type BillingCredits = {
58
61
  */
59
62
  id?: string;
60
63
  /**
61
- * Date of the credit application. ISO 8601 date string in the UTC timezone.
62
- */
63
- date_created: string;
64
- /**
65
- * Promotional code used by the customer.
64
+ * Type of the promotional code.
66
65
  */
67
- code: string;
66
+ type: 'credit' | 'discount';
68
67
  /**
69
- * Description of the promotional code.
68
+ * Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.
70
69
  */
71
- description?: string;
70
+ date_start: string;
72
71
  /**
73
- * List of product SKUs that the promotional code can be used on.
72
+ * Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.
74
73
  */
75
- products?: Array<string>;
74
+ date_end?: string;
76
75
  /**
77
- * Type of the promotional code.
76
+ * Promotional code used by the customer.
78
77
  */
79
- type: 'credit' | 'discount';
78
+ code: string;
80
79
  /**
81
- * Value of the promotional code.
80
+ * Description of the promotional code.
82
81
  */
83
- value: number;
82
+ description?: string;
84
83
  /**
85
- * Date of the billing cycle. An ISO 8601 date string in the UTC timezone.
84
+ * Total value of the promotional code.
86
85
  */
87
- billing_period: string;
86
+ value_total: number;
88
87
  /**
89
- * Value of the promotional code.
88
+ * Remaining value of the promotional code.
90
89
  */
91
90
  value_remaining?: number;
92
91
  };
@@ -134,9 +133,9 @@ export type Chart = {
134
133
  */
135
134
  chart: string;
136
135
  /**
137
- * Status of the chart deployment.
136
+ * Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).
138
137
  */
139
- status: 'InstallSucceeded' | 'InstallFailed' | 'UpgradeSucceeded' | 'UpgradeFailed' | 'TestSucceeded' | 'TestFailed' | 'RollbackSucceeded' | 'RollbackFailed' | 'UninstallSucceeded' | 'UninstallFailed' | 'ArtifactFailed' | 'DependencyNotReady' | 'Progressing' | 'SourceNotReady';
138
+ status: string;
140
139
  /**
141
140
  * Current version of the chart deployment.
142
141
  */
@@ -164,6 +163,9 @@ export type ChartUpdateInput = {
164
163
  */
165
164
  version_channel: string;
166
165
  };
166
+ /**
167
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
168
+ */
167
169
  export type ClusterCreateInput = {
168
170
  /**
169
171
  * Name of the cluster.
@@ -172,15 +174,61 @@ export type ClusterCreateInput = {
172
174
  /**
173
175
  * Tier of the cluster.
174
176
  */
175
- tier: 'basic' | 'pro';
176
- /**
177
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a". This field can not be updated after creation.
178
- */
179
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a';
177
+ tier?: 'basic' | 'pro' | 'enterprise';
180
178
  /**
181
179
  * Version of the kubernetes cluster.
182
180
  */
183
181
  version_channel?: string;
182
+ /**
183
+ * Release channel for the cluster's control plane.
184
+ */
185
+ release_channel?: 'rapid' | 'stable' | 'extended';
186
+ /**
187
+ * Cluster feature toggles.
188
+ */
189
+ features?: {
190
+ /**
191
+ * GPU sharing strategy.
192
+ */
193
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
194
+ /**
195
+ * Maximum number of pods that may share a single GPU.
196
+ */
197
+ gpu_max_shared_clients_per_gpu?: number;
198
+ /**
199
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
200
+ */
201
+ cilium_socket_lb_host_namespace_only?: boolean;
202
+ };
203
+ /**
204
+ * Cloudfleet control plane region. This field can not be updated after creation.
205
+ */
206
+ region: string;
207
+ /**
208
+ * Cluster networking configuration. Immutable after creation.
209
+ */
210
+ networking?: {
211
+ /**
212
+ * CIDR block for pod IPs.
213
+ */
214
+ pod_cidr?: string;
215
+ /**
216
+ * CIDR block for service IPs.
217
+ */
218
+ service_cidr?: string;
219
+ /**
220
+ * Enable IPv4+IPv6 dual-stack networking.
221
+ */
222
+ dual_stack?: boolean;
223
+ /**
224
+ * IPv6 pod CIDR. Requires dual_stack.
225
+ */
226
+ pod_cidr_v6?: string;
227
+ /**
228
+ * IPv6 service CIDR. Requires dual_stack.
229
+ */
230
+ service_cidr_v6?: string;
231
+ };
184
232
  };
185
233
  export type ClusterJoinInformation = {
186
234
  /**
@@ -191,10 +239,22 @@ export type ClusterJoinInformation = {
191
239
  * Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.
192
240
  */
193
241
  endpoint: string;
242
+ /**
243
+ * Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.
244
+ */
245
+ cluster_dns: string;
246
+ /**
247
+ * Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.
248
+ */
249
+ pod_cidr: string;
194
250
  /**
195
251
  * Authentication key for the cluster.
196
252
  */
197
253
  auth_key: string;
254
+ /**
255
+ * Coordination server the node registers against. Empty on data plane v1 clusters, where the node advertises its own tag instead. A non-empty value requires a client that declares the dataplane-v2 capability.
256
+ */
257
+ login_server: string;
198
258
  /**
199
259
  * Bootstrap token for the cluster.
200
260
  */
@@ -238,6 +298,9 @@ export type ClusterJoinInformation = {
238
298
  gcp_workload_identity_provider: string;
239
299
  };
240
300
  };
301
+ /**
302
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
303
+ */
241
304
  export type Cluster = {
242
305
  /**
243
306
  * Name of the cluster.
@@ -246,24 +309,71 @@ export type Cluster = {
246
309
  /**
247
310
  * Tier of the cluster.
248
311
  */
249
- tier: 'basic' | 'pro';
312
+ tier: 'basic' | 'pro' | 'enterprise';
250
313
  /**
251
- * Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a". This field can not be updated after creation.
314
+ * Version of the kubernetes cluster.
252
315
  */
253
- region?: 'staging' | 'northamerica-central-1' | 'europe-central-1a';
316
+ version_channel: string;
254
317
  /**
255
- * Version of the kubernetes cluster.
318
+ * Release channel for the cluster's control plane.
256
319
  */
257
- version_channel?: string;
320
+ release_channel: 'rapid' | 'stable' | 'extended';
321
+ /**
322
+ * Cluster feature toggles.
323
+ */
324
+ features: {
325
+ /**
326
+ * GPU sharing strategy.
327
+ */
328
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
329
+ /**
330
+ * Maximum number of pods that may share a single GPU.
331
+ */
332
+ gpu_max_shared_clients_per_gpu: number;
333
+ /**
334
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
335
+ */
336
+ cilium_socket_lb_host_namespace_only: boolean;
337
+ };
338
+ /**
339
+ * Cloudfleet control plane region. This field can not be updated after creation.
340
+ */
341
+ region: string;
342
+ /**
343
+ * Cluster networking configuration. Immutable after creation.
344
+ */
345
+ networking: {
346
+ /**
347
+ * CIDR block for pod IPs.
348
+ */
349
+ pod_cidr: string;
350
+ /**
351
+ * CIDR block for service IPs.
352
+ */
353
+ service_cidr: string;
354
+ /**
355
+ * Enable IPv4+IPv6 dual-stack networking.
356
+ */
357
+ dual_stack: boolean;
358
+ /**
359
+ * IPv6 pod CIDR. Requires dual_stack.
360
+ */
361
+ pod_cidr_v6: string;
362
+ /**
363
+ * IPv6 service CIDR. Requires dual_stack.
364
+ */
365
+ service_cidr_v6: string;
366
+ };
258
367
  /**
259
368
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
260
369
  */
261
370
  id: string;
262
371
  /**
263
- * Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.
372
+ * Status of the cluster.
264
373
  */
265
- status: 'active' | 'deleted' | 'creating' | 'deployed' | 'failed' | 'updating';
374
+ status: 'creating' | 'deployed' | 'updating' | 'disabled';
266
375
  endpoint?: string | '';
376
+ endpoint_public?: string | '';
267
377
  /**
268
378
  * Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.
269
379
  */
@@ -283,125 +393,310 @@ export type Cluster = {
283
393
  /**
284
394
  * Indicates if the cluster is ready to be used.
285
395
  */
286
- ready?: boolean;
396
+ ready: boolean;
287
397
  };
398
+ /**
399
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
400
+ */
288
401
  export type ClusterUpdateInput = {
289
402
  /**
290
403
  * Name of the cluster.
291
404
  */
292
- name?: string;
405
+ name: string;
293
406
  /**
294
407
  * Tier of the cluster.
295
408
  */
296
- tier: 'basic' | 'pro';
409
+ tier?: 'basic' | 'pro' | 'enterprise';
297
410
  /**
298
411
  * Version of the kubernetes cluster.
299
412
  */
300
413
  version_channel?: string;
414
+ /**
415
+ * Release channel for the cluster's control plane.
416
+ */
417
+ release_channel?: 'rapid' | 'stable' | 'extended';
418
+ /**
419
+ * Cluster feature toggles.
420
+ */
421
+ features?: {
422
+ /**
423
+ * GPU sharing strategy.
424
+ */
425
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
426
+ /**
427
+ * Maximum number of pods that may share a single GPU.
428
+ */
429
+ gpu_max_shared_clients_per_gpu?: number;
430
+ /**
431
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
432
+ */
433
+ cilium_socket_lb_host_namespace_only?: boolean;
434
+ };
301
435
  };
436
+ /**
437
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
438
+ */
302
439
  export type FleetCreateInput = {
303
440
  /**
304
441
  * Limits define a set of bounds for provisioning capacity.
305
442
  */
306
443
  limits?: {
307
444
  /**
308
- * CPU limit in cores.
445
+ * CPU limit in cores. Maximum 100,000.
309
446
  */
310
- cpu: number;
447
+ cpu?: number;
311
448
  };
312
449
  gcp?: {
313
- enabled?: boolean;
450
+ enabled: boolean;
314
451
  /**
315
- * Project GCP Project id to deploy instances into
452
+ * 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.
316
453
  */
317
- project: string;
454
+ project?: string;
318
455
  };
319
456
  hetzner?: {
320
- enabled?: boolean;
457
+ enabled: boolean;
321
458
  /**
322
- * Hetzner Cloud API key with read / write access
459
+ * 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.
323
460
  */
324
- apiKey: string;
461
+ apiKey?: string;
325
462
  };
326
463
  aws?: {
327
- enabled?: boolean;
464
+ enabled: boolean;
465
+ /**
466
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
467
+ */
468
+ controllerRoleArn?: string;
469
+ };
470
+ /**
471
+ * 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.
472
+ */
473
+ constraints?: {
474
+ /**
475
+ * Allowed values for `karpenter.sh/capacity-type`.
476
+ */
477
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
478
+ /**
479
+ * Allowed values for `kubernetes.io/arch`.
480
+ */
481
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
328
482
  /**
329
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
483
+ * Allowed values for `cfke.io/instance-family`.
330
484
  */
331
- controllerRoleArn: string;
485
+ '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'>;
486
+ /**
487
+ * Allowed values for `topology.kubernetes.io/region`.
488
+ */
489
+ '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'>;
332
490
  };
491
+ /**
492
+ * 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`).
493
+ */
494
+ scalingProfile?: 'aggressive' | 'conservative';
495
+ /**
496
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
497
+ */
498
+ taints?: Array<{
499
+ /**
500
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
501
+ */
502
+ key: string;
503
+ /**
504
+ * Taint value. Optional.
505
+ */
506
+ value?: string;
507
+ /**
508
+ * Taint effect.
509
+ */
510
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
511
+ }>;
333
512
  /**
334
513
  * Unique identifier of the kubernetes fleet.
335
514
  */
336
515
  id: string;
337
516
  };
517
+ /**
518
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
519
+ */
338
520
  export type Fleet = {
339
521
  /**
340
522
  * Limits define a set of bounds for provisioning capacity.
341
523
  */
342
524
  limits?: {
343
525
  /**
344
- * CPU limit in cores.
526
+ * CPU limit in cores. Maximum 100,000.
345
527
  */
346
- cpu: number;
528
+ cpu?: number;
347
529
  };
348
530
  gcp?: {
349
- enabled?: boolean;
531
+ enabled: boolean;
350
532
  /**
351
- * Project GCP Project id to deploy instances into
533
+ * 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.
352
534
  */
353
- project: string;
535
+ project?: string;
354
536
  };
355
537
  hetzner?: {
356
- enabled?: boolean;
538
+ enabled: boolean;
357
539
  /**
358
- * Hetzner Cloud API key with read / write access
540
+ * Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.
359
541
  */
360
- apiKey: string;
542
+ apiKey?: string;
361
543
  };
362
544
  aws?: {
363
- enabled?: boolean;
545
+ enabled: boolean;
546
+ /**
547
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
548
+ */
549
+ controllerRoleArn?: string;
550
+ };
551
+ /**
552
+ * 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.
553
+ */
554
+ constraints: {
555
+ /**
556
+ * Allowed values for `karpenter.sh/capacity-type`.
557
+ */
558
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
559
+ /**
560
+ * Allowed values for `kubernetes.io/arch`.
561
+ */
562
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
563
+ /**
564
+ * Allowed values for `cfke.io/instance-family`.
565
+ */
566
+ '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'>;
364
567
  /**
365
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
568
+ * Allowed values for `topology.kubernetes.io/region`.
366
569
  */
367
- controllerRoleArn: string;
570
+ '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'>;
368
571
  };
572
+ /**
573
+ * 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`).
574
+ */
575
+ scalingProfile: 'aggressive' | 'conservative';
576
+ /**
577
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
578
+ */
579
+ taints: Array<{
580
+ /**
581
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
582
+ */
583
+ key: string;
584
+ /**
585
+ * Taint value. Optional.
586
+ */
587
+ value?: string;
588
+ /**
589
+ * Taint effect.
590
+ */
591
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
592
+ }>;
369
593
  /**
370
594
  * Unique identifier of the kubernetes fleet.
371
595
  */
372
596
  id: string;
597
+ /**
598
+ * Indicates whether the fleet configuration is healthy.
599
+ */
600
+ ready: boolean;
601
+ /**
602
+ * Human-readable reason the fleet is not ready. Present only when `ready` is false.
603
+ */
604
+ status_message?: string;
605
+ /**
606
+ * Creation date and time of the fleet.
607
+ */
608
+ created_at: string;
609
+ /**
610
+ * Date and time the fleet was last updated.
611
+ */
612
+ updated_at: string;
373
613
  };
614
+ /**
615
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
616
+ */
374
617
  export type FleetUpdateInput = {
375
618
  /**
376
619
  * Limits define a set of bounds for provisioning capacity.
377
620
  */
378
621
  limits?: {
379
622
  /**
380
- * CPU limit in cores.
623
+ * CPU limit in cores. Maximum 100,000.
381
624
  */
382
- cpu: number;
625
+ cpu?: number;
383
626
  };
384
627
  gcp?: {
385
- enabled?: boolean;
628
+ enabled: boolean;
386
629
  /**
387
- * Project GCP Project id to deploy instances into
630
+ * 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.
388
631
  */
389
- project: string;
632
+ project?: string;
390
633
  };
391
634
  hetzner?: {
392
- enabled?: boolean;
635
+ enabled: boolean;
393
636
  /**
394
- * Hetzner Cloud API key with read / write access
637
+ * 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.
395
638
  */
396
- apiKey: string;
639
+ apiKey?: string;
397
640
  };
398
641
  aws?: {
399
- enabled?: boolean;
642
+ enabled: boolean;
643
+ /**
644
+ * AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.
645
+ */
646
+ controllerRoleArn?: string;
647
+ };
648
+ /**
649
+ * 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.
650
+ */
651
+ constraints?: {
652
+ /**
653
+ * Allowed values for `karpenter.sh/capacity-type`.
654
+ */
655
+ 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
656
+ /**
657
+ * Allowed values for `kubernetes.io/arch`.
658
+ */
659
+ 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
660
+ /**
661
+ * Allowed values for `cfke.io/instance-family`.
662
+ */
663
+ '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'>;
400
664
  /**
401
- * ControllerRoleArn is the AWS IAM role that Karpenter uses to manage resources.
665
+ * Allowed values for `topology.kubernetes.io/region`.
402
666
  */
403
- controllerRoleArn: string;
667
+ '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'>;
404
668
  };
669
+ /**
670
+ * 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`).
671
+ */
672
+ scalingProfile?: 'aggressive' | 'conservative';
673
+ /**
674
+ * Taints applied to every node the fleet provisions, so only pods that tolerate them schedule there. Each key and effect pair may appear once. Full-overwrite: omit to remove all taints.
675
+ */
676
+ taints?: Array<{
677
+ /**
678
+ * Taint key: a Kubernetes qualified name with an optional DNS subdomain prefix. Keys under `node.kubernetes.io`, `node.cloudprovider.kubernetes.io`, `node.cilium.io`, `karpenter.sh` and `cfke.io` (and their subdomains) are reserved.
679
+ */
680
+ key: string;
681
+ /**
682
+ * Taint value. Optional.
683
+ */
684
+ value?: string;
685
+ /**
686
+ * Taint effect.
687
+ */
688
+ effect: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
689
+ }>;
690
+ };
691
+ export type InviteCreateInput = {
692
+ /**
693
+ * Email address of the user to invite.
694
+ */
695
+ email: string;
696
+ /**
697
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
698
+ */
699
+ role?: 'Administrator' | 'User';
405
700
  };
406
701
  export type Invite = {
407
702
  /**
@@ -424,285 +719,215 @@ export type Invite = {
424
719
  * Generated unique invite code.
425
720
  */
426
721
  code?: string;
427
- };
428
- export type Invoice = {
429
- /**
430
- * Unique identifier of the invoice. UUID v4 string in canonical form
431
- */
432
- id?: string;
433
722
  /**
434
- * Unique identifier of the organization. UUID v4 string in canonical form
723
+ * Role the invited user will be assigned on redemption. Can be 'Administrator' or 'User'.
435
724
  */
436
- organizationId?: string;
725
+ role?: 'Administrator' | 'User';
726
+ };
727
+ export type InvoicePaymentAttempt = {
437
728
  /**
438
- * Status of the invoice
729
+ * Identifier of the invoice.
439
730
  */
440
- status?: 'DRAFT' | 'COMMITTED' | 'VOID';
731
+ invoice_id: string;
441
732
  /**
442
- * Total amount of the invoice
733
+ * Invoice number. Null if the invoice has no number.
443
734
  */
444
- amount?: number;
735
+ number: string;
445
736
  /**
446
- * Currency of the invoice
737
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
447
738
  */
448
- 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';
739
+ amount: number;
449
740
  /**
450
- * Total amount of credit adjustments
741
+ * Currency of the invoice.
451
742
  */
452
- creditAdj?: number;
743
+ currency: string;
453
744
  /**
454
- * Total amount of refund adjustments
745
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
455
746
  */
456
- refundAdj?: number;
747
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
457
748
  /**
458
- * Date of the invoice
749
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
459
750
  */
460
- invoiceDate?: string;
751
+ client_secret: string;
461
752
  /**
462
- * Target date of the invoice
753
+ * Decline code. Set only when `status` is `failed`.
463
754
  */
464
- targetDate?: string;
755
+ failure_code: string;
465
756
  /**
466
- * Number of the invoice
757
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
467
758
  */
468
- invoiceNumber?: string;
759
+ failure_message: string;
760
+ };
761
+ export type InvoicePaymentResult = {
469
762
  /**
470
- * Balance of the invoice
763
+ * Overall outcome: `paid` (nothing outstanding), `processing` (all accepted, not yet settled), `action_required` (one or more await customer authentication), `partially_paid`, `failed`, `nothing_due`, or `bank_transfer_due` (the organization pays by bank transfer; nothing was charged).
471
764
  */
472
- balance?: number;
765
+ code: 'paid' | 'processing' | 'action_required' | 'partially_paid' | 'failed' | 'nothing_due' | 'bank_transfer_due';
473
766
  /**
474
- * Bundle keys of the invoice
767
+ * Summary of the outcome, suitable for display.
475
768
  */
476
- bundleKeys?: string;
769
+ message: string;
477
770
  /**
478
- * Credits of the invoice
771
+ * One entry per invoice charged, oldest first.
479
772
  */
480
- credits?: Array<{
481
- /**
482
- * Unique identifier of the invoice item. UUID v4 string in canonical form
483
- */
484
- id?: string;
773
+ results: Array<{
485
774
  /**
486
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
775
+ * Identifier of the invoice.
487
776
  */
488
- linkedInvoiceItemId?: string;
777
+ invoice_id: string;
489
778
  /**
490
- * Name of the product
779
+ * Invoice number. Null if the invoice has no number.
491
780
  */
492
- productName?: string;
781
+ number: string;
493
782
  /**
494
- * Name of the plan
783
+ * Amount outstanding when the charge was attempted, in the smallest currency unit.
495
784
  */
496
- planName?: string;
785
+ amount: number;
497
786
  /**
498
- * Name of the phase
787
+ * Currency of the invoice.
499
788
  */
500
- phaseName?: string;
789
+ currency: string;
501
790
  /**
502
- * Name of the usage
791
+ * Outcome for this invoice: `paid`, `processing` (accepted, not yet settled), `requires_action` (awaiting customer authentication), or `failed` (declined).
503
792
  */
504
- usageName?: string;
793
+ status: 'paid' | 'processing' | 'requires_action' | 'failed';
505
794
  /**
506
- * Pretty name of the product
795
+ * Client secret used to complete customer authentication. Set only when `status` is `requires_action`.
507
796
  */
508
- prettyProductName?: string;
797
+ client_secret: string;
509
798
  /**
510
- * Pretty name of the plan
799
+ * Decline code. Set only when `status` is `failed`.
511
800
  */
512
- prettyPlanName?: string;
801
+ failure_code: string;
513
802
  /**
514
- * Pretty name of the phase
803
+ * Explanation of the decline, suitable for display. Set only when `status` is `failed`.
515
804
  */
516
- prettyPhaseName?: string;
805
+ failure_message: string;
806
+ }>;
807
+ };
808
+ export type Invoice = {
809
+ /**
810
+ * Unique identifier of the invoice.
811
+ */
812
+ id?: string;
813
+ number?: string;
814
+ /**
815
+ * Status of the invoice
816
+ */
817
+ status?: string;
818
+ /**
819
+ * Total amount of the invoice
820
+ */
821
+ total?: number;
822
+ /**
823
+ * Currency of the invoice
824
+ */
825
+ currency?: string;
826
+ /**
827
+ * Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.
828
+ */
829
+ created: string;
830
+ /**
831
+ * Billing period start timestamp. ISO 8601 date string in the UTC timezone.
832
+ */
833
+ period_start: string;
834
+ /**
835
+ * Billing period end timestamp. ISO 8601 date string in the UTC timezone.
836
+ */
837
+ period_end: string;
838
+ invoice_pdf?: string;
839
+ };
840
+ export type MarketplaceListingFiles = {
841
+ /**
842
+ * Raw Chart.yaml content from the Helm chart
843
+ */
844
+ chartYaml?: string;
845
+ /**
846
+ * Raw values.yaml content from the Helm chart
847
+ */
848
+ valuesYaml?: string;
849
+ /**
850
+ * JSON schema for values.yaml as a string
851
+ */
852
+ valuesSchemaJson?: string;
853
+ };
854
+ export type MarketplaceListing = {
855
+ /**
856
+ * Name of the chart
857
+ */
858
+ name: string;
859
+ /**
860
+ * Available versions of the chart
861
+ */
862
+ versions: Array<string>;
863
+ /**
864
+ * Version channels for the chart
865
+ */
866
+ version_channels: Array<string>;
867
+ /**
868
+ * Latest version of the chart
869
+ */
870
+ latestVersion: string;
871
+ /**
872
+ * Chart metadata
873
+ */
874
+ metadata?: {
517
875
  /**
518
- * Pretty name of the usage
876
+ * Chart name from metadata
519
877
  */
520
- prettyUsageName?: string;
878
+ name: string;
521
879
  /**
522
- * Type of the invoice item
880
+ * Chart version from metadata
523
881
  */
524
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
882
+ version: string;
525
883
  /**
526
- * Description of the invoice item
884
+ * Chart description
527
885
  */
528
886
  description?: string;
529
887
  /**
530
- * Start date of the invoice item
531
- */
532
- startDate?: string;
533
- /**
534
- * End date of the invoice item
535
- */
536
- endDate?: string;
537
- /**
538
- * Amount of the invoice item
539
- */
540
- amount?: number;
541
- /**
542
- * Rate of the invoice item
888
+ * Application version
543
889
  */
544
- rate?: number;
890
+ appVersion?: string;
545
891
  /**
546
- * Currency of the invoice item
892
+ * Helm API version
547
893
  */
548
- 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';
894
+ apiVersion?: string;
549
895
  /**
550
- * Quantity of the invoice item
896
+ * Chart keywords
551
897
  */
552
- quantity?: number;
898
+ keywords?: Array<string>;
553
899
  /**
554
- * Details of the invoice item
900
+ * Chart home URL
555
901
  */
556
- itemDetails?: string;
902
+ home?: string;
557
903
  /**
558
- * Effective date of the catalog
904
+ * A URL to an SVG or PNG image to be used as an icon
559
905
  */
560
- catalogEffectiveDate?: string;
906
+ icon?: string;
561
907
  /**
562
- * Child items of the invoice item
908
+ * Chart source URLs
563
909
  */
564
- childItems?: Array<Array<unknown> | boolean | number | {
565
- [key: string]: unknown;
566
- } | string>;
567
- }>;
568
- /**
569
- * Items of the invoice
570
- */
571
- items?: Array<{
910
+ sources?: Array<string>;
572
911
  /**
573
- * Unique identifier of the invoice item. UUID v4 string in canonical form
912
+ * Chart maintainers
574
913
  */
575
- id?: string;
576
- /**
577
- * Unique identifier of the linked invoice item. UUID v4 string in canonical form
578
- */
579
- linkedInvoiceItemId?: string;
580
- /**
581
- * Name of the product
582
- */
583
- productName?: string;
584
- /**
585
- * Name of the plan
586
- */
587
- planName?: string;
588
- /**
589
- * Name of the phase
590
- */
591
- phaseName?: string;
592
- /**
593
- * Name of the usage
594
- */
595
- usageName?: string;
596
- /**
597
- * Pretty name of the product
598
- */
599
- prettyProductName?: string;
600
- /**
601
- * Pretty name of the plan
602
- */
603
- prettyPlanName?: string;
604
- /**
605
- * Pretty name of the phase
606
- */
607
- prettyPhaseName?: string;
608
- /**
609
- * Pretty name of the usage
610
- */
611
- prettyUsageName?: string;
612
- /**
613
- * Type of the invoice item
614
- */
615
- itemType?: 'EXTERNAL_CHARGE' | 'FIXED' | 'RECURRING' | 'REPAIR_ADJ' | 'CBA_ADJ' | 'CREDIT_ADJ' | 'ITEM_ADJ' | 'USAGE' | 'TAX' | 'PARENT_SUMMARY';
616
- /**
617
- * Description of the invoice item
618
- */
619
- description?: string;
620
- /**
621
- * Start date of the invoice item
622
- */
623
- startDate?: string;
624
- /**
625
- * End date of the invoice item
626
- */
627
- endDate?: string;
628
- /**
629
- * Amount of the invoice item
630
- */
631
- amount?: number;
632
- /**
633
- * Rate of the invoice item
634
- */
635
- rate?: number;
636
- /**
637
- * Currency of the invoice item
638
- */
639
- 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';
640
- /**
641
- * Quantity of the invoice item
642
- */
643
- quantity?: number;
644
- /**
645
- * Details of the invoice item
646
- */
647
- itemDetails?: string;
648
- /**
649
- * Effective date of the catalog
650
- */
651
- catalogEffectiveDate?: string;
652
- /**
653
- * Child items of the invoice item
654
- */
655
- childItems?: Array<Array<unknown> | boolean | number | {
656
- [key: string]: unknown;
657
- } | string>;
658
- }>;
914
+ maintainers?: Array<{
915
+ /**
916
+ * Maintainer name
917
+ */
918
+ name: string;
919
+ /**
920
+ * Maintainer email
921
+ */
922
+ email?: string;
923
+ }>;
924
+ };
659
925
  };
660
- export type MarketplaceListing = {
661
- /**
662
- * Id of the chart listing
663
- */
664
- id: string;
665
- /**
666
- * Name of the chart listing
667
- */
668
- name: string;
669
- /**
670
- * Author of the chart listing
671
- */
672
- developer: string;
673
- /**
674
- * Short description of the chart listing
675
- */
676
- description: string;
677
- /**
678
- * Logo of the chart listing
679
- */
680
- logoUrl: string;
681
- /**
682
- * Long description of the chart listing
683
- */
684
- longDescription: string;
926
+ export type OrganizationCreateInput = {
685
927
  /**
686
- * Tags of the chart
928
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
687
929
  */
688
- categories: Array<string>;
689
- version_channels: Array<string>;
690
- value_schemas: Array<{
691
- /**
692
- * Version of the chart.
693
- */
694
- version: string;
695
- /**
696
- * Schema of the chart values. JSON Schema as string
697
- */
698
- schema: string;
699
- /**
700
- * Schema of the chart values
701
- */
702
- placeholder: string;
703
- }>;
704
- };
705
- export type OrganizationCreateInput = {
930
+ type: 'business' | 'personal';
706
931
  /**
707
932
  * Email address used for billing as a string.
708
933
  */
@@ -724,6 +949,12 @@ export type OrganizationCreateInput = {
724
949
  */
725
950
  password: string;
726
951
  };
952
+ export type OrganizationCreateOutput = {
953
+ /**
954
+ * Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.
955
+ */
956
+ id: string;
957
+ };
727
958
  export type Organization = {
728
959
  /**
729
960
  * Unique identifier of the organization. UUID v4 string in canonical form
@@ -733,6 +964,10 @@ export type Organization = {
733
964
  * Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.
734
965
  */
735
966
  name?: string;
967
+ /**
968
+ * Type of the organization. `business` for legal entities, `personal` for individuals.
969
+ */
970
+ type: 'business' | 'personal';
736
971
  /**
737
972
  * Creation date of the organization. ISO 8601 date string in UTC timezone
738
973
  */
@@ -757,6 +992,14 @@ export type Organization = {
757
992
  * Available number of Pro clusters that can be created.
758
993
  */
759
994
  pro_clusters_available: number;
995
+ /**
996
+ * Maximum number of Enterprise clusters that can be created.
997
+ */
998
+ enterprise_clusters_max: number;
999
+ /**
1000
+ * Available number of Enterprise clusters that can be created.
1001
+ */
1002
+ enterprise_clusters_available: number;
760
1003
  /**
761
1004
  * Maximum number of fleets that can be created per cluster.
762
1005
  */
@@ -782,490 +1025,1469 @@ export type Organization = {
782
1025
  */
783
1026
  label: string;
784
1027
  }>;
1028
+ /**
1029
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
1030
+ */
1031
+ cfcr_storage_gb: number;
785
1032
  };
786
1033
  /**
787
1034
  * Status of the organization. Can be `active` or `closed`, or `suspended`.
788
1035
  */
789
1036
  status: 'active' | 'closed' | 'suspended';
1037
+ /**
1038
+ * 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.
1039
+ */
1040
+ verification: 'none' | 'submitted' | 'verified';
790
1041
  };
791
1042
  export type PaymentMethod = {
792
1043
  /**
793
- * Unique identifier of the organization. UUID v4 string in canonical form.
1044
+ * 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.
794
1045
  */
795
1046
  id: string;
796
1047
  /**
797
- * Whether organization payment method was set up and ready to use for payments.
798
- */
799
- setup: boolean;
800
- /**
801
- * Payment method type type. Only `card` payments supported at the moment.
1048
+ * Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.
802
1049
  */
803
- type: 'card';
1050
+ type: 'card' | 'sepa_debit' | 'bank_transfer';
804
1051
  /**
805
- * Last 4 digits of the payment card number.
1052
+ * 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.
806
1053
  */
807
1054
  last4: string;
808
1055
  /**
809
- * Two-digit number representing the card's expiration month.
1056
+ * Two-digit number representing the card's expiration month. Null for SEPA Direct Debit and bank transfer.
810
1057
  */
811
1058
  exp_month: number;
812
1059
  /**
813
- * Four-digit number representing the card's expiration year.
1060
+ * 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.
814
1061
  */
815
1062
  exp_year: number;
816
1063
  /**
817
- * Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.
1064
+ * Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.
818
1065
  */
819
- brand: 'amex' | 'diners' | 'discover' | 'eftpos_au' | 'jcb' | 'mastercard' | 'unionpay' | 'visa' | 'unknown';
820
- };
821
- export type TokenCreateInput = {
1066
+ brand: string;
822
1067
  /**
823
- * Human readable access token name.
1068
+ * 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.
824
1069
  */
825
- name: string;
1070
+ iban: string;
826
1071
  /**
827
- * Role assumed by the token.
1072
+ * BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.
828
1073
  */
829
- role: 'Administrator' | 'User';
830
- };
831
- export type Token = {
1074
+ bic: string;
832
1075
  /**
833
- * Human readable access token name.
1076
+ * Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.
834
1077
  */
835
- name: string;
1078
+ account_holder_name: string;
836
1079
  /**
837
- * Role assumed by the token.
1080
+ * 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).
838
1081
  */
839
- role: 'Administrator' | 'User';
1082
+ is_default: boolean;
1083
+ };
1084
+ export type PlatformQuota = {
840
1085
  /**
841
- * Generated unique identifier of the access token.
1086
+ * Maximum number of Basic clusters that can be created.
842
1087
  */
843
- id?: string;
1088
+ basic_clusters_max: number;
844
1089
  /**
845
- * Access token secret. Unmasked only during creation.
1090
+ * Available number of Basic clusters that can be created.
846
1091
  */
847
- secret?: string;
1092
+ basic_clusters_available: number;
848
1093
  /**
849
- * Creation date of the access token. ISO 8601 date string in UTC timezone
1094
+ * Maximum number of Pro clusters that can be created.
850
1095
  */
851
- date_created: string;
852
- };
853
- export type TokenUpdateInput = {
1096
+ pro_clusters_max: number;
854
1097
  /**
855
- * Human readable access token name.
1098
+ * Available number of Pro clusters that can be created.
856
1099
  */
857
- name?: string;
1100
+ pro_clusters_available: number;
858
1101
  /**
859
- * Role assumed by the token.
1102
+ * Maximum number of Enterprise clusters that can be created.
860
1103
  */
861
- role?: 'Administrator' | 'User';
862
- };
863
- export type Usage = {
1104
+ enterprise_clusters_max: number;
864
1105
  /**
865
- * Hour of the usage
1106
+ * Available number of Enterprise clusters that can be created.
866
1107
  */
867
- hour?: string;
1108
+ enterprise_clusters_available: number;
868
1109
  /**
869
- * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1110
+ * Maximum number of fleets that can be created per cluster.
870
1111
  */
871
- cluster_id: string;
1112
+ fleets_max: number;
872
1113
  /**
873
- * Tier of the cluster.
1114
+ * List of Cloudfleet cluster tiers available for the organization.
874
1115
  */
875
- cluster_tier: 'basic' | 'pro' | '';
1116
+ cluster_tiers: Array<string>;
876
1117
  /**
877
- * The product the usage is associated with
1118
+ * List of Cloudfleet control plane regions available for the organization.
878
1119
  */
879
- product: 'cfke_controlplane' | 'cfke_connected_nodes' | 'infra_compute' | 'infra_storage' | 'infra_loadbalancing' | 'infra_traffic' | 'cfcr_storage';
1120
+ regions: Array<string>;
880
1121
  /**
881
- * Name of the Kubernetes node
1122
+ * List of CFKE control plane versions available for the organization.
882
1123
  */
883
- node_name: string;
1124
+ versions: Array<{
1125
+ /**
1126
+ * Id of the control plane version. Used in API calls.
1127
+ */
1128
+ id: string;
1129
+ /**
1130
+ * Label of the control plane version. Used in frontent UI.
1131
+ */
1132
+ label: string;
1133
+ }>;
884
1134
  /**
885
- * SKU of the Kubernetes node
1135
+ * Organization-level maximum CFCR storage volume in GB. -1 means no limit.
886
1136
  */
887
- sku: string;
888
- cpu: number | '';
889
- price: number | '';
890
- value: number | '';
891
- total: number | '';
1137
+ cfcr_storage_gb: number;
892
1138
  };
893
- export type UserCreateInput = {
1139
+ export type RegistryRepository = {
894
1140
  /**
895
- * User email address.
1141
+ * Repository name.
896
1142
  */
897
- email: string;
1143
+ name: string;
898
1144
  /**
899
- * User first name.
1145
+ * Registry region.
900
1146
  */
901
- first_name: string;
1147
+ region: string;
902
1148
  /**
903
- * User last name.
1149
+ * Full URI of the repository.
904
1150
  */
905
- last_name: string;
1151
+ uri: string;
1152
+ };
1153
+ export type RegistryRepositoryWithTags = {
906
1154
  /**
907
- * Generated unique invite code.
1155
+ * Repository name.
908
1156
  */
909
- code: string;
1157
+ name: string;
910
1158
  /**
911
- * User password. Must be at least 8 characters long.
1159
+ * Registry region.
912
1160
  */
913
- password: string;
1161
+ region: string;
914
1162
  /**
915
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1163
+ * Full URI of the repository.
916
1164
  */
917
- status?: 'active' | 'inactive';
1165
+ uri: string;
918
1166
  /**
919
- * User role. Can be 'Administrator', 'User'.
1167
+ * Array of tags in the repository.
920
1168
  */
921
- role?: 'Administrator' | 'User';
922
- };
923
- export type User = {
1169
+ tags: Array<{
1170
+ /**
1171
+ * Tag name.
1172
+ */
1173
+ name: string;
1174
+ /**
1175
+ * Size of the tag in bytes.
1176
+ */
1177
+ size: number;
1178
+ /**
1179
+ * Media type of the manifest.
1180
+ */
1181
+ mediaType?: string;
1182
+ /**
1183
+ * Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).
1184
+ */
1185
+ platforms?: Array<string>;
1186
+ }>;
924
1187
  /**
925
- * User email address.
1188
+ * Total size of all tags in the repository in bytes.
926
1189
  */
927
- email: string;
1190
+ totalSize: number;
1191
+ };
1192
+ export type RegistryTag = {
928
1193
  /**
929
- * User first name.
1194
+ * Tag name.
930
1195
  */
931
- first_name: string;
1196
+ name: string;
932
1197
  /**
933
- * User last name.
1198
+ * Manifest digest for pulling by digest.
934
1199
  */
935
- last_name: string;
1200
+ digest: string;
936
1201
  /**
937
- * User role. Can be 'Administrator', 'User'.
1202
+ * Media type of the manifest.
938
1203
  */
939
- role: 'Administrator' | 'User';
1204
+ mediaType?: string;
940
1205
  /**
941
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1206
+ * Manifest config metadata.
942
1207
  */
943
- status: 'active' | 'inactive';
1208
+ config?: {
1209
+ /**
1210
+ * Size of the config in bytes.
1211
+ */
1212
+ size: number;
1213
+ };
944
1214
  /**
945
- * Unique identifier of the user. UUID v4 string in canonical form
1215
+ * Array of layer metadata.
946
1216
  */
947
- id: string;
1217
+ layers?: Array<{
1218
+ /**
1219
+ * Digest of the layer.
1220
+ */
1221
+ digest?: string;
1222
+ /**
1223
+ * Size of the layer in bytes.
1224
+ */
1225
+ size: number;
1226
+ }>;
948
1227
  /**
949
- * Creation date of the user. ISO 8601 date string in UTC timezone
1228
+ * Array of manifests for multi-arch images.
950
1229
  */
951
- date_created: string;
952
- };
953
- export type UserUpdateInput = {
1230
+ manifests?: Array<{
1231
+ /**
1232
+ * Digest of the manifest.
1233
+ */
1234
+ digest: string;
1235
+ /**
1236
+ * Platform information for the manifest.
1237
+ */
1238
+ platform?: {
1239
+ /**
1240
+ * Architecture of the platform.
1241
+ */
1242
+ architecture: string;
1243
+ /**
1244
+ * Operating system of the platform.
1245
+ */
1246
+ os: string;
1247
+ /**
1248
+ * Variant of the platform (e.g., v7, v8 for ARM).
1249
+ */
1250
+ variant?: string;
1251
+ };
1252
+ /**
1253
+ * Layers for this platform.
1254
+ */
1255
+ layers?: Array<{
1256
+ /**
1257
+ * Digest of the layer.
1258
+ */
1259
+ digest?: string;
1260
+ /**
1261
+ * Size of the layer in bytes.
1262
+ */
1263
+ size: number;
1264
+ }>;
1265
+ /**
1266
+ * Total size of this platform manifest in bytes.
1267
+ */
1268
+ size?: number;
1269
+ }>;
954
1270
  /**
955
- * User email address.
1271
+ * Total size of the tag in bytes.
956
1272
  */
957
- email?: string;
1273
+ size: number;
958
1274
  /**
959
- * User first name.
1275
+ * Registry region.
960
1276
  */
961
- first_name?: string;
1277
+ region: string;
962
1278
  /**
963
- * User last name.
1279
+ * Repository name.
964
1280
  */
965
- last_name?: string;
1281
+ repository: string;
966
1282
  /**
967
- * User role. Can be 'Administrator', 'User'.
1283
+ * Full URI of the tag.
968
1284
  */
969
- role?: 'Administrator' | 'User';
1285
+ uri: string;
1286
+ };
1287
+ export type RoadmapItemCreateInput = {
970
1288
  /**
971
- * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1289
+ * Your suggestion in one or two sentences. It is reviewed before it appears on the roadmap.
972
1290
  */
973
- status?: 'active' | 'inactive';
974
- };
975
- export type GetUsageData = {
976
- body?: never;
977
- path?: never;
978
- query?: never;
979
- url: '/billing/usage';
1291
+ text: string;
980
1292
  };
981
- export type GetUsageErrors = {
1293
+ export type RoadmapItem = {
982
1294
  /**
983
- * Not authenticated
1295
+ * Unique identifier of the roadmap item (Mongo ObjectId).
984
1296
  */
985
- 401: unknown;
986
- };
987
- export type GetUsageResponses = {
1297
+ id: string;
988
1298
  /**
989
- * An array of usage records.
1299
+ * Short description of the roadmap item.
990
1300
  */
991
- 200: Array<Usage>;
992
- };
993
- export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
994
- export type GetBalanceData = {
995
- body?: never;
996
- path?: never;
997
- query?: never;
998
- url: '/billing/balance';
999
- };
1000
- export type GetBalanceResponses = {
1301
+ text: string;
1001
1302
  /**
1002
- * Current balance of the organization in USD as a floating-point number.
1303
+ * The caller's vote on this item: -1 (down), 1 (up), 2 (double up), or null if the caller has not voted.
1003
1304
  */
1004
- 200: number;
1005
- };
1006
- export type GetBalanceResponse = GetBalanceResponses[keyof GetBalanceResponses];
1007
- export type GetPaymentMethodData = {
1008
- body?: never;
1009
- path?: never;
1010
- query?: never;
1011
- url: '/billing/payment-method';
1305
+ vote: -1 | 1 | 2;
1012
1306
  };
1013
- export type GetPaymentMethodErrors = {
1307
+ export type RoadmapVoteInput = {
1014
1308
  /**
1015
- * Returns 404 Not Found if the organization does not have a payment method set up.
1309
+ * Vote value: -1 (down), 1 (up), or 2 (double up).
1016
1310
  */
1017
- 404: unknown;
1311
+ value: -1 | 1 | 2;
1018
1312
  };
1019
- export type GetPaymentMethodResponses = {
1313
+ export type TicketAttachment = {
1020
1314
  /**
1021
- * Redacted payment card information.
1315
+ * Unique identifier of the attachment (Mongo ObjectId).
1022
1316
  */
1023
- 200: PaymentMethod;
1024
- };
1025
- export type GetPaymentMethodResponse = GetPaymentMethodResponses[keyof GetPaymentMethodResponses];
1026
- export type GetPaymentMethodSecretData = {
1027
- body?: never;
1028
- path?: never;
1029
- query?: never;
1030
- url: '/billing/payment-method';
1031
- };
1032
- export type GetPaymentMethodSecretResponses = {
1317
+ id: string;
1033
1318
  /**
1034
- * 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.
1035
- *
1319
+ * Original filename as uploaded.
1036
1320
  */
1037
- 200: {
1038
- /**
1039
- * The client secret.
1321
+ filename: string;
1322
+ /**
1323
+ * MIME content type of the attachment.
1324
+ */
1325
+ content_type: string;
1326
+ /**
1327
+ * Size of the attachment in bytes.
1328
+ */
1329
+ size: number;
1330
+ };
1331
+ export type TicketCreateInput = {
1332
+ /**
1333
+ * Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.
1334
+ */
1335
+ category: 'billing' | 'technical' | 'general';
1336
+ /**
1337
+ * Initial message body in markdown. There is no separate subject — the first message body is the description.
1338
+ */
1339
+ body: string;
1340
+ /**
1341
+ * Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).
1342
+ */
1343
+ properties?: {
1344
+ [key: string]: unknown;
1345
+ };
1346
+ /**
1347
+ * Grant Cloudfleet support staff access to the organization's resources while the ticket is open. Access cannot be revoked; it ends when the ticket is closed.
1348
+ */
1349
+ grant_support_access?: boolean;
1350
+ };
1351
+ export type TicketMessageInput = {
1352
+ /**
1353
+ * Reply body in markdown.
1354
+ */
1355
+ body: string;
1356
+ };
1357
+ export type TicketMessage = {
1358
+ /**
1359
+ * Unique identifier of the message (Mongo ObjectId).
1360
+ */
1361
+ id: string;
1362
+ /**
1363
+ * Message type. Internal notes are filtered out of customer-facing responses.
1364
+ */
1365
+ type: 'customer_reply' | 'agent_reply';
1366
+ /**
1367
+ * Message body in markdown.
1368
+ */
1369
+ body: string;
1370
+ /**
1371
+ * First name of the author. Null when not provided.
1372
+ */
1373
+ author_first_name?: string;
1374
+ /**
1375
+ * Last name of the author. Null when not provided.
1376
+ */
1377
+ author_last_name?: string;
1378
+ /**
1379
+ * Attachments associated with this message.
1380
+ */
1381
+ attachments?: Array<{
1382
+ /**
1383
+ * Unique identifier of the attachment (Mongo ObjectId).
1384
+ */
1385
+ id: string;
1386
+ /**
1387
+ * Original filename as uploaded.
1388
+ */
1389
+ filename: string;
1390
+ /**
1391
+ * MIME content type of the attachment.
1392
+ */
1393
+ content_type: string;
1394
+ /**
1395
+ * Size of the attachment in bytes.
1396
+ */
1397
+ size: number;
1398
+ }>;
1399
+ /**
1400
+ * Creation date of the message. ISO 8601 UTC.
1401
+ */
1402
+ date_created: string;
1403
+ };
1404
+ export type Ticket = {
1405
+ /**
1406
+ * Unique identifier of the ticket (Mongo ObjectId).
1407
+ */
1408
+ id: string;
1409
+ /**
1410
+ * Current state of the ticket.
1411
+ */
1412
+ status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
1413
+ /**
1414
+ * Ticket category.
1415
+ */
1416
+ category: 'billing' | 'technical' | 'general';
1417
+ /**
1418
+ * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1419
+ */
1420
+ summary: string;
1421
+ /**
1422
+ * Whether Cloudfleet support staff currently have access to the organization's resources. True once access is granted and until the ticket is closed.
1423
+ */
1424
+ support_access_granted: boolean;
1425
+ /**
1426
+ * When support access was granted. Null if it never was. Kept after the ticket is closed.
1427
+ */
1428
+ support_access_granted_at: string;
1429
+ /**
1430
+ * Closure timestamp. Null while the ticket is open.
1431
+ */
1432
+ closed_at?: string;
1433
+ /**
1434
+ * Creation date of the ticket. ISO 8601 UTC.
1435
+ */
1436
+ date_created: string;
1437
+ /**
1438
+ * Last update date of the ticket. ISO 8601 UTC.
1439
+ */
1440
+ date_updated: string;
1441
+ /**
1442
+ * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1443
+ */
1444
+ messages?: Array<{
1445
+ /**
1446
+ * Unique identifier of the message (Mongo ObjectId).
1447
+ */
1448
+ id: string;
1449
+ /**
1450
+ * Message type. Internal notes are filtered out of customer-facing responses.
1451
+ */
1452
+ type: 'customer_reply' | 'agent_reply';
1453
+ /**
1454
+ * Message body in markdown.
1455
+ */
1456
+ body: string;
1457
+ /**
1458
+ * First name of the author. Null when not provided.
1459
+ */
1460
+ author_first_name?: string;
1461
+ /**
1462
+ * Last name of the author. Null when not provided.
1463
+ */
1464
+ author_last_name?: string;
1465
+ /**
1466
+ * Attachments associated with this message.
1467
+ */
1468
+ attachments?: Array<{
1469
+ /**
1470
+ * Unique identifier of the attachment (Mongo ObjectId).
1471
+ */
1472
+ id: string;
1473
+ /**
1474
+ * Original filename as uploaded.
1475
+ */
1476
+ filename: string;
1477
+ /**
1478
+ * MIME content type of the attachment.
1479
+ */
1480
+ content_type: string;
1481
+ /**
1482
+ * Size of the attachment in bytes.
1483
+ */
1484
+ size: number;
1485
+ }>;
1486
+ /**
1487
+ * Creation date of the message. ISO 8601 UTC.
1488
+ */
1489
+ date_created: string;
1490
+ }>;
1491
+ };
1492
+ export type TokenCreateInput = {
1493
+ /**
1494
+ * Human readable access token name.
1495
+ */
1496
+ name: string;
1497
+ /**
1498
+ * Role assumed by the token.
1499
+ */
1500
+ role: 'Administrator' | 'User';
1501
+ };
1502
+ export type Token = {
1503
+ /**
1504
+ * Human readable access token name.
1505
+ */
1506
+ name: string;
1507
+ /**
1508
+ * Role assumed by the token.
1509
+ */
1510
+ role: 'Administrator' | 'User';
1511
+ /**
1512
+ * Generated unique identifier of the access token.
1513
+ */
1514
+ id?: string;
1515
+ /**
1516
+ * Access token secret. Unmasked only during creation.
1517
+ */
1518
+ secret?: string;
1519
+ /**
1520
+ * Creation date of the access token. ISO 8601 date string in UTC timezone
1521
+ */
1522
+ date_created: string;
1523
+ };
1524
+ export type TokenUpdateInput = {
1525
+ /**
1526
+ * Human readable access token name.
1527
+ */
1528
+ name?: string;
1529
+ /**
1530
+ * Role assumed by the token.
1531
+ */
1532
+ role?: 'Administrator' | 'User';
1533
+ };
1534
+ export type UsageFacets = {
1535
+ /**
1536
+ * List of unique cluster IDs
1537
+ */
1538
+ cluster_id?: Array<string>;
1539
+ /**
1540
+ * List of unique products
1541
+ */
1542
+ 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'>;
1543
+ };
1544
+ export type UsageResponse = {
1545
+ /**
1546
+ * Usage data
1547
+ */
1548
+ data: Array<{
1549
+ /**
1550
+ * Hour of the usage
1551
+ */
1552
+ hour: string;
1553
+ /**
1554
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1555
+ */
1556
+ cluster_id: string;
1557
+ /**
1558
+ * The product the usage is associated with
1559
+ */
1560
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1561
+ /**
1562
+ * Consumption
1563
+ */
1564
+ value: number;
1565
+ /**
1566
+ * Price per unit
1567
+ */
1568
+ price: number;
1569
+ /**
1570
+ * Total cost
1571
+ */
1572
+ total: number;
1573
+ }>;
1574
+ /**
1575
+ * Facets for filtering
1576
+ */
1577
+ facets: {
1578
+ /**
1579
+ * List of unique cluster IDs
1580
+ */
1581
+ cluster_id?: Array<string>;
1582
+ /**
1583
+ * List of unique products
1584
+ */
1585
+ 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'>;
1586
+ };
1587
+ };
1588
+ export type Usage = {
1589
+ /**
1590
+ * Hour of the usage
1591
+ */
1592
+ hour: string;
1593
+ /**
1594
+ * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
1595
+ */
1596
+ cluster_id: string;
1597
+ /**
1598
+ * The product the usage is associated with
1599
+ */
1600
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1601
+ /**
1602
+ * Consumption
1603
+ */
1604
+ value: number;
1605
+ /**
1606
+ * Price per unit
1607
+ */
1608
+ price: number;
1609
+ /**
1610
+ * Total cost
1611
+ */
1612
+ total: number;
1613
+ };
1614
+ export type UserCreateInput = {
1615
+ /**
1616
+ * User email address.
1617
+ */
1618
+ email: string;
1619
+ /**
1620
+ * User first name.
1621
+ */
1622
+ first_name: string;
1623
+ /**
1624
+ * User last name.
1625
+ */
1626
+ last_name: string;
1627
+ /**
1628
+ * Generated unique invite code.
1629
+ */
1630
+ code: string;
1631
+ /**
1632
+ * User password. Must be at least 8 characters long.
1633
+ */
1634
+ password: string;
1635
+ };
1636
+ export type User = {
1637
+ /**
1638
+ * User email address.
1639
+ */
1640
+ email: string;
1641
+ /**
1642
+ * User first name.
1643
+ */
1644
+ first_name: string;
1645
+ /**
1646
+ * User last name.
1647
+ */
1648
+ last_name: string;
1649
+ /**
1650
+ * User role. Can be 'Administrator', 'User'.
1651
+ */
1652
+ role: 'Administrator' | 'User';
1653
+ /**
1654
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1655
+ */
1656
+ status: 'active' | 'inactive';
1657
+ /**
1658
+ * Unique identifier of the user. UUID v4 string in canonical form
1659
+ */
1660
+ id: string;
1661
+ /**
1662
+ * Creation date of the user. ISO 8601 date string in UTC timezone
1663
+ */
1664
+ date_created: string;
1665
+ };
1666
+ export type UserUpdateInput = {
1667
+ /**
1668
+ * User email address.
1669
+ */
1670
+ email?: string;
1671
+ /**
1672
+ * User first name.
1673
+ */
1674
+ first_name?: string;
1675
+ /**
1676
+ * User last name.
1677
+ */
1678
+ last_name?: string;
1679
+ /**
1680
+ * User role. Can be 'Administrator', 'User'.
1681
+ */
1682
+ role?: 'Administrator' | 'User';
1683
+ /**
1684
+ * Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.
1685
+ */
1686
+ status?: 'active' | 'inactive';
1687
+ };
1688
+ export type ListUserOrganizationsData = {
1689
+ body?: never;
1690
+ path: {
1691
+ /**
1692
+ * User email address.
1693
+ */
1694
+ email: string;
1695
+ };
1696
+ query?: never;
1697
+ url: '/users/organizations/{email}';
1698
+ };
1699
+ export type ListUserOrganizationsResponses = {
1700
+ /**
1701
+ * An array of organizations the user belongs to.
1702
+ */
1703
+ 200: Array<{
1704
+ /**
1705
+ * Unique identifier of the organization. UUID v4 string in canonical form
1706
+ */
1707
+ realm?: string;
1708
+ /**
1709
+ * Human-readable name of the organization
1710
+ */
1711
+ displayName?: string;
1712
+ }>;
1713
+ };
1714
+ export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1715
+ export type ListUsersData = {
1716
+ body?: never;
1717
+ path?: never;
1718
+ query?: never;
1719
+ url: '/users';
1720
+ };
1721
+ export type ListUsersErrors = {
1722
+ /**
1723
+ * Not authenticated
1724
+ */
1725
+ 401: unknown;
1726
+ };
1727
+ export type ListUsersResponses = {
1728
+ /**
1729
+ * An array of users
1730
+ */
1731
+ 200: Array<User>;
1732
+ };
1733
+ export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1734
+ export type CreateUserData = {
1735
+ body: UserCreateInput;
1736
+ path?: never;
1737
+ query?: never;
1738
+ url: '/users';
1739
+ };
1740
+ export type CreateUserResponses = {
1741
+ /**
1742
+ * Successfully created. Returns created user details.
1743
+ */
1744
+ 200: User;
1745
+ };
1746
+ export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1747
+ export type DeleteUserData = {
1748
+ body?: never;
1749
+ path: {
1750
+ /**
1751
+ * Unique user identifier. UUID v4 string in canonical form
1752
+ */
1753
+ user_id: string;
1754
+ };
1755
+ query?: never;
1756
+ url: '/users/{user_id}';
1757
+ };
1758
+ export type DeleteUserErrors = {
1759
+ /**
1760
+ * Deleting own user is not allowed. Delete your organization instead.
1761
+ */
1762
+ 400: unknown;
1763
+ /**
1764
+ * Not authenticated
1765
+ */
1766
+ 401: unknown;
1767
+ };
1768
+ export type DeleteUserResponses = {
1769
+ /**
1770
+ * User profile information
1771
+ */
1772
+ 200: User;
1773
+ };
1774
+ export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1775
+ export type GetUserData = {
1776
+ body?: never;
1777
+ path: {
1778
+ /**
1779
+ * Unique user identifier. UUID v4 string in canonical form
1040
1780
  */
1041
- id?: string;
1781
+ user_id: string;
1782
+ };
1783
+ query?: never;
1784
+ url: '/users/{user_id}';
1785
+ };
1786
+ export type GetUserErrors = {
1787
+ /**
1788
+ * Not authenticated
1789
+ */
1790
+ 401: unknown;
1791
+ };
1792
+ export type GetUserResponses = {
1793
+ /**
1794
+ * User profile information
1795
+ */
1796
+ 200: User;
1797
+ };
1798
+ export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1799
+ export type UpdateUserData = {
1800
+ body: UserUpdateInput;
1801
+ path: {
1802
+ /**
1803
+ * Unique user identifier. UUID v4 string in canonical form
1804
+ */
1805
+ user_id: string;
1806
+ };
1807
+ query?: never;
1808
+ url: '/users/{user_id}';
1809
+ };
1810
+ export type UpdateUserResponses = {
1811
+ /**
1812
+ * Successfully created. Returns created user details.
1813
+ */
1814
+ 200: User;
1815
+ };
1816
+ export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1817
+ export type ListTokensData = {
1818
+ body?: never;
1819
+ path?: never;
1820
+ query?: never;
1821
+ url: '/tokens';
1822
+ };
1823
+ export type ListTokensErrors = {
1824
+ /**
1825
+ * Not authenticated
1826
+ */
1827
+ 401: unknown;
1828
+ };
1829
+ export type ListTokensResponses = {
1830
+ /**
1831
+ * Returns a list of access token details with masked secrets.
1832
+ */
1833
+ 200: Array<Token>;
1834
+ };
1835
+ export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1836
+ export type CreateTokenData = {
1837
+ body: TokenCreateInput;
1838
+ path?: never;
1839
+ query?: never;
1840
+ url: '/tokens';
1841
+ };
1842
+ export type CreateTokenErrors = {
1843
+ /**
1844
+ * Not authenticated
1845
+ */
1846
+ 401: unknown;
1847
+ };
1848
+ export type CreateTokenResponses = {
1849
+ /**
1850
+ * Successfully created. Returns created token details with unmasked/raw secret.
1851
+ */
1852
+ 200: Token;
1853
+ };
1854
+ export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1855
+ export type DeleteTokenData = {
1856
+ body?: never;
1857
+ path: {
1858
+ /**
1859
+ * Generated unique identifier of the access token.
1860
+ */
1861
+ token_id: string;
1862
+ };
1863
+ query?: never;
1864
+ url: '/tokens/{token_id}';
1865
+ };
1866
+ export type DeleteTokenResponses = {
1867
+ /**
1868
+ * Successfully deleted.
1869
+ */
1870
+ 200: unknown;
1871
+ };
1872
+ export type GetTokenData = {
1873
+ body?: never;
1874
+ path: {
1875
+ /**
1876
+ * Generated unique identifier of the access token.
1877
+ */
1878
+ token_id: string;
1879
+ };
1880
+ query?: never;
1881
+ url: '/tokens/{token_id}';
1882
+ };
1883
+ export type GetTokenErrors = {
1884
+ /**
1885
+ * Not authenticated
1886
+ */
1887
+ 401: unknown;
1888
+ };
1889
+ export type GetTokenResponses = {
1890
+ /**
1891
+ * Returns access token details with masked secret.
1892
+ */
1893
+ 200: Token;
1894
+ };
1895
+ export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1896
+ export type UpdateTokenData = {
1897
+ body: TokenUpdateInput;
1898
+ path: {
1899
+ /**
1900
+ * Generated unique identifier of the access token.
1901
+ */
1902
+ token_id: string;
1903
+ };
1904
+ query?: never;
1905
+ url: '/tokens/{token_id}';
1906
+ };
1907
+ export type UpdateTokenErrors = {
1908
+ /**
1909
+ * Not authenticated
1910
+ */
1911
+ 401: unknown;
1912
+ };
1913
+ export type UpdateTokenResponses = {
1914
+ /**
1915
+ * Successfully updated. Returns updated token details with masked secret.
1916
+ */
1917
+ 200: Token;
1918
+ };
1919
+ export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1920
+ export type RegenerateTokenData = {
1921
+ body?: never;
1922
+ path: {
1923
+ /**
1924
+ * Generated unique identifier of the access token.
1925
+ */
1926
+ token_id: string;
1927
+ };
1928
+ query?: never;
1929
+ url: '/tokens/{token_id}/secret';
1930
+ };
1931
+ export type RegenerateTokenErrors = {
1932
+ /**
1933
+ * Not authenticated
1934
+ */
1935
+ 401: unknown;
1936
+ };
1937
+ export type RegenerateTokenResponses = {
1938
+ /**
1939
+ * Successfully updated. Returns updated token details with unmasked / raw secret.
1940
+ */
1941
+ 200: Token;
1942
+ };
1943
+ export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1944
+ export type ListTicketsData = {
1945
+ body?: never;
1946
+ path?: never;
1947
+ query?: never;
1948
+ url: '/tickets';
1949
+ };
1950
+ export type ListTicketsResponses = {
1951
+ /**
1952
+ * An array of tickets for the organization, newest first.
1953
+ */
1954
+ 200: Array<Ticket>;
1955
+ };
1956
+ export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1957
+ export type CreateTicketData = {
1958
+ body: {
1959
+ /**
1960
+ * JSON-encoded TicketCreateInput.
1961
+ */
1962
+ payload?: string;
1963
+ attachments?: Array<Blob | File>;
1964
+ };
1965
+ path?: never;
1966
+ query?: never;
1967
+ url: '/tickets';
1968
+ };
1969
+ export type CreateTicketResponses = {
1970
+ /**
1971
+ * Ticket created.
1972
+ */
1973
+ 200: Ticket;
1974
+ };
1975
+ export type CreateTicketResponse = CreateTicketResponses[keyof CreateTicketResponses];
1976
+ export type CloseTicketData = {
1977
+ body?: never;
1978
+ path: {
1979
+ ticket_id: string;
1980
+ };
1981
+ query?: never;
1982
+ url: '/tickets/{ticket_id}';
1983
+ };
1984
+ export type CloseTicketResponses = {
1985
+ /**
1986
+ * Ticket closed.
1987
+ */
1988
+ 200: Ticket;
1989
+ };
1990
+ export type CloseTicketResponse = CloseTicketResponses[keyof CloseTicketResponses];
1991
+ export type GetTicketData = {
1992
+ body?: never;
1993
+ path: {
1994
+ ticket_id: string;
1995
+ };
1996
+ query?: never;
1997
+ url: '/tickets/{ticket_id}';
1998
+ };
1999
+ export type GetTicketResponses = {
2000
+ /**
2001
+ * Ticket with messages (internal notes excluded).
2002
+ */
2003
+ 200: Ticket;
2004
+ };
2005
+ export type GetTicketResponse = GetTicketResponses[keyof GetTicketResponses];
2006
+ export type GrantTicketSupportAccessData = {
2007
+ body?: never;
2008
+ path: {
2009
+ ticket_id: string;
2010
+ };
2011
+ query?: never;
2012
+ url: '/tickets/{ticket_id}/support-access';
2013
+ };
2014
+ export type GrantTicketSupportAccessErrors = {
2015
+ /**
2016
+ * Ticket is closed. Open a new ticket instead.
2017
+ */
2018
+ 409: unknown;
2019
+ };
2020
+ export type GrantTicketSupportAccessResponses = {
2021
+ /**
2022
+ * Support access granted.
2023
+ */
2024
+ 200: Ticket;
2025
+ };
2026
+ export type GrantTicketSupportAccessResponse = GrantTicketSupportAccessResponses[keyof GrantTicketSupportAccessResponses];
2027
+ export type ReplyTicketData = {
2028
+ body: {
2029
+ /**
2030
+ * JSON-encoded TicketMessageInput.
2031
+ */
2032
+ payload?: string;
2033
+ attachments?: Array<Blob | File>;
2034
+ };
2035
+ path: {
2036
+ ticket_id: string;
2037
+ };
2038
+ query?: never;
2039
+ url: '/tickets/{ticket_id}/messages';
2040
+ };
2041
+ export type ReplyTicketErrors = {
2042
+ /**
2043
+ * Ticket is closed. Open a new ticket instead.
2044
+ */
2045
+ 409: unknown;
2046
+ };
2047
+ export type ReplyTicketResponses = {
2048
+ /**
2049
+ * Reply appended.
2050
+ */
2051
+ 200: TicketMessage;
2052
+ };
2053
+ export type ReplyTicketResponse = ReplyTicketResponses[keyof ReplyTicketResponses];
2054
+ export type GetTicketAttachmentData = {
2055
+ body?: never;
2056
+ path: {
2057
+ ticket_id: string;
2058
+ attachment_id: string;
2059
+ };
2060
+ query?: never;
2061
+ url: '/tickets/{ticket_id}/attachments/{attachment_id}';
2062
+ };
2063
+ export type GetTicketAttachmentResponses = {
2064
+ /**
2065
+ * Attachment binary stream.
2066
+ */
2067
+ 200: Blob | File;
2068
+ };
2069
+ export type GetTicketAttachmentResponse = GetTicketAttachmentResponses[keyof GetTicketAttachmentResponses];
2070
+ export type ListRoadmapData = {
2071
+ body?: never;
2072
+ path?: never;
2073
+ query?: never;
2074
+ url: '/roadmap';
2075
+ };
2076
+ export type ListRoadmapResponses = {
2077
+ /**
2078
+ * An array of roadmap items, newest first.
2079
+ */
2080
+ 200: Array<RoadmapItem>;
2081
+ };
2082
+ export type ListRoadmapResponse = ListRoadmapResponses[keyof ListRoadmapResponses];
2083
+ export type SuggestRoadmapData = {
2084
+ body: RoadmapItemCreateInput;
2085
+ path?: never;
2086
+ query?: never;
2087
+ url: '/roadmap';
2088
+ };
2089
+ export type SuggestRoadmapResponses = {
2090
+ /**
2091
+ * Suggestion submitted for review.
2092
+ */
2093
+ 200: RoadmapItem;
2094
+ };
2095
+ export type SuggestRoadmapResponse = SuggestRoadmapResponses[keyof SuggestRoadmapResponses];
2096
+ export type UnvoteRoadmapData = {
2097
+ body?: never;
2098
+ path: {
2099
+ item_id: string;
1042
2100
  };
2101
+ query?: never;
2102
+ url: '/roadmap/{item_id}/vote';
1043
2103
  };
1044
- export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
1045
- export type ListInvoicesData = {
2104
+ export type UnvoteRoadmapErrors = {
2105
+ /**
2106
+ * Roadmap item not found.
2107
+ */
2108
+ 404: unknown;
2109
+ };
2110
+ export type UnvoteRoadmapResponses = {
2111
+ /**
2112
+ * Vote removed. Returns the item without a vote.
2113
+ */
2114
+ 200: RoadmapItem;
2115
+ };
2116
+ export type UnvoteRoadmapResponse = UnvoteRoadmapResponses[keyof UnvoteRoadmapResponses];
2117
+ export type VoteRoadmapData = {
2118
+ body: RoadmapVoteInput;
2119
+ path: {
2120
+ item_id: string;
2121
+ };
2122
+ query?: never;
2123
+ url: '/roadmap/{item_id}/vote';
2124
+ };
2125
+ export type VoteRoadmapErrors = {
2126
+ /**
2127
+ * Roadmap item not found.
2128
+ */
2129
+ 404: unknown;
2130
+ };
2131
+ export type VoteRoadmapResponses = {
2132
+ /**
2133
+ * Vote saved. Returns the item with your vote.
2134
+ */
2135
+ 200: RoadmapItem;
2136
+ };
2137
+ export type VoteRoadmapResponse = VoteRoadmapResponses[keyof VoteRoadmapResponses];
2138
+ export type ListRepositoriesData = {
1046
2139
  body?: never;
1047
2140
  path?: never;
1048
- query: {
2141
+ query?: never;
2142
+ url: '/registry';
2143
+ };
2144
+ export type ListRepositoriesErrors = {
2145
+ /**
2146
+ * Not authenticated
2147
+ */
2148
+ 401: unknown;
2149
+ /**
2150
+ * Internal server error
2151
+ */
2152
+ 500: unknown;
2153
+ };
2154
+ export type ListRepositoriesResponses = {
2155
+ /**
2156
+ * List of repositories
2157
+ */
2158
+ 200: Array<RegistryRepository>;
2159
+ };
2160
+ export type ListRepositoriesResponse = ListRepositoriesResponses[keyof ListRepositoriesResponses];
2161
+ export type ListTagsData = {
2162
+ body?: never;
2163
+ path: {
1049
2164
  /**
1050
- * Start date for the usage. Date of oldest data point to retrieve.
2165
+ * Region where the repository is located
1051
2166
  */
1052
- start_date: string;
2167
+ region: string;
1053
2168
  /**
1054
- * End date for the usage. Date of newest data point to retrieve.
2169
+ * Name of the repository
1055
2170
  */
1056
- end_date: string;
2171
+ repository: string;
1057
2172
  };
1058
- url: '/billing/invoices';
2173
+ query?: never;
2174
+ url: '/registry/{region}/{repository}';
1059
2175
  };
1060
- export type ListInvoicesErrors = {
2176
+ export type ListTagsErrors = {
1061
2177
  /**
1062
2178
  * Not authenticated
1063
2179
  */
1064
2180
  401: unknown;
2181
+ /**
2182
+ * Repository not found
2183
+ */
2184
+ 404: unknown;
2185
+ /**
2186
+ * Internal server error
2187
+ */
2188
+ 500: unknown;
1065
2189
  };
1066
- export type ListInvoicesResponses = {
2190
+ export type ListTagsResponses = {
1067
2191
  /**
1068
- * An array of usage records.
2192
+ * Repository with tags
1069
2193
  */
1070
- 200: Array<Invoice>;
2194
+ 200: RegistryRepositoryWithTags;
1071
2195
  };
1072
- export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
1073
- export type GetInvoiceData = {
2196
+ export type ListTagsResponse = ListTagsResponses[keyof ListTagsResponses];
2197
+ export type DeleteTagData = {
1074
2198
  body?: never;
1075
2199
  path: {
1076
2200
  /**
1077
- * Unique invoice identifier. UUID v4 string in canonical form
2201
+ * Region where the repository is located
1078
2202
  */
1079
- id: string;
2203
+ region: string;
2204
+ /**
2205
+ * Name of the repository
2206
+ */
2207
+ repository: string;
2208
+ /**
2209
+ * Name of the tag
2210
+ */
2211
+ tag: string;
1080
2212
  };
1081
2213
  query?: never;
1082
- url: '/billing/invoices/{id}';
2214
+ url: '/registry/{region}/{repository}/{tag}';
1083
2215
  };
1084
- export type GetInvoiceResponses = {
2216
+ export type DeleteTagErrors = {
2217
+ /**
2218
+ * Not authenticated
2219
+ */
2220
+ 401: unknown;
1085
2221
  /**
1086
- * Returns a single Invoice HTML representation under `html` property.
2222
+ * Tag not found
1087
2223
  */
1088
- 200: {
1089
- html?: string;
2224
+ 404: unknown;
2225
+ /**
2226
+ * Internal server error
2227
+ */
2228
+ 500: unknown;
2229
+ };
2230
+ export type DeleteTagResponses = {
2231
+ /**
2232
+ * Tag successfully deleted
2233
+ */
2234
+ 200: unknown;
2235
+ };
2236
+ export type GetTagData = {
2237
+ body?: never;
2238
+ path: {
2239
+ /**
2240
+ * Region where the repository is located
2241
+ */
2242
+ region: string;
2243
+ /**
2244
+ * Name of the repository
2245
+ */
2246
+ repository: string;
2247
+ /**
2248
+ * Name of the tag
2249
+ */
2250
+ tag: string;
1090
2251
  };
2252
+ query?: never;
2253
+ url: '/registry/{region}/{repository}/{tag}';
1091
2254
  };
1092
- export type GetInvoiceResponse = GetInvoiceResponses[keyof GetInvoiceResponses];
1093
- export type GetContactData = {
2255
+ export type GetTagErrors = {
2256
+ /**
2257
+ * Not authenticated
2258
+ */
2259
+ 401: unknown;
2260
+ /**
2261
+ * Tag not found
2262
+ */
2263
+ 404: unknown;
2264
+ /**
2265
+ * Internal server error
2266
+ */
2267
+ 500: unknown;
2268
+ };
2269
+ export type GetTagResponses = {
2270
+ /**
2271
+ * Tag details
2272
+ */
2273
+ 200: RegistryTag;
2274
+ };
2275
+ export type GetTagResponse = GetTagResponses[keyof GetTagResponses];
2276
+ export type GetOrganizationData = {
1094
2277
  body?: never;
1095
2278
  path?: never;
1096
2279
  query?: never;
1097
- url: '/billing/contact';
2280
+ url: '/organization';
1098
2281
  };
1099
- export type GetContactResponses = {
2282
+ export type GetOrganizationResponses = {
1100
2283
  /**
1101
- * Returns a single object containing organization contact and billing address details.
2284
+ * Returns a single object containing organization details.
1102
2285
  */
1103
- 200: BillingContact;
2286
+ 200: Organization;
1104
2287
  };
1105
- export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
1106
- export type UpdateContactData = {
1107
- body: BillingContact;
2288
+ export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
2289
+ export type CreateOrganizationData = {
2290
+ body: OrganizationCreateInput;
1108
2291
  path?: never;
1109
2292
  query?: never;
1110
- url: '/billing/contact';
2293
+ url: '/organization';
1111
2294
  };
1112
- export type UpdateContactResponses = {
2295
+ export type CreateOrganizationResponses = {
1113
2296
  /**
1114
- * Successfully updated. Returns updated organization details.
2297
+ * Organization signup accepted. Returns the generated organization id immediately; provisioning (billing, Keycloak realm, user) continues asynchronously in the background.
2298
+ *
1115
2299
  */
1116
- 200: BillingContact;
2300
+ 200: OrganizationCreateOutput;
1117
2301
  };
1118
- export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
1119
- export type GetCreditsData = {
1120
- body?: never;
2302
+ export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2303
+ export type PostMcpData = {
2304
+ /**
2305
+ * JSON-RPC 2.0 request payload
2306
+ */
2307
+ body: {
2308
+ jsonrpc?: string;
2309
+ method?: string;
2310
+ id?: string | number;
2311
+ /**
2312
+ * Method-specific parameters
2313
+ */
2314
+ params?: {
2315
+ [key: string]: unknown;
2316
+ };
2317
+ };
1121
2318
  path?: never;
1122
2319
  query?: never;
1123
- url: '/billing/credits';
2320
+ url: '/mcp';
1124
2321
  };
1125
- export type GetCreditsErrors = {
2322
+ export type PostMcpErrors = {
1126
2323
  /**
1127
2324
  * Not authenticated
1128
2325
  */
1129
2326
  401: unknown;
1130
2327
  };
1131
- export type GetCreditsResponses = {
2328
+ export type PostMcpResponses = {
1132
2329
  /**
1133
- * An array of the applied promotional credits records.
2330
+ * JSON-RPC 2.0 success or error response
1134
2331
  */
1135
- 200: Array<BillingCredits>;
1136
- };
1137
- export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
1138
- export type RedeemCreditsData = {
1139
- body: {
1140
- /**
1141
- * Promotional code to redeem
1142
- */
1143
- code?: string;
2332
+ 200: {
2333
+ jsonrpc?: string;
2334
+ id?: string | number;
2335
+ result?: {
2336
+ [key: string]: unknown;
2337
+ };
2338
+ error?: {
2339
+ code?: number;
2340
+ message?: string;
2341
+ };
1144
2342
  };
2343
+ };
2344
+ export type PostMcpResponse = PostMcpResponses[keyof PostMcpResponses];
2345
+ export type ListMarketplaceChartsData = {
2346
+ body?: never;
1145
2347
  path?: never;
1146
2348
  query?: never;
1147
- url: '/billing/credits';
2349
+ url: '/marketplace';
1148
2350
  };
1149
- export type RedeemCreditsErrors = {
2351
+ export type ListMarketplaceChartsErrors = {
1150
2352
  /**
1151
2353
  * Not authenticated
1152
2354
  */
1153
2355
  401: unknown;
1154
2356
  };
1155
- export type RedeemCreditsResponses = {
2357
+ export type ListMarketplaceChartsResponses = {
1156
2358
  /**
1157
- * Successfully created a new organization.
2359
+ * An array of chart listings in the marketplace.
1158
2360
  */
1159
- 200: unknown;
2361
+ 200: Array<MarketplaceListing>;
1160
2362
  };
1161
- export type ListChartsData = {
2363
+ export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
2364
+ export type GetMarketplaceChartFilesData = {
1162
2365
  body?: never;
1163
2366
  path: {
1164
2367
  /**
1165
- * Unique identifier of the cluster. UUID v4 string in canonical form
2368
+ * Name of the chart in the marketplace.
1166
2369
  */
1167
- cluster_id: string;
2370
+ chart_name: string;
2371
+ /**
2372
+ * 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).
2373
+ */
2374
+ version_channel: string;
1168
2375
  };
1169
2376
  query?: never;
1170
- url: '/clusters/{cluster_id}/charts';
2377
+ url: '/marketplace/{chart_name}/files/{version_channel}';
1171
2378
  };
1172
- export type ListChartsErrors = {
2379
+ export type GetMarketplaceChartFilesErrors = {
2380
+ /**
2381
+ * Chart not found or no version matches the channel
2382
+ */
2383
+ 404: unknown;
2384
+ };
2385
+ export type GetMarketplaceChartFilesResponses = {
2386
+ /**
2387
+ * Returns an object containing the chart files for the latest matching version.
2388
+ */
2389
+ 200: MarketplaceListingFiles;
2390
+ };
2391
+ export type GetMarketplaceChartFilesResponse = GetMarketplaceChartFilesResponses[keyof GetMarketplaceChartFilesResponses];
2392
+ export type ListInvitesData = {
2393
+ body?: never;
2394
+ path?: never;
2395
+ query?: never;
2396
+ url: '/invites';
2397
+ };
2398
+ export type ListInvitesErrors = {
1173
2399
  /**
1174
2400
  * Not authenticated
1175
2401
  */
1176
2402
  401: unknown;
1177
2403
  };
1178
- export type ListChartsResponses = {
2404
+ export type ListInvitesResponses = {
1179
2405
  /**
1180
- * An array of charts
2406
+ * An array of invites
1181
2407
  */
1182
- 200: Array<Chart>;
2408
+ 200: Array<Invite>;
1183
2409
  };
1184
- export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
1185
- export type CreateChartData = {
1186
- body: ChartCreateInput;
1187
- path: {
1188
- /**
1189
- * Unique identifier of the cluster. UUID v4 string in canonical form
1190
- */
1191
- cluster_id: string;
1192
- };
2410
+ export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
2411
+ export type CreateInviteData = {
2412
+ body: InviteCreateInput;
2413
+ path?: never;
1193
2414
  query?: never;
1194
- url: '/clusters/{cluster_id}/charts';
2415
+ url: '/invites';
1195
2416
  };
1196
- export type CreateChartResponses = {
2417
+ export type CreateInviteResponses = {
1197
2418
  /**
1198
- * Successfully created. Returns created Chart ID.
2419
+ * Successfully created. Returns created invite details.
1199
2420
  */
1200
- 200: string;
2421
+ 200: Invite;
1201
2422
  };
1202
- export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
1203
- export type DeleteChartData = {
2423
+ export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
2424
+ export type GetInviteData = {
1204
2425
  body?: never;
1205
2426
  path: {
1206
2427
  /**
1207
- * Unique identifier of the cluster. UUID v4 string in canonical form
1208
- */
1209
- cluster_id: string;
1210
- /**
1211
- * Chart deployment name as the unique identifier of the chart.
2428
+ * Invitation code
1212
2429
  */
1213
- chart_name: string;
2430
+ code: string;
1214
2431
  };
1215
2432
  query?: never;
1216
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2433
+ url: '/invites/{code}';
1217
2434
  };
1218
- export type DeleteChartResponses = {
2435
+ export type GetInviteResponses = {
1219
2436
  /**
1220
- * Successfully deleted.
2437
+ * The invitation code is valid. Returns the invited email and organization.
1221
2438
  */
1222
- 200: string;
2439
+ 200: {
2440
+ /**
2441
+ * Email address the invite was issued to.
2442
+ */
2443
+ email?: string;
2444
+ /**
2445
+ * Identifier of the organization the invite grants access to.
2446
+ */
2447
+ organization_id?: string;
2448
+ };
1223
2449
  };
1224
- export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
1225
- export type GetChartData = {
2450
+ export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
2451
+ export type DeleteInviteData = {
1226
2452
  body?: never;
1227
2453
  path: {
1228
2454
  /**
1229
- * Unique identifier of the cluster. UUID v4 string in canonical form
1230
- */
1231
- cluster_id: string;
1232
- /**
1233
- * Chart deployment name as the unique identifier of the chart.
2455
+ * User email address
1234
2456
  */
1235
- chart_name: string;
2457
+ email: string;
1236
2458
  };
1237
2459
  query?: never;
1238
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2460
+ url: '/invites/{email}';
1239
2461
  };
1240
- export type GetChartResponses = {
2462
+ export type DeleteInviteResponses = {
1241
2463
  /**
1242
- * Returns a single object containing chart details.
2464
+ * Successfully deleted.
1243
2465
  */
1244
- 200: Chart;
2466
+ 200: unknown;
1245
2467
  };
1246
- export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
1247
- export type UpdateChartData = {
1248
- body: ChartUpdateInput;
2468
+ export type QueryClusterData = {
2469
+ body?: never;
1249
2470
  path: {
1250
2471
  /**
1251
2472
  * Unique identifier of the cluster. UUID v4 string in canonical form
1252
2473
  */
1253
2474
  cluster_id: string;
1254
- /**
1255
- * Chart deployment name as the unique identifier of the chart.
1256
- */
1257
- chart_name: string;
1258
2475
  };
1259
2476
  query?: never;
1260
- url: '/clusters/{cluster_id}/charts/{chart_name}';
2477
+ url: '/clusters/{cluster_id}/query';
1261
2478
  };
1262
- export type UpdateChartResponses = {
2479
+ export type QueryClusterErrors = {
1263
2480
  /**
1264
- * Successfully updated.
2481
+ * Not authenticated
1265
2482
  */
1266
- 200: string;
2483
+ 401: unknown;
2484
+ };
2485
+ export type QueryClusterResponses = {
2486
+ /**
2487
+ * Kubernetes API response
2488
+ */
2489
+ 200: unknown;
1267
2490
  };
1268
- export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
1269
2491
  export type ListFleetsData = {
1270
2492
  body?: never;
1271
2493
  path: {
@@ -1306,6 +2528,10 @@ export type CreateFleetErrors = {
1306
2528
  * Cluster quota exceeded. Maximum number of fleets per cluster allowed in this organization is reached.
1307
2529
  */
1308
2530
  402: string;
2531
+ /**
2532
+ * 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.
2533
+ */
2534
+ 409: string;
1309
2535
  };
1310
2536
  export type CreateFleetError = CreateFleetErrors[keyof CreateFleetErrors];
1311
2537
  export type CreateFleetResponses = {
@@ -1330,6 +2556,13 @@ export type DeleteFleetData = {
1330
2556
  query?: never;
1331
2557
  url: '/clusters/{cluster_id}/fleets/{fleet_name}';
1332
2558
  };
2559
+ export type DeleteFleetErrors = {
2560
+ /**
2561
+ * 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.
2562
+ */
2563
+ 409: string;
2564
+ };
2565
+ export type DeleteFleetError = DeleteFleetErrors[keyof DeleteFleetErrors];
1333
2566
  export type DeleteFleetResponses = {
1334
2567
  /**
1335
2568
  * Successfully deleted.
@@ -1379,6 +2612,10 @@ export type UpdateFleetErrors = {
1379
2612
  * Organization must have a valid payment method configured to access this endpoint.
1380
2613
  */
1381
2614
  402: string;
2615
+ /**
2616
+ * 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.
2617
+ */
2618
+ 409: string;
1382
2619
  };
1383
2620
  export type UpdateFleetError = UpdateFleetErrors[keyof UpdateFleetErrors];
1384
2621
  export type UpdateFleetResponses = {
@@ -1388,7 +2625,7 @@ export type UpdateFleetResponses = {
1388
2625
  200: string;
1389
2626
  };
1390
2627
  export type UpdateFleetResponse = UpdateFleetResponses[keyof UpdateFleetResponses];
1391
- export type QueryClusterData = {
2628
+ export type ListChartsData = {
1392
2629
  body?: never;
1393
2630
  path: {
1394
2631
  /**
@@ -1397,528 +2634,516 @@ export type QueryClusterData = {
1397
2634
  cluster_id: string;
1398
2635
  };
1399
2636
  query?: never;
1400
- url: '/clusters/{cluster_id}/query';
1401
- };
1402
- export type QueryClusterErrors = {
1403
- /**
1404
- * Not authenticated
1405
- */
1406
- 401: unknown;
1407
- };
1408
- export type QueryClusterResponses = {
1409
- /**
1410
- * Kubernetes API response
1411
- */
1412
- 200: unknown;
1413
- };
1414
- export type ListClustersData = {
1415
- body?: never;
1416
- path?: never;
1417
- query?: never;
1418
- url: '/clusters';
2637
+ url: '/clusters/{cluster_id}/charts';
1419
2638
  };
1420
- export type ListClustersErrors = {
2639
+ export type ListChartsErrors = {
1421
2640
  /**
1422
2641
  * Not authenticated
1423
2642
  */
1424
2643
  401: unknown;
1425
2644
  };
1426
- export type ListClustersResponses = {
2645
+ export type ListChartsResponses = {
1427
2646
  /**
1428
- * An array of clusters
2647
+ * An array of charts
1429
2648
  */
1430
- 200: Array<Cluster>;
2649
+ 200: Array<Chart>;
1431
2650
  };
1432
- export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
1433
- export type CreateClusterData = {
1434
- body: ClusterCreateInput;
1435
- path?: never;
2651
+ export type ListChartsResponse = ListChartsResponses[keyof ListChartsResponses];
2652
+ export type CreateChartData = {
2653
+ body: ChartCreateInput;
2654
+ path: {
2655
+ /**
2656
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2657
+ */
2658
+ cluster_id: string;
2659
+ };
1436
2660
  query?: never;
1437
- url: '/clusters';
2661
+ url: '/clusters/{cluster_id}/charts';
1438
2662
  };
1439
- export type CreateClusterErrors = {
2663
+ export type CreateChartErrors = {
1440
2664
  /**
1441
- * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
2665
+ * 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.
1442
2666
  */
1443
- 402: string;
2667
+ 409: string;
1444
2668
  };
1445
- export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
1446
- export type CreateClusterResponses = {
2669
+ export type CreateChartError = CreateChartErrors[keyof CreateChartErrors];
2670
+ export type CreateChartResponses = {
1447
2671
  /**
1448
- * Successfully created. Returns created Cluster ID.
2672
+ * Successfully created. Returns created Chart ID.
1449
2673
  */
1450
2674
  200: string;
1451
2675
  };
1452
- export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
1453
- export type DeleteClusterData = {
2676
+ export type CreateChartResponse = CreateChartResponses[keyof CreateChartResponses];
2677
+ export type DeleteChartData = {
1454
2678
  body?: never;
1455
2679
  path: {
1456
2680
  /**
1457
2681
  * Unique identifier of the cluster. UUID v4 string in canonical form
1458
2682
  */
1459
2683
  cluster_id: string;
2684
+ /**
2685
+ * Chart deployment name as the unique identifier of the chart.
2686
+ */
2687
+ chart_name: string;
1460
2688
  };
1461
2689
  query?: never;
1462
- url: '/clusters/{cluster_id}';
2690
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1463
2691
  };
1464
- export type DeleteClusterResponses = {
2692
+ export type DeleteChartErrors = {
2693
+ /**
2694
+ * 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.
2695
+ */
2696
+ 409: string;
2697
+ };
2698
+ export type DeleteChartError = DeleteChartErrors[keyof DeleteChartErrors];
2699
+ export type DeleteChartResponses = {
1465
2700
  /**
1466
2701
  * Successfully deleted.
1467
2702
  */
1468
2703
  200: string;
1469
2704
  };
1470
- export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
1471
- export type GetClusterData = {
2705
+ export type DeleteChartResponse = DeleteChartResponses[keyof DeleteChartResponses];
2706
+ export type GetChartData = {
1472
2707
  body?: never;
1473
2708
  path: {
1474
2709
  /**
1475
2710
  * Unique identifier of the cluster. UUID v4 string in canonical form
1476
2711
  */
1477
2712
  cluster_id: string;
1478
- };
1479
- query?: never;
1480
- url: '/clusters/{cluster_id}';
1481
- };
1482
- export type GetClusterResponses = {
1483
- /**
1484
- * Returns a single object containing cluster details.
1485
- */
1486
- 200: Cluster;
1487
- };
1488
- export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
1489
- export type UpdateClusterData = {
1490
- body: ClusterUpdateInput;
1491
- path: {
1492
2713
  /**
1493
- * Unique identifier of the cluster. UUID v4 string in canonical form
2714
+ * Chart deployment name as the unique identifier of the chart.
1494
2715
  */
1495
- cluster_id: string;
2716
+ chart_name: string;
1496
2717
  };
1497
2718
  query?: never;
1498
- url: '/clusters/{cluster_id}';
2719
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1499
2720
  };
1500
- export type UpdateClusterResponses = {
2721
+ export type GetChartResponses = {
1501
2722
  /**
1502
- * Successfully updated. Returns updated cluster details.
2723
+ * Returns a single object containing chart details.
1503
2724
  */
1504
- 200: Cluster;
2725
+ 200: Chart;
1505
2726
  };
1506
- export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
1507
- export type GetJoinInformationData = {
1508
- body?: never;
2727
+ export type GetChartResponse = GetChartResponses[keyof GetChartResponses];
2728
+ export type UpdateChartData = {
2729
+ body: ChartUpdateInput;
1509
2730
  path: {
1510
2731
  /**
1511
2732
  * Unique identifier of the cluster. UUID v4 string in canonical form
1512
2733
  */
1513
2734
  cluster_id: string;
2735
+ /**
2736
+ * Chart deployment name as the unique identifier of the chart.
2737
+ */
2738
+ chart_name: string;
1514
2739
  };
1515
2740
  query?: never;
1516
- url: '/clusters/{cluster_id}/join_information';
2741
+ url: '/clusters/{cluster_id}/charts/{chart_name}';
1517
2742
  };
1518
- export type GetJoinInformationErrors = {
2743
+ export type UpdateChartErrors = {
1519
2744
  /**
1520
- * Not authenticated
2745
+ * 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.
1521
2746
  */
1522
- 401: unknown;
2747
+ 409: string;
1523
2748
  };
1524
- export type GetJoinInformationResponses = {
2749
+ export type UpdateChartError = UpdateChartErrors[keyof UpdateChartErrors];
2750
+ export type UpdateChartResponses = {
1525
2751
  /**
1526
- * An object of cluster join information
2752
+ * Successfully updated.
1527
2753
  */
1528
- 200: ClusterJoinInformation;
2754
+ 200: string;
1529
2755
  };
1530
- export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
1531
- export type ListInvitesData = {
2756
+ export type UpdateChartResponse = UpdateChartResponses[keyof UpdateChartResponses];
2757
+ export type ListClustersData = {
1532
2758
  body?: never;
1533
2759
  path?: never;
1534
2760
  query?: never;
1535
- url: '/invites';
2761
+ url: '/clusters';
1536
2762
  };
1537
- export type ListInvitesErrors = {
2763
+ export type ListClustersErrors = {
1538
2764
  /**
1539
2765
  * Not authenticated
1540
2766
  */
1541
2767
  401: unknown;
1542
2768
  };
1543
- export type ListInvitesResponses = {
2769
+ export type ListClustersResponses = {
1544
2770
  /**
1545
- * An array of invites
2771
+ * An array of clusters
1546
2772
  */
1547
- 200: Array<Invite>;
2773
+ 200: Array<Cluster>;
1548
2774
  };
1549
- export type ListInvitesResponse = ListInvitesResponses[keyof ListInvitesResponses];
1550
- export type CreateInviteData = {
1551
- body: {
1552
- /**
1553
- * User email address
1554
- */
1555
- email?: string;
1556
- };
2775
+ export type ListClustersResponse = ListClustersResponses[keyof ListClustersResponses];
2776
+ export type CreateClusterData = {
2777
+ body: ClusterCreateInput;
1557
2778
  path?: never;
1558
2779
  query?: never;
1559
- url: '/invites';
2780
+ url: '/clusters';
1560
2781
  };
1561
- export type CreateInviteResponses = {
2782
+ export type CreateClusterErrors = {
1562
2783
  /**
1563
- * Successfully created. Returns created invite details.
2784
+ * Cluster quota exceeded. Maximum number of clusters allowed in this organization is reached.
1564
2785
  */
1565
- 200: Invite;
1566
- };
1567
- export type CreateInviteResponse = CreateInviteResponses[keyof CreateInviteResponses];
1568
- export type GetInviteData = {
1569
- body?: never;
1570
- path: {
1571
- /**
1572
- * Invitation code
1573
- */
1574
- code: string;
1575
- };
1576
- query?: never;
1577
- url: '/invites/{code}';
2786
+ 402: string;
1578
2787
  };
1579
- export type GetInviteResponses = {
2788
+ export type CreateClusterError = CreateClusterErrors[keyof CreateClusterErrors];
2789
+ export type CreateClusterResponses = {
1580
2790
  /**
1581
- * Returns a single object containing invite details.
2791
+ * Successfully created. Returns created Cluster ID.
1582
2792
  */
1583
- 200: Invite;
2793
+ 200: string;
1584
2794
  };
1585
- export type GetInviteResponse = GetInviteResponses[keyof GetInviteResponses];
1586
- export type DeleteInviteData = {
2795
+ export type CreateClusterResponse = CreateClusterResponses[keyof CreateClusterResponses];
2796
+ export type DeleteClusterData = {
1587
2797
  body?: never;
1588
2798
  path: {
1589
2799
  /**
1590
- * User email address
2800
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1591
2801
  */
1592
- email: string;
2802
+ cluster_id: string;
1593
2803
  };
1594
2804
  query?: never;
1595
- url: '/invites/{email}';
2805
+ url: '/clusters/{cluster_id}';
1596
2806
  };
1597
- export type DeleteInviteResponses = {
2807
+ export type DeleteClusterErrors = {
1598
2808
  /**
1599
- * Successfully deleted.
2809
+ * Cluster not found; it does not exist or has already been deleted.
1600
2810
  */
1601
- 200: unknown;
1602
- };
1603
- export type ListMarketplaceChartsData = {
1604
- body?: never;
1605
- path?: never;
1606
- query?: never;
1607
- url: '/marketplace';
1608
- };
1609
- export type ListMarketplaceChartsErrors = {
2811
+ 404: unknown;
1610
2812
  /**
1611
- * Not authenticated
2813
+ * 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.
1612
2814
  */
1613
- 401: unknown;
2815
+ 409: string;
2816
+ /**
2817
+ * Transient failure tearing down the cluster; retry the request.
2818
+ */
2819
+ 503: unknown;
1614
2820
  };
1615
- export type ListMarketplaceChartsResponses = {
2821
+ export type DeleteClusterError = DeleteClusterErrors[keyof DeleteClusterErrors];
2822
+ export type DeleteClusterResponses = {
1616
2823
  /**
1617
- * An array of chart listings in the marketplace.
2824
+ * Successfully deleted. The cluster has been torn down.
1618
2825
  */
1619
- 200: Array<MarketplaceListing>;
2826
+ 200: string;
1620
2827
  };
1621
- export type ListMarketplaceChartsResponse = ListMarketplaceChartsResponses[keyof ListMarketplaceChartsResponses];
1622
- export type GetMarketplaceChartData = {
2828
+ export type DeleteClusterResponse = DeleteClusterResponses[keyof DeleteClusterResponses];
2829
+ export type GetClusterData = {
1623
2830
  body?: never;
1624
2831
  path: {
1625
2832
  /**
1626
- * Unique identifier of the chart listing in the marketplace.
2833
+ * Unique identifier of the cluster. UUID v4 string in canonical form
1627
2834
  */
1628
- listing_id: string;
2835
+ cluster_id: string;
1629
2836
  };
1630
2837
  query?: never;
1631
- url: '/marketplace/{listing_id}';
2838
+ url: '/clusters/{cluster_id}';
1632
2839
  };
1633
- export type GetMarketplaceChartResponses = {
2840
+ export type GetClusterResponses = {
1634
2841
  /**
1635
- * Returns an object containing the chart listing details.
2842
+ * Returns a single object containing cluster details.
1636
2843
  */
1637
- 200: MarketplaceListing;
2844
+ 200: Cluster;
1638
2845
  };
1639
- export type GetMarketplaceChartResponse = GetMarketplaceChartResponses[keyof GetMarketplaceChartResponses];
1640
- export type GetOrganizationData = {
1641
- body?: never;
1642
- path?: never;
2846
+ export type GetClusterResponse = GetClusterResponses[keyof GetClusterResponses];
2847
+ export type UpdateClusterData = {
2848
+ body: ClusterUpdateInput;
2849
+ path: {
2850
+ /**
2851
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2852
+ */
2853
+ cluster_id: string;
2854
+ };
1643
2855
  query?: never;
1644
- url: '/organization';
2856
+ url: '/clusters/{cluster_id}';
1645
2857
  };
1646
- export type GetOrganizationResponses = {
2858
+ export type UpdateClusterErrors = {
1647
2859
  /**
1648
- * Returns a single object containing organization details.
2860
+ * 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.
1649
2861
  */
1650
- 200: Organization;
1651
- };
1652
- export type GetOrganizationResponse = GetOrganizationResponses[keyof GetOrganizationResponses];
1653
- export type CreateOrganizationData = {
1654
- body: OrganizationCreateInput;
1655
- path?: never;
1656
- query?: never;
1657
- url: '/organization';
2862
+ 409: string;
1658
2863
  };
1659
- export type CreateOrganizationResponses = {
2864
+ export type UpdateClusterError = UpdateClusterErrors[keyof UpdateClusterErrors];
2865
+ export type UpdateClusterResponses = {
1660
2866
  /**
1661
- * Successfully created a new organization.
2867
+ * Successfully updated. Returns updated cluster details.
1662
2868
  */
1663
- 200: unknown;
2869
+ 200: Cluster;
1664
2870
  };
1665
- export type ListTokensData = {
2871
+ export type UpdateClusterResponse = UpdateClusterResponses[keyof UpdateClusterResponses];
2872
+ export type GetJoinInformationData = {
1666
2873
  body?: never;
1667
- path?: never;
2874
+ path: {
2875
+ /**
2876
+ * Unique identifier of the cluster. UUID v4 string in canonical form
2877
+ */
2878
+ cluster_id: string;
2879
+ };
1668
2880
  query?: never;
1669
- url: '/tokens';
2881
+ url: '/clusters/{cluster_id}/join_information';
1670
2882
  };
1671
- export type ListTokensErrors = {
2883
+ export type GetJoinInformationErrors = {
1672
2884
  /**
1673
2885
  * Not authenticated
1674
2886
  */
1675
2887
  401: unknown;
2888
+ /**
2889
+ * 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.
2890
+ */
2891
+ 409: string;
2892
+ /**
2893
+ * The cluster runs on Cloudfleet data plane v2 and the calling client did not declare the dataplane-v2 capability, so it cannot provision a node for it. Upgrade the Cloudfleet CLI or Terraform provider.
2894
+ */
2895
+ 426: string;
1676
2896
  };
1677
- export type ListTokensResponses = {
2897
+ export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2898
+ export type GetJoinInformationResponses = {
1678
2899
  /**
1679
- * Returns a list of access token details with masked secrets.
2900
+ * An object of cluster join information
1680
2901
  */
1681
- 200: Array<Token>;
2902
+ 200: ClusterJoinInformation;
1682
2903
  };
1683
- export type ListTokensResponse = ListTokensResponses[keyof ListTokensResponses];
1684
- export type CreateTokenData = {
1685
- body: TokenCreateInput;
2904
+ export type GetJoinInformationResponse = GetJoinInformationResponses[keyof GetJoinInformationResponses];
2905
+ export type GetUsageData = {
2906
+ body?: never;
1686
2907
  path?: never;
1687
- query?: never;
1688
- url: '/tokens';
2908
+ query?: {
2909
+ /**
2910
+ * 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)
2911
+ */
2912
+ granularity?: 'hourly' | 'daily' | 'monthly';
2913
+ };
2914
+ url: '/billing/usage';
1689
2915
  };
1690
- export type CreateTokenErrors = {
2916
+ export type GetUsageErrors = {
1691
2917
  /**
1692
2918
  * Not authenticated
1693
2919
  */
1694
2920
  401: unknown;
1695
2921
  };
1696
- export type CreateTokenResponses = {
2922
+ export type GetUsageResponses = {
1697
2923
  /**
1698
- * Successfully created. Returns created token details with unmasked/raw secret.
2924
+ * Usage data with facets for filtering
1699
2925
  */
1700
- 200: Token;
2926
+ 200: UsageResponse;
1701
2927
  };
1702
- export type CreateTokenResponse = CreateTokenResponses[keyof CreateTokenResponses];
1703
- export type DeleteTokenData = {
2928
+ export type GetUsageResponse = GetUsageResponses[keyof GetUsageResponses];
2929
+ export type GetPaymentMethodSecretData = {
1704
2930
  body?: never;
1705
- path: {
1706
- /**
1707
- * Generated unique identifier of the access token.
1708
- */
1709
- token_id: string;
1710
- };
2931
+ path?: never;
1711
2932
  query?: never;
1712
- url: '/tokens/{token_id}';
2933
+ url: '/billing/payment-method';
1713
2934
  };
1714
- export type DeleteTokenResponses = {
2935
+ export type GetPaymentMethodSecretResponses = {
1715
2936
  /**
1716
- * Successfully deleted.
2937
+ * 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.
2938
+ *
1717
2939
  */
1718
- 200: unknown;
1719
- };
1720
- export type GetTokenData = {
1721
- body?: never;
1722
- path: {
2940
+ 200: {
1723
2941
  /**
1724
- * Generated unique identifier of the access token.
2942
+ * The client secret.
1725
2943
  */
1726
- token_id: string;
2944
+ id?: string;
1727
2945
  };
2946
+ };
2947
+ export type GetPaymentMethodSecretResponse = GetPaymentMethodSecretResponses[keyof GetPaymentMethodSecretResponses];
2948
+ export type ListPaymentMethodsData = {
2949
+ body?: never;
2950
+ path?: never;
1728
2951
  query?: never;
1729
- url: '/tokens/{token_id}';
2952
+ url: '/billing/payment-methods';
1730
2953
  };
1731
- export type GetTokenErrors = {
2954
+ export type ListPaymentMethodsErrors = {
1732
2955
  /**
1733
2956
  * Not authenticated
1734
2957
  */
1735
2958
  401: unknown;
1736
2959
  };
1737
- export type GetTokenResponses = {
2960
+ export type ListPaymentMethodsResponses = {
1738
2961
  /**
1739
- * Returns access token details with masked secret.
2962
+ * An array of payment methods.
1740
2963
  */
1741
- 200: Token;
2964
+ 200: Array<PaymentMethod>;
1742
2965
  };
1743
- export type GetTokenResponse = GetTokenResponses[keyof GetTokenResponses];
1744
- export type UpdateTokenData = {
1745
- body: TokenUpdateInput;
2966
+ export type ListPaymentMethodsResponse = ListPaymentMethodsResponses[keyof ListPaymentMethodsResponses];
2967
+ export type SetDefaultPaymentMethodData = {
2968
+ body?: never;
1746
2969
  path: {
1747
2970
  /**
1748
- * Generated unique identifier of the access token.
2971
+ * Stripe payment method identifier.
1749
2972
  */
1750
- token_id: string;
2973
+ paymentMethodId: string;
1751
2974
  };
1752
2975
  query?: never;
1753
- url: '/tokens/{token_id}';
2976
+ url: '/billing/payment-methods/{paymentMethodId}/default';
1754
2977
  };
1755
- export type UpdateTokenErrors = {
2978
+ export type SetDefaultPaymentMethodErrors = {
2979
+ /**
2980
+ * The bank transfer payment method cannot be set as the default.
2981
+ */
2982
+ 400: unknown;
1756
2983
  /**
1757
2984
  * Not authenticated
1758
2985
  */
1759
2986
  401: unknown;
2987
+ /**
2988
+ * Payment method not found.
2989
+ */
2990
+ 404: unknown;
1760
2991
  };
1761
- export type UpdateTokenResponses = {
2992
+ export type SetDefaultPaymentMethodResponses = {
1762
2993
  /**
1763
- * Successfully updated. Returns updated token details with masked secret.
2994
+ * Default payment method updated.
1764
2995
  */
1765
- 200: Token;
2996
+ 204: void;
1766
2997
  };
1767
- export type UpdateTokenResponse = UpdateTokenResponses[keyof UpdateTokenResponses];
1768
- export type RegenerateTokenData = {
2998
+ export type SetDefaultPaymentMethodResponse = SetDefaultPaymentMethodResponses[keyof SetDefaultPaymentMethodResponses];
2999
+ export type DeletePaymentMethodData = {
1769
3000
  body?: never;
1770
3001
  path: {
1771
3002
  /**
1772
- * Generated unique identifier of the access token.
3003
+ * Stripe payment method identifier.
1773
3004
  */
1774
- token_id: string;
3005
+ paymentMethodId: string;
1775
3006
  };
1776
3007
  query?: never;
1777
- url: '/tokens/{token_id}/secret';
3008
+ url: '/billing/payment-methods/{paymentMethodId}';
1778
3009
  };
1779
- export type RegenerateTokenErrors = {
3010
+ export type DeletePaymentMethodErrors = {
3011
+ /**
3012
+ * The bank transfer payment method cannot be removed.
3013
+ */
3014
+ 400: unknown;
1780
3015
  /**
1781
3016
  * Not authenticated
1782
3017
  */
1783
3018
  401: unknown;
1784
- };
1785
- export type RegenerateTokenResponses = {
1786
3019
  /**
1787
- * Successfully updated. Returns updated token details with unmasked / raw secret.
3020
+ * Payment method not found.
1788
3021
  */
1789
- 200: Token;
1790
- };
1791
- export type RegenerateTokenResponse = RegenerateTokenResponses[keyof RegenerateTokenResponses];
1792
- export type ListUserOrganizationsData = {
1793
- body?: never;
1794
- path: {
1795
- /**
1796
- * User email address.
1797
- */
1798
- email: string;
1799
- };
1800
- query?: never;
1801
- url: '/users/organizations/{email}';
3022
+ 404: unknown;
3023
+ /**
3024
+ * Cannot delete the only remaining payment method.
3025
+ */
3026
+ 409: unknown;
1802
3027
  };
1803
- export type ListUserOrganizationsResponses = {
3028
+ export type DeletePaymentMethodResponses = {
1804
3029
  /**
1805
- * An array of organizations the user belongs to.
3030
+ * Payment method deleted.
1806
3031
  */
1807
- 200: Array<{
1808
- /**
1809
- * Unique identifier of the organization. UUID v4 string in canonical form
1810
- */
1811
- realm?: string;
1812
- /**
1813
- * Human-readable name of the organization
1814
- */
1815
- displayName?: string;
1816
- }>;
3032
+ 204: void;
1817
3033
  };
1818
- export type ListUserOrganizationsResponse = ListUserOrganizationsResponses[keyof ListUserOrganizationsResponses];
1819
- export type ListUsersData = {
3034
+ export type DeletePaymentMethodResponse = DeletePaymentMethodResponses[keyof DeletePaymentMethodResponses];
3035
+ export type ListInvoicesData = {
1820
3036
  body?: never;
1821
3037
  path?: never;
1822
3038
  query?: never;
1823
- url: '/users';
3039
+ url: '/billing/invoices';
1824
3040
  };
1825
- export type ListUsersErrors = {
3041
+ export type ListInvoicesErrors = {
1826
3042
  /**
1827
3043
  * Not authenticated
1828
3044
  */
1829
3045
  401: unknown;
1830
3046
  };
1831
- export type ListUsersResponses = {
3047
+ export type ListInvoicesResponses = {
1832
3048
  /**
1833
- * An array of users
3049
+ * An array of usage records.
1834
3050
  */
1835
- 200: Array<User>;
3051
+ 200: Array<Invoice>;
1836
3052
  };
1837
- export type ListUsersResponse = ListUsersResponses[keyof ListUsersResponses];
1838
- export type CreateUserData = {
1839
- body: UserCreateInput;
3053
+ export type ListInvoicesResponse = ListInvoicesResponses[keyof ListInvoicesResponses];
3054
+ export type PayOpenInvoicesData = {
3055
+ body?: never;
1840
3056
  path?: never;
1841
3057
  query?: never;
1842
- url: '/users';
3058
+ url: '/billing/invoices/pay';
1843
3059
  };
1844
- export type CreateUserResponses = {
3060
+ export type PayOpenInvoicesErrors = {
1845
3061
  /**
1846
- * Successfully created. Returns created user details.
3062
+ * The organization has no payment method that can be charged.
1847
3063
  */
1848
- 200: User;
3064
+ 400: unknown;
3065
+ /**
3066
+ * Not authenticated
3067
+ */
3068
+ 401: unknown;
3069
+ /**
3070
+ * Too many payment attempts for this organization.
3071
+ */
3072
+ 429: unknown;
1849
3073
  };
1850
- export type CreateUserResponse = CreateUserResponses[keyof CreateUserResponses];
1851
- export type DeleteUserData = {
3074
+ export type PayOpenInvoicesResponses = {
3075
+ /**
3076
+ * The outcome of the attempt.
3077
+ */
3078
+ 200: InvoicePaymentResult;
3079
+ };
3080
+ export type PayOpenInvoicesResponse = PayOpenInvoicesResponses[keyof PayOpenInvoicesResponses];
3081
+ export type GetContactData = {
1852
3082
  body?: never;
1853
- path: {
1854
- /**
1855
- * Unique user identifier. UUID v4 string in canonical form
1856
- */
1857
- user_id: string;
1858
- };
3083
+ path?: never;
1859
3084
  query?: never;
1860
- url: '/users/{user_id}';
3085
+ url: '/billing/contact';
1861
3086
  };
1862
- export type DeleteUserErrors = {
1863
- /**
1864
- * Deleting own user is not allowed. Delete your organization instead.
1865
- */
1866
- 400: unknown;
3087
+ export type GetContactResponses = {
1867
3088
  /**
1868
- * Not authenticated
3089
+ * Returns a single object containing organization contact and billing address details.
1869
3090
  */
1870
- 401: unknown;
3091
+ 200: BillingContact;
1871
3092
  };
1872
- export type DeleteUserResponses = {
3093
+ export type GetContactResponse = GetContactResponses[keyof GetContactResponses];
3094
+ export type UpdateContactData = {
3095
+ body: BillingContact;
3096
+ path?: never;
3097
+ query?: never;
3098
+ url: '/billing/contact';
3099
+ };
3100
+ export type UpdateContactResponses = {
1873
3101
  /**
1874
- * User profile information
3102
+ * Successfully updated. Returns updated organization details.
1875
3103
  */
1876
- 200: User;
3104
+ 200: BillingContact;
1877
3105
  };
1878
- export type DeleteUserResponse = DeleteUserResponses[keyof DeleteUserResponses];
1879
- export type GetUserData = {
3106
+ export type UpdateContactResponse = UpdateContactResponses[keyof UpdateContactResponses];
3107
+ export type GetCreditsData = {
1880
3108
  body?: never;
1881
- path: {
1882
- /**
1883
- * Unique user identifier. UUID v4 string in canonical form
1884
- */
1885
- user_id: string;
1886
- };
3109
+ path?: never;
1887
3110
  query?: never;
1888
- url: '/users/{user_id}';
3111
+ url: '/billing/credits';
1889
3112
  };
1890
- export type GetUserErrors = {
3113
+ export type GetCreditsErrors = {
1891
3114
  /**
1892
3115
  * Not authenticated
1893
3116
  */
1894
3117
  401: unknown;
1895
3118
  };
1896
- export type GetUserResponses = {
3119
+ export type GetCreditsResponses = {
1897
3120
  /**
1898
- * User profile information
3121
+ * An array of the applied promotional credits records.
1899
3122
  */
1900
- 200: User;
3123
+ 200: Array<BillingCredits>;
1901
3124
  };
1902
- export type GetUserResponse = GetUserResponses[keyof GetUserResponses];
1903
- export type UpdateUserData = {
1904
- body: UserUpdateInput;
1905
- path: {
3125
+ export type GetCreditsResponse = GetCreditsResponses[keyof GetCreditsResponses];
3126
+ export type RedeemCreditsData = {
3127
+ body: {
1906
3128
  /**
1907
- * Unique user identifier. UUID v4 string in canonical form
3129
+ * Promotional code to redeem
1908
3130
  */
1909
- user_id: string;
3131
+ code?: string;
1910
3132
  };
3133
+ path?: never;
1911
3134
  query?: never;
1912
- url: '/users/{user_id}';
3135
+ url: '/billing/credits';
1913
3136
  };
1914
- export type UpdateUserResponses = {
3137
+ export type RedeemCreditsErrors = {
1915
3138
  /**
1916
- * Successfully created. Returns created user details.
3139
+ * Not authenticated
1917
3140
  */
1918
- 200: User;
3141
+ 401: unknown;
1919
3142
  };
1920
- export type UpdateUserResponse = UpdateUserResponses[keyof UpdateUserResponses];
1921
- export type ClientOptions = {
1922
- baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3143
+ export type RedeemCreditsResponses = {
3144
+ /**
3145
+ * Successfully created a new organization.
3146
+ */
3147
+ 200: unknown;
1923
3148
  };
1924
3149
  //# sourceMappingURL=types.gen.d.ts.map