@cloudfleet/sdk 0.0.1-4a07f21 → 0.0.1-4b464e3

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.
package/dist/sdk.gen.js CHANGED
@@ -1,61 +1,69 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
2
  import { formDataBodySerializer } from './client';
3
3
  import { client } from './client.gen';
4
- export class BillingService {
4
+ export class UsersService {
5
5
  /**
6
- * Get billing usage information.
7
- *
8
- * Returns aggregated usage information for the organization with facets for filtering. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
9
- *
6
+ * Get a list of organizations the user belongs to. Used during authentication process.
10
7
  */
11
- static getUsage(options) {
12
- return (options?.client ?? client).get({ url: '/billing/usage', ...options });
8
+ static listUserOrganizations(options) {
9
+ return (options.client ?? client).get({ url: '/users/organizations/{email}', ...options });
13
10
  }
14
11
  /**
15
- * Get organization payment method information.
12
+ * List users in organization.
16
13
  *
17
- * Returns the information about the payment card associated with the organization with sensitive information redacted. Payment details can be updated in the Cloudfleet console only, please visit https://console.cloudfleet.ai. This endpoint is available to all users in the organization.
14
+ * Returns a list of user details and their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
15
+ *
16
+ * This endpoint is available to all users in the organization.
18
17
  *
19
18
  */
20
- static getPaymentMethod(options) {
21
- return (options?.client ?? client).get({ url: '/billing/payment-method', ...options });
19
+ static listUsers(options) {
20
+ return (options?.client ?? client).get({ url: '/users', ...options });
22
21
  }
23
22
  /**
24
- * Get Stripe client secret.
23
+ * Create a new user.
25
24
  *
26
- * Endpoint returns the Stripe secret key for the organization. This key is used to securely update the payment method in the Cloudfleet console only, please visit https://console.cloudfleet.ai. This endpoint is available to administrators of the organization only.
25
+ * Create a new user in your Cloudfleet organization. Requires a valid invite code generated by the `invites create` command. The invite code is a unique string that can be used only once to create a new user. The invite code is generated by the `POST /invites` endpoint.
27
26
  *
28
27
  */
29
- static getPaymentMethodSecret(options) {
30
- return (options?.client ?? client).put({ url: '/billing/payment-method', ...options });
28
+ static createUser(options) {
29
+ return (options.client ?? client).post({
30
+ url: '/users',
31
+ ...options,
32
+ headers: {
33
+ 'Content-Type': 'application/json',
34
+ ...options.headers
35
+ }
36
+ });
31
37
  }
32
38
  /**
33
- * List issued invoices.
39
+ * Delete user by id.
34
40
  *
35
- * Returns a list of invoices for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
41
+ * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
36
42
  *
37
43
  */
38
- static listInvoices(options) {
39
- return (options?.client ?? client).get({ url: '/billing/invoices', ...options });
44
+ static deleteUser(options) {
45
+ return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
40
46
  }
41
47
  /**
42
- * Get organization contact and billing address information.
48
+ * Get user profile information by id.
43
49
  *
44
- * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
50
+ * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
51
+ *
52
+ * This endpoint is available to all users in the organization.
45
53
  *
46
54
  */
47
- static getContact(options) {
48
- return (options?.client ?? client).get({ url: '/billing/contact', ...options });
55
+ static getUser(options) {
56
+ return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
49
57
  }
50
58
  /**
51
- * Update organization contact information and billing address.
59
+ * Update user profile information.
52
60
  *
53
- * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
61
+ * Update user profile information: email, first name, last name, role. This endpoint can be accessed by administrators and the user itself. Role and status can be changed by administrators only.
54
62
  *
55
63
  */
56
- static updateContact(options) {
64
+ static updateUser(options) {
57
65
  return (options.client ?? client).put({
58
- url: '/billing/contact',
66
+ url: '/users/{user_id}',
59
67
  ...options,
60
68
  headers: {
61
69
  'Content-Type': 'application/json',
@@ -63,24 +71,28 @@ export class BillingService {
63
71
  }
64
72
  });
65
73
  }
74
+ }
75
+ export class TokensService {
66
76
  /**
67
- * Get applied promotional credits
77
+ * List access tokens in organization.
68
78
  *
69
- * Returns applied promotional credits for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
79
+ * This endpoint allows you to get a list of all access tokens details in organization. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
70
80
  *
71
81
  */
72
- static getCredits(options) {
73
- return (options?.client ?? client).get({ url: '/billing/credits', ...options });
82
+ static listTokens(options) {
83
+ return (options?.client ?? client).get({ url: '/tokens', ...options });
74
84
  }
75
85
  /**
76
- * Redeem promotional credits code.
86
+ * Create a new access token.
77
87
  *
78
- * Applies promotional credits for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
88
+ * This endpoint allows you to create a new access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
89
+ *
90
+ * This endpoint is available to administrators of the organization only.
79
91
  *
80
92
  */
81
- static redeemCredits(options) {
93
+ static createToken(options) {
82
94
  return (options.client ?? client).post({
83
- url: '/billing/credits',
95
+ url: '/tokens',
84
96
  ...options,
85
97
  headers: {
86
98
  'Content-Type': 'application/json',
@@ -88,30 +100,35 @@ export class BillingService {
88
100
  }
89
101
  });
90
102
  }
91
- }
92
- export class ClustersService {
93
103
  /**
94
- * List charts.
104
+ * Permanently delete access token.
95
105
  *
96
- * Returns a list of charts in the cluster.
106
+ * This endpoint allows you to delete an access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to administrators of the organization only.
97
107
  *
98
- * This endpoint is available to all users in the organization.
108
+ */
109
+ static deleteToken(options) {
110
+ return (options.client ?? client).delete({ url: '/tokens/{token_id}', ...options });
111
+ }
112
+ /**
113
+ * Get access token information.
114
+ *
115
+ * This endpoint allows you to get access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
99
116
  *
100
117
  */
101
- static listCharts(options) {
102
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts', ...options });
118
+ static getToken(options) {
119
+ return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
103
120
  }
104
121
  /**
105
- * Create a new chart.
122
+ * Update access token information.
106
123
  *
107
- * Create a new chart deployment.
124
+ * This endpoint allows you to update access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
108
125
  *
109
126
  * This endpoint is available to administrators of the organization only.
110
127
  *
111
128
  */
112
- static createChart(options) {
113
- return (options.client ?? client).post({
114
- url: '/clusters/{cluster_id}/charts',
129
+ static updateToken(options) {
130
+ return (options.client ?? client).put({
131
+ url: '/tokens/{token_id}',
115
132
  ...options,
116
133
  headers: {
117
134
  'Content-Type': 'application/json',
@@ -120,148 +137,139 @@ export class ClustersService {
120
137
  });
121
138
  }
122
139
  /**
123
- * Permanently delete the chart deployment from the cluster.
124
- *
125
- * This endpoint will permanently delete chart. This operation cannot be undone.
126
- *
127
- * This endpoint is available to administrators of the organization only.
140
+ * Regenerate access token secret key.
128
141
  *
142
+ * Generates a new access token secret. Old secret will not be valid anymore.
129
143
  */
130
- static deleteChart(options) {
131
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
144
+ static regenerateToken(options) {
145
+ return (options.client ?? client).put({ url: '/tokens/{token_id}/secret', ...options });
132
146
  }
147
+ }
148
+ export class TicketsService {
133
149
  /**
134
- * Get chart information.
135
- *
136
- * Returns the details of the chart deployment.
150
+ * List tickets for the current organization.
137
151
  *
138
- * This endpoint is available to all users in the organization.
152
+ * Returns all tickets belonging to the caller's organization, newest first.
139
153
  *
140
154
  */
141
- static getChart(options) {
142
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
155
+ static listTickets(options) {
156
+ return (options?.client ?? client).get({ url: '/tickets', ...options });
143
157
  }
144
158
  /**
145
- * Update chart information.
146
- *
147
- * This endpoint allows you to update the values of a chart deployment.
159
+ * Create a new support ticket.
148
160
  *
149
- * This endpoint is available to administrators of the organization only.
161
+ * Creates a new support ticket with an initial customer message. The request is `multipart/form-data` with a JSON-encoded `payload` field carrying `category`, `body`, and optional `properties`, plus up to 3 `attachments` files (10 MB max each).
150
162
  *
151
163
  */
152
- static updateChart(options) {
153
- return (options.client ?? client).put({
154
- url: '/clusters/{cluster_id}/charts/{chart_name}',
164
+ static createTicket(options) {
165
+ return (options.client ?? client).post({
166
+ ...formDataBodySerializer,
167
+ url: '/tickets',
155
168
  ...options,
156
169
  headers: {
157
- 'Content-Type': 'application/json',
170
+ 'Content-Type': null,
158
171
  ...options.headers
159
172
  }
160
173
  });
161
174
  }
162
175
  /**
163
- * List fleets.
164
- *
165
- * Returns a list of fleets belonging to the cluster. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
176
+ * Close a ticket (soft close).
166
177
  *
167
- * This endpoint is available to all users in the organization.
178
+ * Marks the ticket as closed. Closed is a terminal state — users cannot reply to a closed ticket; a new ticket must be opened instead.
168
179
  *
169
180
  */
170
- static listFleets(options) {
171
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets', ...options });
181
+ static closeTicket(options) {
182
+ return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
172
183
  }
173
184
  /**
174
- * Create a new fleet.
175
- *
176
- * Create a new fleet under the current organization. fleets allow you to to schedule workloads in cloud service provider accounts owned by you. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
185
+ * Get a ticket and its messages.
186
+ */
187
+ static getTicket(options) {
188
+ return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
189
+ }
190
+ /**
191
+ * Append a customer reply to a ticket.
177
192
  *
178
- * This endpoint is available to administrators of the organization only.
193
+ * Multipart form-data with a JSON-encoded `payload` field carrying `body`, plus up to 3 `attachments` files. Returns 409 if the ticket is closed.
179
194
  *
180
195
  */
181
- static createFleet(options) {
196
+ static replyTicket(options) {
182
197
  return (options.client ?? client).post({
183
- url: '/clusters/{cluster_id}/fleets',
198
+ ...formDataBodySerializer,
199
+ url: '/tickets/{ticket_id}/messages',
184
200
  ...options,
185
201
  headers: {
186
- 'Content-Type': 'application/json',
202
+ 'Content-Type': null,
187
203
  ...options.headers
188
204
  }
189
205
  });
190
206
  }
191
207
  /**
192
- * Permanently delete fleet.
193
- *
194
- * This endpoint will permanently delete fleet. This operation cannot be undone. Your subscription will end by the end of the current billing period and you will not be able to receive credit for unused time. If you want to keep using the Fleet until the end of the billing period, set the status to `cancelling`. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
195
- *
196
- * This endpoint is available to administrators of the organization only.
197
- *
208
+ * Download a ticket attachment.
198
209
  */
199
- static deleteFleet(options) {
200
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
210
+ static getTicketAttachment(options) {
211
+ return (options.client ?? client).get({ url: '/tickets/{ticket_id}/attachments/{attachment_id}', ...options });
201
212
  }
213
+ }
214
+ export class RegistryService {
202
215
  /**
203
- * Get fleet information.
204
- *
205
- * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
216
+ * List repositories
206
217
  *
207
- * This endpoint is available to all users in the organization.
218
+ * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
208
219
  *
209
220
  */
210
- static getFleet(options) {
211
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
221
+ static listRepositories(options) {
222
+ return (options?.client ?? client).get({ url: '/registry', ...options });
212
223
  }
213
224
  /**
214
- * Update fleet information.
215
- *
216
- * This endpoint allows you to update fleet details.
225
+ * List tags for a repository
217
226
  *
218
- * Setting status to `deleted` will permanently delete fleet. This operation cannot be undone. Your subscription will end by the end of the current billing period and you will not be able to receive credit for unused time. If you want to keep using the Fleet until the end of the billing period, set the status to `cancelling`.
227
+ * Returns a list of tags for a specific repository, including size and metadata for each tag. This endpoint is available to all users in the organization.
219
228
  *
220
- * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
229
+ */
230
+ static listTags(options) {
231
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}', ...options });
232
+ }
233
+ /**
234
+ * Delete tag
221
235
  *
222
- * This endpoint is available to administrators of the organization only.
236
+ * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
223
237
  *
224
238
  */
225
- static updateFleet(options) {
226
- return (options.client ?? client).put({
227
- url: '/clusters/{cluster_id}/fleets/{fleet_name}',
228
- ...options,
229
- headers: {
230
- 'Content-Type': 'application/json',
231
- ...options.headers
232
- }
233
- });
239
+ static deleteTag(options) {
240
+ return (options.client ?? client).delete({ url: '/registry/{region}/{repository}/{tag}', ...options });
234
241
  }
235
242
  /**
236
- * Query Kubernetes cluster API
243
+ * Get tag details
244
+ *
245
+ * Returns detailed information for a specific tag in a repository, including manifest details, size, and URI. This endpoint is available to all users in the organization.
237
246
  *
238
- * An API endpoint for directly querying a Kubernetes cluster API without requiring kubectl or other tools. This endpoint is ideal for automation and scripting, as well as for internal use in fetching data for the Cloudfleet Console. It acts as a passthrough to the Kubernetes API, allowing access to any valid Kubernetes API endpoint, including those not exposed in the Cloudfleet Console. The endpoint is strictly read-only, ensuring no modifications to the cluster state. It is accessible to all users within the organization and uses the same authentication mechanisms as other Cloudfleet API endpoints.
239
247
  */
240
- static queryCluster(options) {
241
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
248
+ static getTag(options) {
249
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}/{tag}', ...options });
242
250
  }
251
+ }
252
+ export class OrganizationService {
243
253
  /**
244
- * List clusters.
254
+ * Get organization information.
245
255
  *
246
- * Returns a list of clusters under the current organization, including quota. Quota is a set of filters defined by the admin of the organization that will be applied to all resources created in the cluster. Quota information returned here does not take into account quota set on organization or platform level. For calculated quota applied to this account, use /clusters/{cluster_id}/quota endpoint. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
256
+ * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
247
257
  *
248
258
  * This endpoint is available to all users in the organization.
249
259
  *
250
260
  */
251
- static listClusters(options) {
252
- return (options?.client ?? client).get({ url: '/clusters', ...options });
261
+ static getOrganization(options) {
262
+ return (options?.client ?? client).get({ url: '/organization', ...options });
253
263
  }
254
264
  /**
255
- * Create a new cluster.
256
- *
257
- * Create a new cluster under the current organization. Clusters allow you to group resources and you can create multiple clusters under the same organization, with billing delegated to the parent organization.
265
+ * Create a new organization / Cloudfleet account signup.
258
266
  *
259
- * This endpoint is available to administrators of the organization only.
267
+ * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
260
268
  *
261
269
  */
262
- static createCluster(options) {
270
+ static createOrganization(options) {
263
271
  return (options.client ?? client).post({
264
- url: '/clusters',
272
+ url: '/organization',
265
273
  ...options,
266
274
  headers: {
267
275
  'Content-Type': 'application/json',
@@ -270,38 +278,42 @@ export class ClustersService {
270
278
  });
271
279
  }
272
280
  /**
273
- * Permanently delete cluster.
281
+ * Get the organization's consent status for the new Basic price.
274
282
  *
275
- * This endpoint will permanently delete the cluster. This operation cannot be undone.
283
+ * Returns the organization's consent status for the migration from the free tier to the paid Basic plan. `pending` means an administrator must opt in; `not_applicable` means the organization is not in scope for the migration; `accepted` / `rejected` reflect a recorded decision.
276
284
  *
277
- * This endpoint is available to administrators of the organization only.
285
+ * This endpoint is available to all users in the organization and drives the consent dialog in the console.
278
286
  *
279
287
  */
280
- static deleteCluster(options) {
281
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
288
+ static getBasicPriceConsent(options) {
289
+ return (options?.client ?? client).get({ url: '/organization/basic-price-consent', ...options });
282
290
  }
283
291
  /**
284
- * Get cluster information.
292
+ * Record an administrator's decision on the new Basic price.
285
293
  *
286
- * Returns cluster details including quota. Quota is a set of filters defined by the admin of the organization that will be applied to all resources created in the cluster. Quota information returned here does not take into account quota set on organization or platform level. For calculated quota applied to this account, use /clusters/{cluster_id}/quota endpoint. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
287
- *
288
- * This endpoint is available to all users in the organization.
294
+ * Records an affirmative decision to continue on the paid Basic plan (`accepted`) or to opt out (`rejected`). This is an organization-binding financial decision, so it is restricted to administrators. Each call appends an immutable audit entry (who and when) and sends a confirmation email to the acting administrator.
289
295
  *
290
296
  */
291
- static getCluster(options) {
292
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
297
+ static setBasicPriceConsent(options) {
298
+ return (options.client ?? client).post({
299
+ url: '/organization/basic-price-consent',
300
+ ...options,
301
+ headers: {
302
+ 'Content-Type': 'application/json',
303
+ ...options.headers
304
+ }
305
+ });
293
306
  }
307
+ }
308
+ export class McpService {
294
309
  /**
295
- * Update cluster information.
296
- *
297
- * This endpoint allows you to update cluster details, including quota and cluster status. For more information about clusters, see [Clusters](https://cloudfleet.ai/docs/cluster-management/cluster-types/) section of documentaiton.
298
- *
299
- * This endpoint is available to administrators of the organization only.
310
+ * MCP endpoint
300
311
  *
312
+ * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
301
313
  */
302
- static updateCluster(options) {
303
- return (options.client ?? client).put({
304
- url: '/clusters/{cluster_id}',
314
+ static postMcp(options) {
315
+ return (options.client ?? client).post({
316
+ url: '/mcp',
305
317
  ...options,
306
318
  headers: {
307
319
  'Content-Type': 'application/json',
@@ -309,30 +321,38 @@ export class ClustersService {
309
321
  }
310
322
  });
311
323
  }
324
+ }
325
+ export class ChartsMarketplaceService {
312
326
  /**
313
- * Get the cluster's certificate authority in PEM format.
327
+ * List chart listings available in the marketplace.
314
328
  *
315
- * Returns the root certificate authority of the Kubernetes cluster as a PEM-encoded document. This endpoint does not require authentication, similar to the cluster's JWKs endpoint, since the CA certificate is public information used by clients to establish trust with the cluster's control plane.
329
+ * Returns a list of available charts in the marketplace.
330
+ *
331
+ * This endpoint is available to all users in the organization.
316
332
  *
317
333
  */
318
- static getClusterCa(options) {
319
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/ca', ...options });
334
+ static listMarketplaceCharts(options) {
335
+ return (options?.client ?? client).get({ url: '/marketplace', ...options });
320
336
  }
321
337
  /**
322
- * Node join information for the cluster
338
+ * Get chart files for a specific version channel.
323
339
  *
324
- * Returns the join information for the cluster. This information is used to add a self-managed nodes to the CFKE cluster. This endpoint is available to only admins of the organization.
340
+ * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
341
+ *
342
+ * Version channels use patterns like "1.31.x-cfke.x" to match the latest patch version, or "1.x.x-cfke.x" to match the latest minor version.
343
+ *
344
+ * This endpoint is available to all users in the organization.
325
345
  *
326
346
  */
327
- static getJoinInformation(options) {
328
- return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
347
+ static getMarketplaceChartFiles(options) {
348
+ return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
329
349
  }
330
350
  }
331
351
  export class InvitesService {
332
352
  /**
333
353
  * List invites.
334
354
  *
335
- * Returns a list of invites under the current organization. This endpoint is available to all users in the organization.
355
+ * Returns a list of pending (non-expired) invites under the current organization. This endpoint is available to administrators of the organization only.
336
356
  *
337
357
  */
338
358
  static listInvites(options) {
@@ -357,7 +377,7 @@ export class InvitesService {
357
377
  /**
358
378
  * Get invite information.
359
379
  *
360
- * Returns invite details.
380
+ * Validates an invitation code and returns the email address it was issued to (to pre-fill the signup form) and the organization it grants access to. This endpoint is unauthenticated, so no other invite details (such as the invited role) are disclosed.
361
381
  *
362
382
  */
363
383
  static getInvite(options) {
@@ -373,41 +393,39 @@ export class InvitesService {
373
393
  return (options.client ?? client).delete({ url: '/invites/{email}', ...options });
374
394
  }
375
395
  }
376
- export class ChartsMarketplaceService {
396
+ export class ClustersService {
377
397
  /**
378
- * List chart listings available in the marketplace.
379
- *
380
- * Returns a list of available charts in the marketplace.
381
- *
382
- * This endpoint is available to all users in the organization.
398
+ * Query Kubernetes cluster API
383
399
  *
400
+ * An API endpoint for directly querying a Kubernetes cluster API without requiring kubectl or other tools. This endpoint is ideal for automation and scripting, as well as for internal use in fetching data for the Cloudfleet Console. It acts as a passthrough to the Kubernetes API, allowing access to any valid Kubernetes API endpoint, including those not exposed in the Cloudfleet Console. The endpoint is strictly read-only, ensuring no modifications to the cluster state. It is accessible to all users within the organization and uses the same authentication mechanisms as other Cloudfleet API endpoints.
384
401
  */
385
- static listMarketplaceCharts(options) {
386
- return (options?.client ?? client).get({ url: '/marketplace', ...options });
402
+ static queryCluster(options) {
403
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
387
404
  }
388
405
  /**
389
- * Get chart files for a specific version channel.
390
- *
391
- * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
406
+ * List fleets.
392
407
  *
393
- * Version channels use patterns like "1.31.x-cfke.x" to match the latest patch version, or "1.x.x-cfke.x" to match the latest minor version.
408
+ * Returns a list of fleets belonging to the cluster. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
394
409
  *
395
410
  * This endpoint is available to all users in the organization.
396
411
  *
397
412
  */
398
- static getMarketplaceChartFiles(options) {
399
- return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
413
+ static listFleets(options) {
414
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets', ...options });
400
415
  }
401
- }
402
- export class McpService {
403
416
  /**
404
- * MCP endpoint
417
+ * Create a new fleet.
418
+ *
419
+ * Create a new fleet under the current organization. fleets allow you to to schedule workloads in cloud service provider accounts owned by you. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
420
+ *
421
+ * The cluster must be ready (status `deployed`) before a fleet can be added. Adding a fleet while the cluster is still provisioning returns `409`.
422
+ *
423
+ * This endpoint is available to administrators of the organization only.
405
424
  *
406
- * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
407
425
  */
408
- static postMcp(options) {
426
+ static createFleet(options) {
409
427
  return (options.client ?? client).post({
410
- url: '/mcp',
428
+ url: '/clusters/{cluster_id}/fleets',
411
429
  ...options,
412
430
  headers: {
413
431
  'Content-Type': 'application/json',
@@ -415,28 +433,45 @@ export class McpService {
415
433
  }
416
434
  });
417
435
  }
418
- }
419
- export class OrganizationService {
420
436
  /**
421
- * Get organization information.
437
+ * Permanently delete fleet.
422
438
  *
423
- * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
439
+ * This endpoint will permanently delete fleet. This operation cannot be undone. Your subscription will end by the end of the current billing period and you will not be able to receive credit for unused time. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
440
+ *
441
+ * Deleting a fleet does not deprovision the cloud infrastructure it provisioned: nodes and other resources keep running. Scale the cluster down first, or remove the infrastructure manually, to avoid orphaned resources.
442
+ *
443
+ * This endpoint is available to administrators of the organization only.
444
+ *
445
+ */
446
+ static deleteFleet(options) {
447
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
448
+ }
449
+ /**
450
+ * Get fleet information.
451
+ *
452
+ * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
424
453
  *
425
454
  * This endpoint is available to all users in the organization.
426
455
  *
427
456
  */
428
- static getOrganization(options) {
429
- return (options?.client ?? client).get({ url: '/organization', ...options });
457
+ static getFleet(options) {
458
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
430
459
  }
431
460
  /**
432
- * Create a new organization / Cloudfleet account signup.
461
+ * Update fleet information.
433
462
  *
434
- * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
463
+ * This endpoint allows you to update fleet details.
464
+ *
465
+ * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
466
+ *
467
+ * This is a full overwrite: any field omitted from the request is reset to its default rather than left unchanged. The Hetzner API key is the exception: it is kept when omitted (send a new value to rotate it).
468
+ *
469
+ * This endpoint is available to administrators of the organization only.
435
470
  *
436
471
  */
437
- static createOrganization(options) {
438
- return (options.client ?? client).post({
439
- url: '/organization',
472
+ static updateFleet(options) {
473
+ return (options.client ?? client).put({
474
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}',
440
475
  ...options,
441
476
  headers: {
442
477
  'Content-Type': 'application/json',
@@ -444,132 +479,141 @@ export class OrganizationService {
444
479
  }
445
480
  });
446
481
  }
447
- }
448
- export class RegistryService {
449
482
  /**
450
- * List repositories
451
- *
452
- * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
483
+ * List charts.
453
484
  *
454
- */
455
- static listRepositories(options) {
456
- return (options?.client ?? client).get({ url: '/registry', ...options });
457
- }
458
- /**
459
- * List tags for a repository
485
+ * Returns a list of charts in the cluster.
460
486
  *
461
- * Returns a list of tags for a specific repository, including size and metadata for each tag. This endpoint is available to all users in the organization.
487
+ * This endpoint is available to all users in the organization.
462
488
  *
463
489
  */
464
- static listTags(options) {
465
- return (options.client ?? client).get({ url: '/registry/{region}/{repository}', ...options });
490
+ static listCharts(options) {
491
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts', ...options });
466
492
  }
467
493
  /**
468
- * Delete tag
494
+ * Create a new chart.
469
495
  *
470
- * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
496
+ * Create a new chart deployment.
497
+ *
498
+ * This endpoint is available to administrators of the organization only.
471
499
  *
472
500
  */
473
- static deleteTag(options) {
474
- return (options.client ?? client).delete({ url: '/registry/{region}/{repository}/{tag}', ...options });
501
+ static createChart(options) {
502
+ return (options.client ?? client).post({
503
+ url: '/clusters/{cluster_id}/charts',
504
+ ...options,
505
+ headers: {
506
+ 'Content-Type': 'application/json',
507
+ ...options.headers
508
+ }
509
+ });
475
510
  }
476
511
  /**
477
- * Get tag details
512
+ * Permanently delete the chart deployment from the cluster.
478
513
  *
479
- * Returns detailed information for a specific tag in a repository, including manifest details, size, and URI. This endpoint is available to all users in the organization.
514
+ * This endpoint will permanently delete chart. This operation cannot be undone.
515
+ *
516
+ * This endpoint is available to administrators of the organization only.
480
517
  *
481
518
  */
482
- static getTag(options) {
483
- return (options.client ?? client).get({ url: '/registry/{region}/{repository}/{tag}', ...options });
519
+ static deleteChart(options) {
520
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
484
521
  }
485
- }
486
- export class TicketsService {
487
522
  /**
488
- * List tickets for the current organization.
523
+ * Get chart information.
489
524
  *
490
- * Returns all tickets belonging to the caller's organization, newest first.
525
+ * Returns the details of the chart deployment.
526
+ *
527
+ * This endpoint is available to all users in the organization.
491
528
  *
492
529
  */
493
- static listTickets(options) {
494
- return (options?.client ?? client).get({ url: '/tickets', ...options });
530
+ static getChart(options) {
531
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
495
532
  }
496
533
  /**
497
- * Create a new support ticket.
534
+ * Update chart information.
498
535
  *
499
- * Creates a new support ticket with an initial customer message. The request is `multipart/form-data` with a JSON-encoded `payload` field carrying `category`, `body`, and optional `properties`, plus up to 3 `attachments` files (10 MB max each).
536
+ * This endpoint allows you to update the values of a chart deployment.
537
+ *
538
+ * This endpoint is available to administrators of the organization only.
500
539
  *
501
540
  */
502
- static createTicket(options) {
503
- return (options.client ?? client).post({
504
- ...formDataBodySerializer,
505
- url: '/tickets',
541
+ static updateChart(options) {
542
+ return (options.client ?? client).put({
543
+ url: '/clusters/{cluster_id}/charts/{chart_name}',
506
544
  ...options,
507
545
  headers: {
508
- 'Content-Type': null,
546
+ 'Content-Type': 'application/json',
509
547
  ...options.headers
510
548
  }
511
549
  });
512
550
  }
513
551
  /**
514
- * Close a ticket (soft close).
552
+ * List clusters.
515
553
  *
516
- * Marks the ticket as closed. Closed is a terminal state — users cannot reply to a closed ticket; a new ticket must be opened instead.
554
+ * Returns a list of clusters under the current organization.
555
+ *
556
+ * This endpoint is available to all users in the organization.
517
557
  *
518
558
  */
519
- static closeTicket(options) {
520
- return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
521
- }
522
- /**
523
- * Get a ticket and its messages.
524
- */
525
- static getTicket(options) {
526
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
559
+ static listClusters(options) {
560
+ return (options?.client ?? client).get({ url: '/clusters', ...options });
527
561
  }
528
562
  /**
529
- * Append a customer reply to a ticket.
563
+ * Create a new cluster.
530
564
  *
531
- * Multipart form-data with a JSON-encoded `payload` field carrying `body`, plus up to 3 `attachments` files. Returns 409 if the ticket is closed.
565
+ * Create a new cluster under the current organization. Clusters allow you to group resources and you can create multiple clusters under the same organization, with billing delegated to the parent organization.
566
+ *
567
+ * This endpoint is available to administrators of the organization only.
532
568
  *
533
569
  */
534
- static replyTicket(options) {
570
+ static createCluster(options) {
535
571
  return (options.client ?? client).post({
536
- ...formDataBodySerializer,
537
- url: '/tickets/{ticket_id}/messages',
572
+ url: '/clusters',
538
573
  ...options,
539
574
  headers: {
540
- 'Content-Type': null,
575
+ 'Content-Type': 'application/json',
541
576
  ...options.headers
542
577
  }
543
578
  });
544
579
  }
545
580
  /**
546
- * Download a ticket attachment.
581
+ * Permanently delete cluster.
582
+ *
583
+ * This endpoint will permanently delete the cluster. This operation cannot be undone.
584
+ *
585
+ * Deleting a cluster also deletes its fleets. This does not deprovision the cloud infrastructure those fleets provisioned: nodes and other resources keep running. Scale the cluster down first, or remove the infrastructure manually, to avoid orphaned resources.
586
+ *
587
+ * This endpoint is available to administrators of the organization only.
588
+ *
547
589
  */
548
- static getTicketAttachment(options) {
549
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}/attachments/{attachment_id}', ...options });
590
+ static deleteCluster(options) {
591
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
550
592
  }
551
- }
552
- export class TokensService {
553
593
  /**
554
- * List access tokens in organization.
594
+ * Get cluster information.
555
595
  *
556
- * This endpoint allows you to get a list of all access tokens details in organization. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
596
+ * Returns cluster details.
597
+ *
598
+ * This endpoint is available to all users in the organization.
557
599
  *
558
600
  */
559
- static listTokens(options) {
560
- return (options?.client ?? client).get({ url: '/tokens', ...options });
601
+ static getCluster(options) {
602
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
561
603
  }
562
604
  /**
563
- * Create a new access token.
605
+ * Update cluster information.
564
606
  *
565
- * This endpoint allows you to create a new access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
607
+ * This endpoint allows you to update cluster details. For more information about clusters, see [Clusters](https://cloudfleet.ai/docs/cluster-management/cluster-types/) section of documentation.
608
+ *
609
+ * This is a full overwrite: any field omitted from the request is reset to its default rather than left unchanged.
566
610
  *
567
611
  * This endpoint is available to administrators of the organization only.
568
612
  *
569
613
  */
570
- static createToken(options) {
571
- return (options.client ?? client).post({
572
- url: '/tokens',
614
+ static updateCluster(options) {
615
+ return (options.client ?? client).put({
616
+ url: '/clusters/{cluster_id}',
573
617
  ...options,
574
618
  headers: {
575
619
  'Content-Type': 'application/json',
@@ -578,77 +622,88 @@ export class TokensService {
578
622
  });
579
623
  }
580
624
  /**
581
- * Permanently delete access token.
625
+ * Node join information for the cluster
582
626
  *
583
- * This endpoint allows you to delete an access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to administrators of the organization only.
627
+ * Returns the join information for the cluster. This information is used to add a self-managed nodes to the CFKE cluster. This endpoint is available to only admins of the organization.
584
628
  *
585
629
  */
586
- static deleteToken(options) {
587
- return (options.client ?? client).delete({ url: '/tokens/{token_id}', ...options });
630
+ static getJoinInformation(options) {
631
+ return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
588
632
  }
633
+ }
634
+ export class BillingService {
589
635
  /**
590
- * Get access token information.
636
+ * Get billing usage information.
591
637
  *
592
- * This endpoint allows you to get access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
638
+ * Returns aggregated usage information for the organization with facets for filtering. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
593
639
  *
594
640
  */
595
- static getToken(options) {
596
- return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
641
+ static getUsage(options) {
642
+ return (options?.client ?? client).get({ url: '/billing/usage', ...options });
597
643
  }
598
644
  /**
599
- * Update access token information.
645
+ * Get Stripe client secret.
600
646
  *
601
- * This endpoint allows you to update access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
647
+ * Endpoint returns the Stripe secret key for the organization. This key is used to securely update the payment method in the Cloudfleet console only, please visit https://console.cloudfleet.ai. This endpoint is available to administrators of the organization only.
602
648
  *
603
- * This endpoint is available to administrators of the organization only.
649
+ */
650
+ static getPaymentMethodSecret(options) {
651
+ return (options?.client ?? client).put({ url: '/billing/payment-method', ...options });
652
+ }
653
+ /**
654
+ * List organization payment methods.
655
+ *
656
+ * Returns all payment methods (cards and SEPA Direct Debit) attached to the organization, most recently added first, with the default flagged. This endpoint is available to all users in the organization.
604
657
  *
605
658
  */
606
- static updateToken(options) {
607
- return (options.client ?? client).put({
608
- url: '/tokens/{token_id}',
609
- ...options,
610
- headers: {
611
- 'Content-Type': 'application/json',
612
- ...options.headers
613
- }
614
- });
659
+ static listPaymentMethods(options) {
660
+ return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
615
661
  }
616
662
  /**
617
- * Regenerate access token secret key.
663
+ * Set the default payment method.
664
+ *
665
+ * Sets the given payment method as the default used for invoices and active subscriptions. Requires the Administrator role.
618
666
  *
619
- * Generates a new access token secret. Old secret will not be valid anymore.
620
667
  */
621
- static regenerateToken(options) {
622
- return (options.client ?? client).put({ url: '/tokens/{token_id}/secret', ...options });
668
+ static setDefaultPaymentMethod(options) {
669
+ return (options.client ?? client).put({ url: '/billing/payment-methods/{paymentMethodId}/default', ...options });
623
670
  }
624
- }
625
- export class UsersService {
626
671
  /**
627
- * Get a list of organizations the user belongs to. Used during authentication process.
672
+ * Delete a payment method.
673
+ *
674
+ * Detaches the given payment method from the organization. Requires the Administrator role. An organization must keep at least one payment method, so deleting the only remaining method is rejected.
675
+ *
628
676
  */
629
- static listUserOrganizations(options) {
630
- return (options.client ?? client).get({ url: '/users/organizations/{email}', ...options });
677
+ static deletePaymentMethod(options) {
678
+ return (options.client ?? client).delete({ url: '/billing/payment-methods/{paymentMethodId}', ...options });
631
679
  }
632
680
  /**
633
- * List users in organization.
681
+ * List issued invoices.
634
682
  *
635
- * Returns a list of user details and their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
683
+ * Returns a list of invoices for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
636
684
  *
637
- * This endpoint is available to all users in the organization.
685
+ */
686
+ static listInvoices(options) {
687
+ return (options?.client ?? client).get({ url: '/billing/invoices', ...options });
688
+ }
689
+ /**
690
+ * Get organization contact and billing address information.
691
+ *
692
+ * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
638
693
  *
639
694
  */
640
- static listUsers(options) {
641
- return (options?.client ?? client).get({ url: '/users', ...options });
695
+ static getContact(options) {
696
+ return (options?.client ?? client).get({ url: '/billing/contact', ...options });
642
697
  }
643
698
  /**
644
- * Create a new user.
699
+ * Update organization contact information and billing address.
645
700
  *
646
- * Create a new user in your Cloudfleet organization. Requires a valid invite code generated by the `invites create` command. The invite code is a unique string that can be used only once to create a new user. The invite code is generated by the `POST /invites` endpoint.
701
+ * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
647
702
  *
648
703
  */
649
- static createUser(options) {
650
- return (options.client ?? client).post({
651
- url: '/users',
704
+ static updateContact(options) {
705
+ return (options.client ?? client).put({
706
+ url: '/billing/contact',
652
707
  ...options,
653
708
  headers: {
654
709
  'Content-Type': 'application/json',
@@ -657,34 +712,23 @@ export class UsersService {
657
712
  });
658
713
  }
659
714
  /**
660
- * Delete user by id.
661
- *
662
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
663
- *
664
- */
665
- static deleteUser(options) {
666
- return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
667
- }
668
- /**
669
- * Get user profile information by id.
670
- *
671
- * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
715
+ * Get applied promotional credits
672
716
  *
673
- * This endpoint is available to all users in the organization.
717
+ * Returns applied promotional credits for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
674
718
  *
675
719
  */
676
- static getUser(options) {
677
- return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
720
+ static getCredits(options) {
721
+ return (options?.client ?? client).get({ url: '/billing/credits', ...options });
678
722
  }
679
723
  /**
680
- * Update user profile information.
724
+ * Redeem promotional credits code.
681
725
  *
682
- * Update user profile information: email, first name, last name, role. This endpoint can be accessed by administrators and the user itself. Role and status can be changed by administrators only.
726
+ * Applies promotional credits for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
683
727
  *
684
728
  */
685
- static updateUser(options) {
686
- return (options.client ?? client).put({
687
- url: '/users/{user_id}',
729
+ static redeemCredits(options) {
730
+ return (options.client ?? client).post({
731
+ url: '/billing/credits',
688
732
  ...options,
689
733
  headers: {
690
734
  'Content-Type': 'application/json',