@cloudfleet/sdk 0.0.1-b5444d4 → 0.0.1-b687cb9

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.
@@ -1,6 +1,26 @@
1
1
  export type ClientOptions = {
2
2
  baseUrl: 'https://api.cloudfleet.ai/v1' | (string & {});
3
3
  };
4
+ export type BasicPriceConsentInput = {
5
+ /**
6
+ * The administrator's decision on the new Basic price. `accepted` continues to paid billing when the signup credit runs out; `rejected` opts out (clusters are suspended, never charged). A `rejected` org can later be flipped back to `accepted`.
7
+ */
8
+ decision: 'accepted' | 'rejected';
9
+ };
10
+ export type BasicPriceConsent = {
11
+ /**
12
+ * Consent status for the new Basic price. `not_applicable` when the organization is not in scope for the migration. `pending` when the organization must opt in but no admin has decided yet. `accepted` / `rejected` reflect the recorded decision.
13
+ */
14
+ status: 'not_applicable' | 'pending' | 'accepted' | 'rejected';
15
+ /**
16
+ * When the current decision was recorded. Absent while `not_applicable` or `pending`.
17
+ */
18
+ decided_at?: string;
19
+ /**
20
+ * User id of the administrator who recorded the current decision. Absent while `not_applicable` or `pending`.
21
+ */
22
+ decided_by?: string;
23
+ };
4
24
  export type BillingContact = {
5
25
  /**
6
26
  * Type of the organization. `business` for legal entities, `personal` for individuals.
@@ -163,6 +183,9 @@ export type ChartUpdateInput = {
163
183
  */
164
184
  version_channel: string;
165
185
  };
186
+ /**
187
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
188
+ */
166
189
  export type ClusterCreateInput = {
167
190
  /**
168
191
  * Name of the cluster.
@@ -171,11 +194,7 @@ export type ClusterCreateInput = {
171
194
  /**
172
195
  * Tier of the cluster.
173
196
  */
174
- tier: 'basic' | 'pro';
175
- /**
176
- * Cloudfleet control plane region. This field can not be updated after creation.
177
- */
178
- region: string;
197
+ tier?: 'basic' | 'pro' | 'enterprise';
179
198
  /**
180
199
  * Version of the kubernetes cluster.
181
200
  */
@@ -191,16 +210,20 @@ export type ClusterCreateInput = {
191
210
  /**
192
211
  * GPU sharing strategy.
193
212
  */
194
- gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
213
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
195
214
  /**
196
215
  * Maximum number of pods that may share a single GPU.
197
216
  */
198
- gpu_max_shared_clients_per_gpu: number;
217
+ gpu_max_shared_clients_per_gpu?: number;
199
218
  /**
200
219
  * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
201
220
  */
202
221
  cilium_socket_lb_host_namespace_only?: boolean;
203
222
  };
223
+ /**
224
+ * Cloudfleet control plane region. This field can not be updated after creation.
225
+ */
226
+ region: string;
204
227
  /**
205
228
  * Cluster networking configuration. Immutable after creation.
206
229
  */
@@ -213,10 +236,6 @@ export type ClusterCreateInput = {
213
236
  * CIDR block for service IPs.
214
237
  */
215
238
  service_cidr?: string;
216
- /**
217
- * CoreDNS service IP.
218
- */
219
- cluster_dns?: string;
220
239
  /**
221
240
  * Enable IPv4+IPv6 dual-stack networking.
222
241
  */
@@ -252,6 +271,10 @@ export type ClusterJoinInformation = {
252
271
  * Authentication key for the cluster.
253
272
  */
254
273
  auth_key: string;
274
+ /**
275
+ * 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.
276
+ */
277
+ login_server: string;
255
278
  /**
256
279
  * Bootstrap token for the cluster.
257
280
  */
@@ -295,6 +318,9 @@ export type ClusterJoinInformation = {
295
318
  gcp_workload_identity_provider: string;
296
319
  };
297
320
  };
321
+ /**
322
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
323
+ */
298
324
  export type Cluster = {
299
325
  /**
300
326
  * Name of the cluster.
@@ -303,7 +329,32 @@ export type Cluster = {
303
329
  /**
304
330
  * Tier of the cluster.
305
331
  */
306
- tier: 'basic' | 'pro';
332
+ tier: 'basic' | 'pro' | 'enterprise';
333
+ /**
334
+ * Version of the kubernetes cluster.
335
+ */
336
+ version_channel: string;
337
+ /**
338
+ * Release channel for the cluster's control plane.
339
+ */
340
+ release_channel: 'rapid' | 'stable' | 'extended';
341
+ /**
342
+ * Cluster feature toggles.
343
+ */
344
+ features: {
345
+ /**
346
+ * GPU sharing strategy.
347
+ */
348
+ gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
349
+ /**
350
+ * Maximum number of pods that may share a single GPU.
351
+ */
352
+ gpu_max_shared_clients_per_gpu: number;
353
+ /**
354
+ * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
355
+ */
356
+ cilium_socket_lb_host_namespace_only: boolean;
357
+ };
307
358
  /**
308
359
  * Cloudfleet control plane region. This field can not be updated after creation.
309
360
  */
@@ -311,52 +362,27 @@ export type Cluster = {
311
362
  /**
312
363
  * Cluster networking configuration. Immutable after creation.
313
364
  */
314
- networking?: {
365
+ networking: {
315
366
  /**
316
367
  * CIDR block for pod IPs.
317
368
  */
318
- pod_cidr?: string;
369
+ pod_cidr: string;
319
370
  /**
320
371
  * CIDR block for service IPs.
321
372
  */
322
- service_cidr?: string;
323
- /**
324
- * CoreDNS service IP.
325
- */
326
- cluster_dns?: string;
373
+ service_cidr: string;
327
374
  /**
328
375
  * Enable IPv4+IPv6 dual-stack networking.
329
376
  */
330
- dual_stack?: boolean;
377
+ dual_stack: boolean;
331
378
  /**
332
379
  * IPv6 pod CIDR. Requires dual_stack.
333
380
  */
334
- pod_cidr_v6?: string;
381
+ pod_cidr_v6: string;
335
382
  /**
336
383
  * IPv6 service CIDR. Requires dual_stack.
337
384
  */
338
- service_cidr_v6?: string;
339
- };
340
- /**
341
- * Release channel for the cluster's control plane.
342
- */
343
- release_channel?: 'rapid' | 'stable' | 'extended';
344
- /**
345
- * Cluster feature toggles.
346
- */
347
- features?: {
348
- /**
349
- * GPU sharing strategy.
350
- */
351
- gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
352
- /**
353
- * Maximum number of pods that may share a single GPU.
354
- */
355
- gpu_max_shared_clients_per_gpu: number;
356
- /**
357
- * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
358
- */
359
- cilium_socket_lb_host_namespace_only?: boolean;
385
+ service_cidr_v6: string;
360
386
  };
361
387
  /**
362
388
  * Unique identifier of the kubernetes cluster. UUID v4 string in canonical form
@@ -387,21 +413,20 @@ export type Cluster = {
387
413
  /**
388
414
  * Indicates if the cluster is ready to be used.
389
415
  */
390
- ready?: boolean;
391
- /**
392
- * Version of the kubernetes cluster.
393
- */
394
- version_channel?: string;
416
+ ready: boolean;
395
417
  };
418
+ /**
419
+ * Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
420
+ */
396
421
  export type ClusterUpdateInput = {
397
422
  /**
398
423
  * Name of the cluster.
399
424
  */
400
- name?: string;
425
+ name: string;
401
426
  /**
402
427
  * Tier of the cluster.
403
428
  */
404
- tier: 'basic' | 'pro';
429
+ tier?: 'basic' | 'pro' | 'enterprise';
405
430
  /**
406
431
  * Version of the kubernetes cluster.
407
432
  */
@@ -417,17 +442,20 @@ export type ClusterUpdateInput = {
417
442
  /**
418
443
  * GPU sharing strategy.
419
444
  */
420
- gpu_sharing_strategy: 'none' | 'mps' | 'time_slicing';
445
+ gpu_sharing_strategy?: 'none' | 'mps' | 'time_slicing';
421
446
  /**
422
447
  * Maximum number of pods that may share a single GPU.
423
448
  */
424
- gpu_max_shared_clients_per_gpu: number;
449
+ gpu_max_shared_clients_per_gpu?: number;
425
450
  /**
426
451
  * Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.
427
452
  */
428
453
  cilium_socket_lb_host_namespace_only?: boolean;
429
454
  };
430
455
  };
456
+ /**
457
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
458
+ */
431
459
  export type FleetCreateInput = {
432
460
  /**
433
461
  * Limits define a set of bounds for provisioning capacity.
@@ -448,7 +476,7 @@ export type FleetCreateInput = {
448
476
  hetzner?: {
449
477
  enabled: boolean;
450
478
  /**
451
- * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
479
+ * 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.
452
480
  */
453
481
  apiKey?: string;
454
482
  };
@@ -460,7 +488,7 @@ export type FleetCreateInput = {
460
488
  controllerRoleArn?: string;
461
489
  };
462
490
  /**
463
- * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
491
+ * 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.
464
492
  */
465
493
  constraints?: {
466
494
  /**
@@ -481,7 +509,7 @@ export type FleetCreateInput = {
481
509
  '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'>;
482
510
  };
483
511
  /**
484
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
512
+ * 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`).
485
513
  */
486
514
  scalingProfile?: 'aggressive' | 'conservative';
487
515
  /**
@@ -489,6 +517,9 @@ export type FleetCreateInput = {
489
517
  */
490
518
  id: string;
491
519
  };
520
+ /**
521
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
522
+ */
492
523
  export type Fleet = {
493
524
  /**
494
525
  * Limits define a set of bounds for provisioning capacity.
@@ -521,17 +552,17 @@ export type Fleet = {
521
552
  controllerRoleArn?: string;
522
553
  };
523
554
  /**
524
- * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
555
+ * 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.
525
556
  */
526
- constraints?: {
557
+ constraints: {
527
558
  /**
528
559
  * Allowed values for `karpenter.sh/capacity-type`.
529
560
  */
530
- 'karpenter.sh/capacity-type'?: Array<'on-demand' | 'spot'>;
561
+ 'karpenter.sh/capacity-type': Array<'on-demand' | 'spot'>;
531
562
  /**
532
563
  * Allowed values for `kubernetes.io/arch`.
533
564
  */
534
- 'kubernetes.io/arch'?: Array<'amd64' | 'arm64'>;
565
+ 'kubernetes.io/arch': Array<'amd64' | 'arm64'>;
535
566
  /**
536
567
  * Allowed values for `cfke.io/instance-family`.
537
568
  */
@@ -542,7 +573,7 @@ export type Fleet = {
542
573
  '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'>;
543
574
  };
544
575
  /**
545
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
576
+ * 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`).
546
577
  */
547
578
  scalingProfile: 'aggressive' | 'conservative';
548
579
  /**
@@ -566,6 +597,9 @@ export type Fleet = {
566
597
  */
567
598
  updated_at: string;
568
599
  };
600
+ /**
601
+ * Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.
602
+ */
569
603
  export type FleetUpdateInput = {
570
604
  /**
571
605
  * Limits define a set of bounds for provisioning capacity.
@@ -586,7 +620,7 @@ export type FleetUpdateInput = {
586
620
  hetzner?: {
587
621
  enabled: boolean;
588
622
  /**
589
- * Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.
623
+ * 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.
590
624
  */
591
625
  apiKey?: string;
592
626
  };
@@ -598,7 +632,7 @@ export type FleetUpdateInput = {
598
632
  controllerRoleArn?: string;
599
633
  };
600
634
  /**
601
- * Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.
635
+ * 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.
602
636
  */
603
637
  constraints?: {
604
638
  /**
@@ -619,9 +653,9 @@ export type FleetUpdateInput = {
619
653
  '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'>;
620
654
  };
621
655
  /**
622
- * Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.
656
+ * 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`).
623
657
  */
624
- scalingProfile: 'aggressive' | 'conservative';
658
+ scalingProfile?: 'aggressive' | 'conservative';
625
659
  };
626
660
  export type InviteCreateInput = {
627
661
  /**
@@ -846,6 +880,14 @@ export type Organization = {
846
880
  * Available number of Pro clusters that can be created.
847
881
  */
848
882
  pro_clusters_available: number;
883
+ /**
884
+ * Maximum number of Enterprise clusters that can be created.
885
+ */
886
+ enterprise_clusters_max: number;
887
+ /**
888
+ * Available number of Enterprise clusters that can be created.
889
+ */
890
+ enterprise_clusters_available: number;
849
891
  /**
850
892
  * Maximum number of fleets that can be created per cluster.
851
893
  */
@@ -944,6 +986,14 @@ export type PlatformQuota = {
944
986
  * Available number of Pro clusters that can be created.
945
987
  */
946
988
  pro_clusters_available: number;
989
+ /**
990
+ * Maximum number of Enterprise clusters that can be created.
991
+ */
992
+ enterprise_clusters_max: number;
993
+ /**
994
+ * Available number of Enterprise clusters that can be created.
995
+ */
996
+ enterprise_clusters_available: number;
947
997
  /**
948
998
  * Maximum number of fleets that can be created per cluster.
949
999
  */
@@ -1156,91 +1206,6 @@ export type TicketCreateInput = {
1156
1206
  [key: string]: unknown;
1157
1207
  };
1158
1208
  };
1159
- export type TicketListResponse = {
1160
- /**
1161
- * Tickets for the organization, ordered newest first. Messages are omitted from list responses.
1162
- */
1163
- items: Array<{
1164
- /**
1165
- * Unique identifier of the ticket (Mongo ObjectId).
1166
- */
1167
- id: string;
1168
- /**
1169
- * Current state of the ticket.
1170
- */
1171
- status: 'waiting_on_us' | 'waiting_on_user' | 'closed';
1172
- /**
1173
- * Ticket category.
1174
- */
1175
- category: 'billing' | 'technical' | 'general';
1176
- /**
1177
- * First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.
1178
- */
1179
- summary: string;
1180
- /**
1181
- * Closure timestamp. Null while the ticket is open.
1182
- */
1183
- closed_at?: string;
1184
- /**
1185
- * Creation date of the ticket. ISO 8601 UTC.
1186
- */
1187
- date_created: string;
1188
- /**
1189
- * Last update date of the ticket. ISO 8601 UTC.
1190
- */
1191
- date_updated: string;
1192
- /**
1193
- * Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.
1194
- */
1195
- messages?: Array<{
1196
- /**
1197
- * Unique identifier of the message (Mongo ObjectId).
1198
- */
1199
- id: string;
1200
- /**
1201
- * Message type. Internal notes are filtered out of customer-facing responses.
1202
- */
1203
- type: 'customer_reply' | 'agent_reply';
1204
- /**
1205
- * Message body in markdown.
1206
- */
1207
- body: string;
1208
- /**
1209
- * First name of the author. Null when not provided.
1210
- */
1211
- author_first_name?: string;
1212
- /**
1213
- * Last name of the author. Null when not provided.
1214
- */
1215
- author_last_name?: string;
1216
- /**
1217
- * Attachments associated with this message.
1218
- */
1219
- attachments?: Array<{
1220
- /**
1221
- * Unique identifier of the attachment (Mongo ObjectId).
1222
- */
1223
- id: string;
1224
- /**
1225
- * Original filename as uploaded.
1226
- */
1227
- filename: string;
1228
- /**
1229
- * MIME content type of the attachment.
1230
- */
1231
- content_type: string;
1232
- /**
1233
- * Size of the attachment in bytes.
1234
- */
1235
- size: number;
1236
- }>;
1237
- /**
1238
- * Creation date of the message. ISO 8601 UTC.
1239
- */
1240
- date_created: string;
1241
- }>;
1242
- }>;
1243
- };
1244
1209
  export type TicketMessageInput = {
1245
1210
  /**
1246
1211
  * Reply body in markdown.
@@ -1424,7 +1389,7 @@ export type UsageFacets = {
1424
1389
  /**
1425
1390
  * List of unique products
1426
1391
  */
1427
- product?: Array<string>;
1392
+ 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'>;
1428
1393
  };
1429
1394
  export type UsageResponse = {
1430
1395
  /**
@@ -1442,7 +1407,7 @@ export type UsageResponse = {
1442
1407
  /**
1443
1408
  * The product the usage is associated with
1444
1409
  */
1445
- product: string;
1410
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1446
1411
  /**
1447
1412
  * Consumption
1448
1413
  */
@@ -1467,7 +1432,7 @@ export type UsageResponse = {
1467
1432
  /**
1468
1433
  * List of unique products
1469
1434
  */
1470
- product?: Array<string>;
1435
+ 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'>;
1471
1436
  };
1472
1437
  };
1473
1438
  export type Usage = {
@@ -1482,7 +1447,7 @@ export type Usage = {
1482
1447
  /**
1483
1448
  * The product the usage is associated with
1484
1449
  */
1485
- product: string;
1450
+ product: 'cfke_controlplane_basic' | 'cfke_controlplane_pro' | 'cfke_controlplane_enterprise' | 'cfke_connected_nodes_basic' | 'cfke_connected_nodes_pro' | 'cfke_connected_nodes_enterprise' | 'cfcr_storage';
1486
1451
  /**
1487
1452
  * Consumption
1488
1453
  */
@@ -1834,9 +1799,9 @@ export type ListTicketsData = {
1834
1799
  };
1835
1800
  export type ListTicketsResponses = {
1836
1801
  /**
1837
- * Tickets for the organization.
1802
+ * An array of tickets for the organization, newest first.
1838
1803
  */
1839
- 200: TicketListResponse;
1804
+ 200: Array<Ticket>;
1840
1805
  };
1841
1806
  export type ListTicketsResponse = ListTicketsResponses[keyof ListTicketsResponses];
1842
1807
  export type CreateTicketData = {
@@ -2096,6 +2061,43 @@ export type CreateOrganizationResponses = {
2096
2061
  200: OrganizationCreateOutput;
2097
2062
  };
2098
2063
  export type CreateOrganizationResponse = CreateOrganizationResponses[keyof CreateOrganizationResponses];
2064
+ export type GetBasicPriceConsentData = {
2065
+ body?: never;
2066
+ path?: never;
2067
+ query?: never;
2068
+ url: '/organization/basic-price-consent';
2069
+ };
2070
+ export type GetBasicPriceConsentResponses = {
2071
+ /**
2072
+ * Returns the current consent status.
2073
+ */
2074
+ 200: BasicPriceConsent;
2075
+ };
2076
+ export type GetBasicPriceConsentResponse = GetBasicPriceConsentResponses[keyof GetBasicPriceConsentResponses];
2077
+ export type SetBasicPriceConsentData = {
2078
+ body: BasicPriceConsentInput;
2079
+ path?: never;
2080
+ query?: never;
2081
+ url: '/organization/basic-price-consent';
2082
+ };
2083
+ export type SetBasicPriceConsentErrors = {
2084
+ /**
2085
+ * The authenticated principal has no email address (e.g. a service account) and cannot record this decision.
2086
+ *
2087
+ */
2088
+ 401: unknown;
2089
+ /**
2090
+ * The consent flow does not apply to this organization.
2091
+ */
2092
+ 409: unknown;
2093
+ };
2094
+ export type SetBasicPriceConsentResponses = {
2095
+ /**
2096
+ * Decision recorded. Returns the updated consent status.
2097
+ */
2098
+ 200: BasicPriceConsent;
2099
+ };
2100
+ export type SetBasicPriceConsentResponse = SetBasicPriceConsentResponses[keyof SetBasicPriceConsentResponses];
2099
2101
  export type PostMcpData = {
2100
2102
  /**
2101
2103
  * JSON-RPC 2.0 request payload
@@ -2602,7 +2604,7 @@ export type DeleteClusterData = {
2602
2604
  };
2603
2605
  export type DeleteClusterErrors = {
2604
2606
  /**
2605
- * Cluster not found it does not exist or has already been deleted.
2607
+ * Cluster not found; it does not exist or has already been deleted.
2606
2608
  */
2607
2609
  404: unknown;
2608
2610
  /**
@@ -2685,6 +2687,10 @@ export type GetJoinInformationErrors = {
2685
2687
  * 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.
2686
2688
  */
2687
2689
  409: string;
2690
+ /**
2691
+ * 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.
2692
+ */
2693
+ 426: string;
2688
2694
  };
2689
2695
  export type GetJoinInformationError = GetJoinInformationErrors[keyof GetJoinInformationErrors];
2690
2696
  export type GetJoinInformationResponses = {