@cloudfleet/sdk 0.0.1-cfddf24 → 0.0.1-d32b155

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,21 +321,38 @@ export class ClustersService {
309
321
  }
310
322
  });
311
323
  }
324
+ }
325
+ export class ChartsMarketplaceService {
312
326
  /**
313
- * Node join information for the cluster
327
+ * List chart listings available in the marketplace.
314
328
  *
315
- * 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.
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 getJoinInformation(options) {
319
- return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
334
+ static listMarketplaceCharts(options) {
335
+ return (options?.client ?? client).get({ url: '/marketplace', ...options });
336
+ }
337
+ /**
338
+ * Get chart files for a specific version channel.
339
+ *
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.
345
+ *
346
+ */
347
+ static getMarketplaceChartFiles(options) {
348
+ return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
320
349
  }
321
350
  }
322
351
  export class InvitesService {
323
352
  /**
324
353
  * List invites.
325
354
  *
326
- * 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.
327
356
  *
328
357
  */
329
358
  static listInvites(options) {
@@ -348,7 +377,7 @@ export class InvitesService {
348
377
  /**
349
378
  * Get invite information.
350
379
  *
351
- * 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.
352
381
  *
353
382
  */
354
383
  static getInvite(options) {
@@ -364,41 +393,39 @@ export class InvitesService {
364
393
  return (options.client ?? client).delete({ url: '/invites/{email}', ...options });
365
394
  }
366
395
  }
367
- export class ChartsMarketplaceService {
396
+ export class ClustersService {
368
397
  /**
369
- * List chart listings available in the marketplace.
370
- *
371
- * Returns a list of available charts in the marketplace.
372
- *
373
- * This endpoint is available to all users in the organization.
398
+ * Query Kubernetes cluster API
374
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.
375
401
  */
376
- static listMarketplaceCharts(options) {
377
- return (options?.client ?? client).get({ url: '/marketplace', ...options });
402
+ static queryCluster(options) {
403
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
378
404
  }
379
405
  /**
380
- * Get chart files for a specific version channel.
381
- *
382
- * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
406
+ * List fleets.
383
407
  *
384
- * 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.
385
409
  *
386
410
  * This endpoint is available to all users in the organization.
387
411
  *
388
412
  */
389
- static getMarketplaceChartFiles(options) {
390
- 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 });
391
415
  }
392
- }
393
- export class McpService {
394
416
  /**
395
- * 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.
396
424
  *
397
- * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
398
425
  */
399
- static postMcp(options) {
426
+ static createFleet(options) {
400
427
  return (options.client ?? client).post({
401
- url: '/mcp',
428
+ url: '/clusters/{cluster_id}/fleets',
402
429
  ...options,
403
430
  headers: {
404
431
  'Content-Type': 'application/json',
@@ -406,28 +433,45 @@ export class McpService {
406
433
  }
407
434
  });
408
435
  }
409
- }
410
- export class OrganizationService {
411
436
  /**
412
- * Get organization information.
437
+ * Permanently delete fleet.
413
438
  *
414
- * 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.
415
453
  *
416
454
  * This endpoint is available to all users in the organization.
417
455
  *
418
456
  */
419
- static getOrganization(options) {
420
- 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 });
421
459
  }
422
460
  /**
423
- * Create a new organization / Cloudfleet account signup.
461
+ * Update fleet information.
424
462
  *
425
- * 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.
426
470
  *
427
471
  */
428
- static createOrganization(options) {
429
- return (options.client ?? client).post({
430
- url: '/organization',
472
+ static updateFleet(options) {
473
+ return (options.client ?? client).put({
474
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}',
431
475
  ...options,
432
476
  headers: {
433
477
  'Content-Type': 'application/json',
@@ -435,132 +479,141 @@ export class OrganizationService {
435
479
  }
436
480
  });
437
481
  }
438
- }
439
- export class RegistryService {
440
482
  /**
441
- * List repositories
442
- *
443
- * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
483
+ * List charts.
444
484
  *
445
- */
446
- static listRepositories(options) {
447
- return (options?.client ?? client).get({ url: '/registry', ...options });
448
- }
449
- /**
450
- * List tags for a repository
485
+ * Returns a list of charts in the cluster.
451
486
  *
452
- * 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.
453
488
  *
454
489
  */
455
- static listTags(options) {
456
- 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 });
457
492
  }
458
493
  /**
459
- * Delete tag
494
+ * Create a new chart.
460
495
  *
461
- * 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.
462
499
  *
463
500
  */
464
- static deleteTag(options) {
465
- 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
+ });
466
510
  }
467
511
  /**
468
- * Get tag details
512
+ * Permanently delete the chart deployment from the cluster.
469
513
  *
470
- * 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.
471
517
  *
472
518
  */
473
- static getTag(options) {
474
- 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 });
475
521
  }
476
- }
477
- export class TicketsService {
478
522
  /**
479
- * List tickets for the current organization.
523
+ * Get chart information.
480
524
  *
481
- * 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.
482
528
  *
483
529
  */
484
- static listTickets(options) {
485
- 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 });
486
532
  }
487
533
  /**
488
- * Create a new support ticket.
534
+ * Update chart information.
489
535
  *
490
- * 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.
491
539
  *
492
540
  */
493
- static createTicket(options) {
494
- return (options.client ?? client).post({
495
- ...formDataBodySerializer,
496
- url: '/tickets',
541
+ static updateChart(options) {
542
+ return (options.client ?? client).put({
543
+ url: '/clusters/{cluster_id}/charts/{chart_name}',
497
544
  ...options,
498
545
  headers: {
499
- 'Content-Type': null,
546
+ 'Content-Type': 'application/json',
500
547
  ...options.headers
501
548
  }
502
549
  });
503
550
  }
504
551
  /**
505
- * Close a ticket (soft close).
552
+ * List clusters.
506
553
  *
507
- * 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.
508
557
  *
509
558
  */
510
- static closeTicket(options) {
511
- return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
512
- }
513
- /**
514
- * Get a ticket and its messages.
515
- */
516
- static getTicket(options) {
517
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
559
+ static listClusters(options) {
560
+ return (options?.client ?? client).get({ url: '/clusters', ...options });
518
561
  }
519
562
  /**
520
- * Append a customer reply to a ticket.
563
+ * Create a new cluster.
521
564
  *
522
- * 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.
523
568
  *
524
569
  */
525
- static replyTicket(options) {
570
+ static createCluster(options) {
526
571
  return (options.client ?? client).post({
527
- ...formDataBodySerializer,
528
- url: '/tickets/{ticket_id}/messages',
572
+ url: '/clusters',
529
573
  ...options,
530
574
  headers: {
531
- 'Content-Type': null,
575
+ 'Content-Type': 'application/json',
532
576
  ...options.headers
533
577
  }
534
578
  });
535
579
  }
536
580
  /**
537
- * 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
+ *
538
589
  */
539
- static getTicketAttachment(options) {
540
- 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 });
541
592
  }
542
- }
543
- export class TokensService {
544
593
  /**
545
- * List access tokens in organization.
594
+ * Get cluster information.
546
595
  *
547
- * 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.
548
599
  *
549
600
  */
550
- static listTokens(options) {
551
- return (options?.client ?? client).get({ url: '/tokens', ...options });
601
+ static getCluster(options) {
602
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
552
603
  }
553
604
  /**
554
- * Create a new access token.
605
+ * Update cluster information.
555
606
  *
556
- * 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.
557
610
  *
558
611
  * This endpoint is available to administrators of the organization only.
559
612
  *
560
613
  */
561
- static createToken(options) {
562
- return (options.client ?? client).post({
563
- url: '/tokens',
614
+ static updateCluster(options) {
615
+ return (options.client ?? client).put({
616
+ url: '/clusters/{cluster_id}',
564
617
  ...options,
565
618
  headers: {
566
619
  'Content-Type': 'application/json',
@@ -569,77 +622,88 @@ export class TokensService {
569
622
  });
570
623
  }
571
624
  /**
572
- * Permanently delete access token.
625
+ * Node join information for the cluster
573
626
  *
574
- * 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.
575
628
  *
576
629
  */
577
- static deleteToken(options) {
578
- 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 });
579
632
  }
633
+ }
634
+ export class BillingService {
580
635
  /**
581
- * Get access token information.
636
+ * Get billing usage information.
582
637
  *
583
- * 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.
584
639
  *
585
640
  */
586
- static getToken(options) {
587
- return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
641
+ static getUsage(options) {
642
+ return (options?.client ?? client).get({ url: '/billing/usage', ...options });
588
643
  }
589
644
  /**
590
- * Update access token information.
645
+ * Get Stripe client secret.
591
646
  *
592
- * 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.
593
648
  *
594
- * 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.
595
657
  *
596
658
  */
597
- static updateToken(options) {
598
- return (options.client ?? client).put({
599
- url: '/tokens/{token_id}',
600
- ...options,
601
- headers: {
602
- 'Content-Type': 'application/json',
603
- ...options.headers
604
- }
605
- });
659
+ static listPaymentMethods(options) {
660
+ return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
606
661
  }
607
662
  /**
608
- * 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.
609
666
  *
610
- * Generates a new access token secret. Old secret will not be valid anymore.
611
667
  */
612
- static regenerateToken(options) {
613
- 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 });
614
670
  }
615
- }
616
- export class UsersService {
617
671
  /**
618
- * 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
+ *
619
676
  */
620
- static listUserOrganizations(options) {
621
- 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 });
622
679
  }
623
680
  /**
624
- * List users in organization.
681
+ * List issued invoices.
625
682
  *
626
- * 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.
627
684
  *
628
- * 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.
629
693
  *
630
694
  */
631
- static listUsers(options) {
632
- return (options?.client ?? client).get({ url: '/users', ...options });
695
+ static getContact(options) {
696
+ return (options?.client ?? client).get({ url: '/billing/contact', ...options });
633
697
  }
634
698
  /**
635
- * Create a new user.
699
+ * Update organization contact information and billing address.
636
700
  *
637
- * 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.
638
702
  *
639
703
  */
640
- static createUser(options) {
641
- return (options.client ?? client).post({
642
- url: '/users',
704
+ static updateContact(options) {
705
+ return (options.client ?? client).put({
706
+ url: '/billing/contact',
643
707
  ...options,
644
708
  headers: {
645
709
  'Content-Type': 'application/json',
@@ -648,34 +712,23 @@ export class UsersService {
648
712
  });
649
713
  }
650
714
  /**
651
- * Delete user by id.
652
- *
653
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
654
- *
655
- */
656
- static deleteUser(options) {
657
- return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
658
- }
659
- /**
660
- * Get user profile information by id.
661
- *
662
- * 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
663
716
  *
664
- * 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.
665
718
  *
666
719
  */
667
- static getUser(options) {
668
- return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
720
+ static getCredits(options) {
721
+ return (options?.client ?? client).get({ url: '/billing/credits', ...options });
669
722
  }
670
723
  /**
671
- * Update user profile information.
724
+ * Redeem promotional credits code.
672
725
  *
673
- * 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.
674
727
  *
675
728
  */
676
- static updateUser(options) {
677
- return (options.client ?? client).put({
678
- url: '/users/{user_id}',
729
+ static redeemCredits(options) {
730
+ return (options.client ?? client).post({
731
+ url: '/billing/credits',
679
732
  ...options,
680
733
  headers: {
681
734
  'Content-Type': 'application/json',