@cloudfleet/sdk 0.0.1-028b8fa → 0.0.1-03062e4

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,79 +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 Stripe client secret.
16
- *
17
- * 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.
12
+ * List users in organization.
18
13
  *
19
- */
20
- static getPaymentMethodSecret(options) {
21
- return (options?.client ?? client).put({ url: '/billing/payment-method', ...options });
22
- }
23
- /**
24
- * List organization payment methods.
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.
25
15
  *
26
- * 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.
16
+ * This endpoint is available to all users in the organization.
27
17
  *
28
18
  */
29
- static listPaymentMethods(options) {
30
- return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
19
+ static listUsers(options) {
20
+ return (options?.client ?? client).get({ url: '/users', ...options });
31
21
  }
32
22
  /**
33
- * Set the default payment method.
23
+ * Create a new user.
34
24
  *
35
- * Sets the given payment method as the default used for invoices and active subscriptions. Requires the Administrator role.
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.
36
26
  *
37
27
  */
38
- static setDefaultPaymentMethod(options) {
39
- return (options.client ?? client).put({ url: '/billing/payment-methods/{paymentMethodId}/default', ...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
+ });
40
37
  }
41
38
  /**
42
- * Delete a payment method.
39
+ * Delete user by id.
43
40
  *
44
- * 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.
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.
45
42
  *
46
43
  */
47
- static deletePaymentMethod(options) {
48
- return (options.client ?? client).delete({ url: '/billing/payment-methods/{paymentMethodId}', ...options });
44
+ static deleteUser(options) {
45
+ return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
49
46
  }
50
47
  /**
51
- * List issued invoices.
52
- *
53
- * 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.
48
+ * Get user profile information by id.
54
49
  *
55
- */
56
- static listInvoices(options) {
57
- return (options?.client ?? client).get({ url: '/billing/invoices', ...options });
58
- }
59
- /**
60
- * Get organization contact and billing address information.
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.
61
51
  *
62
- * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
52
+ * This endpoint is available to all users in the organization.
63
53
  *
64
54
  */
65
- static getContact(options) {
66
- return (options?.client ?? client).get({ url: '/billing/contact', ...options });
55
+ static getUser(options) {
56
+ return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
67
57
  }
68
58
  /**
69
- * Update organization contact information and billing address.
59
+ * Update user profile information.
70
60
  *
71
- * 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.
72
62
  *
73
63
  */
74
- static updateContact(options) {
64
+ static updateUser(options) {
75
65
  return (options.client ?? client).put({
76
- url: '/billing/contact',
66
+ url: '/users/{user_id}',
77
67
  ...options,
78
68
  headers: {
79
69
  'Content-Type': 'application/json',
@@ -81,24 +71,28 @@ export class BillingService {
81
71
  }
82
72
  });
83
73
  }
74
+ }
75
+ export class TokensService {
84
76
  /**
85
- * Get applied promotional credits
77
+ * List access tokens in organization.
86
78
  *
87
- * 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.
88
80
  *
89
81
  */
90
- static getCredits(options) {
91
- return (options?.client ?? client).get({ url: '/billing/credits', ...options });
82
+ static listTokens(options) {
83
+ return (options?.client ?? client).get({ url: '/tokens', ...options });
92
84
  }
93
85
  /**
94
- * Redeem promotional credits code.
86
+ * Create a new access token.
95
87
  *
96
- * 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.
97
91
  *
98
92
  */
99
- static redeemCredits(options) {
93
+ static createToken(options) {
100
94
  return (options.client ?? client).post({
101
- url: '/billing/credits',
95
+ url: '/tokens',
102
96
  ...options,
103
97
  headers: {
104
98
  'Content-Type': 'application/json',
@@ -106,30 +100,35 @@ export class BillingService {
106
100
  }
107
101
  });
108
102
  }
109
- }
110
- export class ClustersService {
111
103
  /**
112
- * List charts.
104
+ * Permanently delete access token.
113
105
  *
114
- * 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.
115
107
  *
116
- * 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.
117
116
  *
118
117
  */
119
- static listCharts(options) {
120
- 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 });
121
120
  }
122
121
  /**
123
- * Create a new chart.
122
+ * Update access token information.
124
123
  *
125
- * 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.
126
125
  *
127
126
  * This endpoint is available to administrators of the organization only.
128
127
  *
129
128
  */
130
- static createChart(options) {
131
- return (options.client ?? client).post({
132
- url: '/clusters/{cluster_id}/charts',
129
+ static updateToken(options) {
130
+ return (options.client ?? client).put({
131
+ url: '/tokens/{token_id}',
133
132
  ...options,
134
133
  headers: {
135
134
  'Content-Type': 'application/json',
@@ -138,111 +137,139 @@ export class ClustersService {
138
137
  });
139
138
  }
140
139
  /**
141
- * Permanently delete the chart deployment from the cluster.
142
- *
143
- * This endpoint will permanently delete chart. This operation cannot be undone.
144
- *
145
- * This endpoint is available to administrators of the organization only.
140
+ * Regenerate access token secret key.
146
141
  *
142
+ * Generates a new access token secret. Old secret will not be valid anymore.
147
143
  */
148
- static deleteChart(options) {
149
- 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 });
150
146
  }
147
+ }
148
+ export class TicketsService {
151
149
  /**
152
- * Get chart information.
153
- *
154
- * Returns the details of the chart deployment.
150
+ * List tickets for the current organization.
155
151
  *
156
- * This endpoint is available to all users in the organization.
152
+ * Returns all tickets belonging to the caller's organization, newest first.
157
153
  *
158
154
  */
159
- static getChart(options) {
160
- 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 });
161
157
  }
162
158
  /**
163
- * Update chart information.
164
- *
165
- * This endpoint allows you to update the values of a chart deployment.
159
+ * Create a new support ticket.
166
160
  *
167
- * 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).
168
162
  *
169
163
  */
170
- static updateChart(options) {
171
- return (options.client ?? client).put({
172
- url: '/clusters/{cluster_id}/charts/{chart_name}',
164
+ static createTicket(options) {
165
+ return (options.client ?? client).post({
166
+ ...formDataBodySerializer,
167
+ url: '/tickets',
173
168
  ...options,
174
169
  headers: {
175
- 'Content-Type': 'application/json',
170
+ 'Content-Type': null,
176
171
  ...options.headers
177
172
  }
178
173
  });
179
174
  }
180
175
  /**
181
- * List fleets.
182
- *
183
- * 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).
184
177
  *
185
- * 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.
186
179
  *
187
180
  */
188
- static listFleets(options) {
189
- 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 });
190
183
  }
191
184
  /**
192
- * Create a new fleet.
193
- *
194
- * 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.
195
192
  *
196
- * 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.
197
194
  *
198
195
  */
199
- static createFleet(options) {
196
+ static replyTicket(options) {
200
197
  return (options.client ?? client).post({
201
- url: '/clusters/{cluster_id}/fleets',
198
+ ...formDataBodySerializer,
199
+ url: '/tickets/{ticket_id}/messages',
202
200
  ...options,
203
201
  headers: {
204
- 'Content-Type': 'application/json',
202
+ 'Content-Type': null,
205
203
  ...options.headers
206
204
  }
207
205
  });
208
206
  }
209
207
  /**
210
- * Permanently delete fleet.
208
+ * Download a ticket attachment.
209
+ */
210
+ static getTicketAttachment(options) {
211
+ return (options.client ?? client).get({ url: '/tickets/{ticket_id}/attachments/{attachment_id}', ...options });
212
+ }
213
+ }
214
+ export class RegistryService {
215
+ /**
216
+ * List repositories
211
217
  *
212
- * 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.
218
+ * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
213
219
  *
214
- * This endpoint is available to administrators of the organization only.
220
+ */
221
+ static listRepositories(options) {
222
+ return (options?.client ?? client).get({ url: '/registry', ...options });
223
+ }
224
+ /**
225
+ * List tags for a repository
226
+ *
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.
215
228
  *
216
229
  */
217
- static deleteFleet(options) {
218
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
230
+ static listTags(options) {
231
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}', ...options });
219
232
  }
220
233
  /**
221
- * Get fleet information.
234
+ * Delete tag
222
235
  *
223
- * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
236
+ * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
224
237
  *
225
- * This endpoint is available to all users in the organization.
238
+ */
239
+ static deleteTag(options) {
240
+ return (options.client ?? client).delete({ url: '/registry/{region}/{repository}/{tag}', ...options });
241
+ }
242
+ /**
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.
226
246
  *
227
247
  */
228
- static getFleet(options) {
229
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
248
+ static getTag(options) {
249
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}/{tag}', ...options });
230
250
  }
251
+ }
252
+ export class OrganizationService {
231
253
  /**
232
- * Update fleet information.
254
+ * Get organization information.
233
255
  *
234
- * This endpoint allows you to update fleet details.
256
+ * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
235
257
  *
236
- * 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`.
258
+ * This endpoint is available to all users in the organization.
237
259
  *
238
- * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
260
+ */
261
+ static getOrganization(options) {
262
+ return (options?.client ?? client).get({ url: '/organization', ...options });
263
+ }
264
+ /**
265
+ * Create a new organization / Cloudfleet account signup.
239
266
  *
240
- * 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.
241
268
  *
242
269
  */
243
- static updateFleet(options) {
244
- return (options.client ?? client).put({
245
- url: '/clusters/{cluster_id}/fleets/{fleet_name}',
270
+ static createOrganization(options) {
271
+ return (options.client ?? client).post({
272
+ url: '/organization',
246
273
  ...options,
247
274
  headers: {
248
275
  'Content-Type': 'application/json',
@@ -250,36 +277,16 @@ export class ClustersService {
250
277
  }
251
278
  });
252
279
  }
280
+ }
281
+ export class McpService {
253
282
  /**
254
- * Query Kubernetes cluster API
255
- *
256
- * 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.
257
- */
258
- static queryCluster(options) {
259
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
260
- }
261
- /**
262
- * List clusters.
263
- *
264
- * 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.
265
- *
266
- * This endpoint is available to all users in the organization.
267
- *
268
- */
269
- static listClusters(options) {
270
- return (options?.client ?? client).get({ url: '/clusters', ...options });
271
- }
272
- /**
273
- * Create a new cluster.
274
- *
275
- * 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.
276
- *
277
- * This endpoint is available to administrators of the organization only.
283
+ * MCP endpoint
278
284
  *
285
+ * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
279
286
  */
280
- static createCluster(options) {
287
+ static postMcp(options) {
281
288
  return (options.client ?? client).post({
282
- url: '/clusters',
289
+ url: '/mcp',
283
290
  ...options,
284
291
  headers: {
285
292
  'Content-Type': 'application/json',
@@ -287,61 +294,38 @@ export class ClustersService {
287
294
  }
288
295
  });
289
296
  }
297
+ }
298
+ export class ChartsMarketplaceService {
290
299
  /**
291
- * Permanently delete cluster.
292
- *
293
- * This endpoint will permanently delete the cluster. This operation cannot be undone.
294
- *
295
- * This endpoint is available to administrators of the organization only.
296
- *
297
- */
298
- static deleteCluster(options) {
299
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
300
- }
301
- /**
302
- * Get cluster information.
300
+ * List chart listings available in the marketplace.
303
301
  *
304
- * 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.
302
+ * Returns a list of available charts in the marketplace.
305
303
  *
306
304
  * This endpoint is available to all users in the organization.
307
305
  *
308
306
  */
309
- static getCluster(options) {
310
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
307
+ static listMarketplaceCharts(options) {
308
+ return (options?.client ?? client).get({ url: '/marketplace', ...options });
311
309
  }
312
310
  /**
313
- * Update cluster information.
314
- *
315
- * 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.
311
+ * Get chart files for a specific version channel.
316
312
  *
317
- * This endpoint is available to administrators of the organization only.
313
+ * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
318
314
  *
319
- */
320
- static updateCluster(options) {
321
- return (options.client ?? client).put({
322
- url: '/clusters/{cluster_id}',
323
- ...options,
324
- headers: {
325
- 'Content-Type': 'application/json',
326
- ...options.headers
327
- }
328
- });
329
- }
330
- /**
331
- * Node join information for the cluster
315
+ * 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.
332
316
  *
333
- * 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.
317
+ * This endpoint is available to all users in the organization.
334
318
  *
335
319
  */
336
- static getJoinInformation(options) {
337
- return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
320
+ static getMarketplaceChartFiles(options) {
321
+ return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
338
322
  }
339
323
  }
340
324
  export class InvitesService {
341
325
  /**
342
326
  * List invites.
343
327
  *
344
- * Returns a list of invites under the current organization. This endpoint is available to all users in the organization.
328
+ * Returns a list of pending (non-expired) invites under the current organization. This endpoint is available to administrators of the organization only.
345
329
  *
346
330
  */
347
331
  static listInvites(options) {
@@ -366,7 +350,7 @@ export class InvitesService {
366
350
  /**
367
351
  * Get invite information.
368
352
  *
369
- * Returns invite details.
353
+ * 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.
370
354
  *
371
355
  */
372
356
  static getInvite(options) {
@@ -382,41 +366,39 @@ export class InvitesService {
382
366
  return (options.client ?? client).delete({ url: '/invites/{email}', ...options });
383
367
  }
384
368
  }
385
- export class ChartsMarketplaceService {
369
+ export class ClustersService {
386
370
  /**
387
- * List chart listings available in the marketplace.
388
- *
389
- * Returns a list of available charts in the marketplace.
390
- *
391
- * This endpoint is available to all users in the organization.
371
+ * Query Kubernetes cluster API
392
372
  *
373
+ * 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.
393
374
  */
394
- static listMarketplaceCharts(options) {
395
- return (options?.client ?? client).get({ url: '/marketplace', ...options });
375
+ static queryCluster(options) {
376
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
396
377
  }
397
378
  /**
398
- * Get chart files for a specific version channel.
399
- *
400
- * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
379
+ * List fleets.
401
380
  *
402
- * 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.
381
+ * Returns a list of fleets belonging to the cluster. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
403
382
  *
404
383
  * This endpoint is available to all users in the organization.
405
384
  *
406
385
  */
407
- static getMarketplaceChartFiles(options) {
408
- return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
386
+ static listFleets(options) {
387
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets', ...options });
409
388
  }
410
- }
411
- export class McpService {
412
389
  /**
413
- * MCP endpoint
390
+ * Create a new fleet.
391
+ *
392
+ * 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.
393
+ *
394
+ * The cluster must be ready (status `deployed`) before a fleet can be added. Adding a fleet while the cluster is still provisioning returns `409`.
395
+ *
396
+ * This endpoint is available to administrators of the organization only.
414
397
  *
415
- * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
416
398
  */
417
- static postMcp(options) {
399
+ static createFleet(options) {
418
400
  return (options.client ?? client).post({
419
- url: '/mcp',
401
+ url: '/clusters/{cluster_id}/fleets',
420
402
  ...options,
421
403
  headers: {
422
404
  'Content-Type': 'application/json',
@@ -424,28 +406,45 @@ export class McpService {
424
406
  }
425
407
  });
426
408
  }
427
- }
428
- export class OrganizationService {
429
409
  /**
430
- * Get organization information.
410
+ * Permanently delete fleet.
431
411
  *
432
- * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
412
+ * 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.
413
+ *
414
+ * 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.
415
+ *
416
+ * This endpoint is available to administrators of the organization only.
417
+ *
418
+ */
419
+ static deleteFleet(options) {
420
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
421
+ }
422
+ /**
423
+ * Get fleet information.
424
+ *
425
+ * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
433
426
  *
434
427
  * This endpoint is available to all users in the organization.
435
428
  *
436
429
  */
437
- static getOrganization(options) {
438
- return (options?.client ?? client).get({ url: '/organization', ...options });
430
+ static getFleet(options) {
431
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
439
432
  }
440
433
  /**
441
- * Create a new organization / Cloudfleet account signup.
434
+ * Update fleet information.
442
435
  *
443
- * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
436
+ * This endpoint allows you to update fleet details.
437
+ *
438
+ * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
439
+ *
440
+ * 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).
441
+ *
442
+ * This endpoint is available to administrators of the organization only.
444
443
  *
445
444
  */
446
- static createOrganization(options) {
447
- return (options.client ?? client).post({
448
- url: '/organization',
445
+ static updateFleet(options) {
446
+ return (options.client ?? client).put({
447
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}',
449
448
  ...options,
450
449
  headers: {
451
450
  'Content-Type': 'application/json',
@@ -453,132 +452,141 @@ export class OrganizationService {
453
452
  }
454
453
  });
455
454
  }
456
- }
457
- export class RegistryService {
458
455
  /**
459
- * List repositories
460
- *
461
- * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
456
+ * List charts.
462
457
  *
463
- */
464
- static listRepositories(options) {
465
- return (options?.client ?? client).get({ url: '/registry', ...options });
466
- }
467
- /**
468
- * List tags for a repository
458
+ * Returns a list of charts in the cluster.
469
459
  *
470
- * 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.
460
+ * This endpoint is available to all users in the organization.
471
461
  *
472
462
  */
473
- static listTags(options) {
474
- return (options.client ?? client).get({ url: '/registry/{region}/{repository}', ...options });
463
+ static listCharts(options) {
464
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts', ...options });
475
465
  }
476
466
  /**
477
- * Delete tag
467
+ * Create a new chart.
478
468
  *
479
- * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
469
+ * Create a new chart deployment.
470
+ *
471
+ * This endpoint is available to administrators of the organization only.
480
472
  *
481
473
  */
482
- static deleteTag(options) {
483
- return (options.client ?? client).delete({ url: '/registry/{region}/{repository}/{tag}', ...options });
474
+ static createChart(options) {
475
+ return (options.client ?? client).post({
476
+ url: '/clusters/{cluster_id}/charts',
477
+ ...options,
478
+ headers: {
479
+ 'Content-Type': 'application/json',
480
+ ...options.headers
481
+ }
482
+ });
484
483
  }
485
484
  /**
486
- * Get tag details
485
+ * Permanently delete the chart deployment from the cluster.
487
486
  *
488
- * 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.
487
+ * This endpoint will permanently delete chart. This operation cannot be undone.
488
+ *
489
+ * This endpoint is available to administrators of the organization only.
489
490
  *
490
491
  */
491
- static getTag(options) {
492
- return (options.client ?? client).get({ url: '/registry/{region}/{repository}/{tag}', ...options });
492
+ static deleteChart(options) {
493
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
493
494
  }
494
- }
495
- export class TicketsService {
496
495
  /**
497
- * List tickets for the current organization.
496
+ * Get chart information.
498
497
  *
499
- * Returns all tickets belonging to the caller's organization, newest first.
498
+ * Returns the details of the chart deployment.
499
+ *
500
+ * This endpoint is available to all users in the organization.
500
501
  *
501
502
  */
502
- static listTickets(options) {
503
- return (options?.client ?? client).get({ url: '/tickets', ...options });
503
+ static getChart(options) {
504
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
504
505
  }
505
506
  /**
506
- * Create a new support ticket.
507
+ * Update chart information.
507
508
  *
508
- * 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).
509
+ * This endpoint allows you to update the values of a chart deployment.
510
+ *
511
+ * This endpoint is available to administrators of the organization only.
509
512
  *
510
513
  */
511
- static createTicket(options) {
512
- return (options.client ?? client).post({
513
- ...formDataBodySerializer,
514
- url: '/tickets',
514
+ static updateChart(options) {
515
+ return (options.client ?? client).put({
516
+ url: '/clusters/{cluster_id}/charts/{chart_name}',
515
517
  ...options,
516
518
  headers: {
517
- 'Content-Type': null,
519
+ 'Content-Type': 'application/json',
518
520
  ...options.headers
519
521
  }
520
522
  });
521
523
  }
522
524
  /**
523
- * Close a ticket (soft close).
525
+ * List clusters.
524
526
  *
525
- * Marks the ticket as closed. Closed is a terminal state users cannot reply to a closed ticket; a new ticket must be opened instead.
527
+ * Returns a list of clusters under the current organization.
528
+ *
529
+ * This endpoint is available to all users in the organization.
526
530
  *
527
531
  */
528
- static closeTicket(options) {
529
- return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
530
- }
531
- /**
532
- * Get a ticket and its messages.
533
- */
534
- static getTicket(options) {
535
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
532
+ static listClusters(options) {
533
+ return (options?.client ?? client).get({ url: '/clusters', ...options });
536
534
  }
537
535
  /**
538
- * Append a customer reply to a ticket.
536
+ * Create a new cluster.
539
537
  *
540
- * Multipart form-data with a JSON-encoded `payload` field carrying `body`, plus up to 3 `attachments` files. Returns 409 if the ticket is closed.
538
+ * 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.
539
+ *
540
+ * This endpoint is available to administrators of the organization only.
541
541
  *
542
542
  */
543
- static replyTicket(options) {
543
+ static createCluster(options) {
544
544
  return (options.client ?? client).post({
545
- ...formDataBodySerializer,
546
- url: '/tickets/{ticket_id}/messages',
545
+ url: '/clusters',
547
546
  ...options,
548
547
  headers: {
549
- 'Content-Type': null,
548
+ 'Content-Type': 'application/json',
550
549
  ...options.headers
551
550
  }
552
551
  });
553
552
  }
554
553
  /**
555
- * Download a ticket attachment.
554
+ * Permanently delete cluster.
555
+ *
556
+ * This endpoint will permanently delete the cluster. This operation cannot be undone.
557
+ *
558
+ * 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.
559
+ *
560
+ * This endpoint is available to administrators of the organization only.
561
+ *
556
562
  */
557
- static getTicketAttachment(options) {
558
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}/attachments/{attachment_id}', ...options });
563
+ static deleteCluster(options) {
564
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
559
565
  }
560
- }
561
- export class TokensService {
562
566
  /**
563
- * List access tokens in organization.
567
+ * Get cluster information.
564
568
  *
565
- * 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.
569
+ * Returns cluster details.
570
+ *
571
+ * This endpoint is available to all users in the organization.
566
572
  *
567
573
  */
568
- static listTokens(options) {
569
- return (options?.client ?? client).get({ url: '/tokens', ...options });
574
+ static getCluster(options) {
575
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
570
576
  }
571
577
  /**
572
- * Create a new access token.
578
+ * Update cluster information.
573
579
  *
574
- * 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.
580
+ * 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.
581
+ *
582
+ * This is a full overwrite: any field omitted from the request is reset to its default rather than left unchanged.
575
583
  *
576
584
  * This endpoint is available to administrators of the organization only.
577
585
  *
578
586
  */
579
- static createToken(options) {
580
- return (options.client ?? client).post({
581
- url: '/tokens',
587
+ static updateCluster(options) {
588
+ return (options.client ?? client).put({
589
+ url: '/clusters/{cluster_id}',
582
590
  ...options,
583
591
  headers: {
584
592
  'Content-Type': 'application/json',
@@ -587,77 +595,88 @@ export class TokensService {
587
595
  });
588
596
  }
589
597
  /**
590
- * Permanently delete access token.
598
+ * Node join information for the cluster
591
599
  *
592
- * 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.
600
+ * 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.
593
601
  *
594
602
  */
595
- static deleteToken(options) {
596
- return (options.client ?? client).delete({ url: '/tokens/{token_id}', ...options });
603
+ static getJoinInformation(options) {
604
+ return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
597
605
  }
606
+ }
607
+ export class BillingService {
598
608
  /**
599
- * Get access token information.
609
+ * Get billing usage information.
600
610
  *
601
- * 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.
611
+ * 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.
602
612
  *
603
613
  */
604
- static getToken(options) {
605
- return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
614
+ static getUsage(options) {
615
+ return (options?.client ?? client).get({ url: '/billing/usage', ...options });
606
616
  }
607
617
  /**
608
- * Update access token information.
618
+ * Get Stripe client secret.
609
619
  *
610
- * 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.
620
+ * 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.
611
621
  *
612
- * This endpoint is available to administrators of the organization only.
622
+ */
623
+ static getPaymentMethodSecret(options) {
624
+ return (options?.client ?? client).put({ url: '/billing/payment-method', ...options });
625
+ }
626
+ /**
627
+ * List organization payment methods.
628
+ *
629
+ * 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.
613
630
  *
614
631
  */
615
- static updateToken(options) {
616
- return (options.client ?? client).put({
617
- url: '/tokens/{token_id}',
618
- ...options,
619
- headers: {
620
- 'Content-Type': 'application/json',
621
- ...options.headers
622
- }
623
- });
632
+ static listPaymentMethods(options) {
633
+ return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
624
634
  }
625
635
  /**
626
- * Regenerate access token secret key.
636
+ * Set the default payment method.
637
+ *
638
+ * Sets the given payment method as the default used for invoices and active subscriptions. Requires the Administrator role.
627
639
  *
628
- * Generates a new access token secret. Old secret will not be valid anymore.
629
640
  */
630
- static regenerateToken(options) {
631
- return (options.client ?? client).put({ url: '/tokens/{token_id}/secret', ...options });
641
+ static setDefaultPaymentMethod(options) {
642
+ return (options.client ?? client).put({ url: '/billing/payment-methods/{paymentMethodId}/default', ...options });
632
643
  }
633
- }
634
- export class UsersService {
635
644
  /**
636
- * Get a list of organizations the user belongs to. Used during authentication process.
645
+ * Delete a payment method.
646
+ *
647
+ * 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.
648
+ *
637
649
  */
638
- static listUserOrganizations(options) {
639
- return (options.client ?? client).get({ url: '/users/organizations/{email}', ...options });
650
+ static deletePaymentMethod(options) {
651
+ return (options.client ?? client).delete({ url: '/billing/payment-methods/{paymentMethodId}', ...options });
640
652
  }
641
653
  /**
642
- * List users in organization.
654
+ * List issued invoices.
643
655
  *
644
- * 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.
656
+ * 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.
645
657
  *
646
- * This endpoint is available to all users in the organization.
658
+ */
659
+ static listInvoices(options) {
660
+ return (options?.client ?? client).get({ url: '/billing/invoices', ...options });
661
+ }
662
+ /**
663
+ * Get organization contact and billing address information.
664
+ *
665
+ * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
647
666
  *
648
667
  */
649
- static listUsers(options) {
650
- return (options?.client ?? client).get({ url: '/users', ...options });
668
+ static getContact(options) {
669
+ return (options?.client ?? client).get({ url: '/billing/contact', ...options });
651
670
  }
652
671
  /**
653
- * Create a new user.
672
+ * Update organization contact information and billing address.
654
673
  *
655
- * 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.
674
+ * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
656
675
  *
657
676
  */
658
- static createUser(options) {
659
- return (options.client ?? client).post({
660
- url: '/users',
677
+ static updateContact(options) {
678
+ return (options.client ?? client).put({
679
+ url: '/billing/contact',
661
680
  ...options,
662
681
  headers: {
663
682
  'Content-Type': 'application/json',
@@ -666,34 +685,23 @@ export class UsersService {
666
685
  });
667
686
  }
668
687
  /**
669
- * Delete user by id.
670
- *
671
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
672
- *
673
- */
674
- static deleteUser(options) {
675
- return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
676
- }
677
- /**
678
- * Get user profile information by id.
679
- *
680
- * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
688
+ * Get applied promotional credits
681
689
  *
682
- * This endpoint is available to all users in the organization.
690
+ * 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.
683
691
  *
684
692
  */
685
- static getUser(options) {
686
- return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
693
+ static getCredits(options) {
694
+ return (options?.client ?? client).get({ url: '/billing/credits', ...options });
687
695
  }
688
696
  /**
689
- * Update user profile information.
697
+ * Redeem promotional credits code.
690
698
  *
691
- * 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.
699
+ * 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.
692
700
  *
693
701
  */
694
- static updateUser(options) {
695
- return (options.client ?? client).put({
696
- url: '/users/{user_id}',
702
+ static redeemCredits(options) {
703
+ return (options.client ?? client).post({
704
+ url: '/billing/credits',
697
705
  ...options,
698
706
  headers: {
699
707
  'Content-Type': 'application/json',