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

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',
@@ -269,39 +277,16 @@ export class ClustersService {
269
277
  }
270
278
  });
271
279
  }
280
+ }
281
+ export class McpService {
272
282
  /**
273
- * Permanently delete cluster.
274
- *
275
- * This endpoint will permanently delete the cluster. This operation cannot be undone.
276
- *
277
- * This endpoint is available to administrators of the organization only.
278
- *
279
- */
280
- static deleteCluster(options) {
281
- return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
282
- }
283
- /**
284
- * Get cluster information.
285
- *
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.
289
- *
290
- */
291
- static getCluster(options) {
292
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
293
- }
294
- /**
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.
283
+ * MCP endpoint
300
284
  *
285
+ * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
301
286
  */
302
- static updateCluster(options) {
303
- return (options.client ?? client).put({
304
- url: '/clusters/{cluster_id}',
287
+ static postMcp(options) {
288
+ return (options.client ?? client).post({
289
+ url: '/mcp',
305
290
  ...options,
306
291
  headers: {
307
292
  'Content-Type': 'application/json',
@@ -309,30 +294,38 @@ export class ClustersService {
309
294
  }
310
295
  });
311
296
  }
297
+ }
298
+ export class ChartsMarketplaceService {
312
299
  /**
313
- * Get the cluster's certificate authority in PEM format.
300
+ * List chart listings available in the marketplace.
301
+ *
302
+ * Returns a list of available charts in the marketplace.
314
303
  *
315
- * Returns the root certificate authority of the Kubernetes cluster as a PEM-encoded document. This endpoint does not require authentication, similar to the cluster's JWKs endpoint, since the CA certificate is public information used by clients to establish trust with the cluster's control plane.
304
+ * This endpoint is available to all users in the organization.
316
305
  *
317
306
  */
318
- static getClusterCa(options) {
319
- return (options.client ?? client).get({ url: '/clusters/{cluster_id}/ca', ...options });
307
+ static listMarketplaceCharts(options) {
308
+ return (options?.client ?? client).get({ url: '/marketplace', ...options });
320
309
  }
321
310
  /**
322
- * Node join information for the cluster
311
+ * Get chart files for a specific version channel.
323
312
  *
324
- * Returns the join information for the cluster. This information is used to add a self-managed nodes to the CFKE cluster. This endpoint is available to only admins of the organization.
313
+ * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
314
+ *
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.
316
+ *
317
+ * This endpoint is available to all users in the organization.
325
318
  *
326
319
  */
327
- static getJoinInformation(options) {
328
- 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 });
329
322
  }
330
323
  }
331
324
  export class InvitesService {
332
325
  /**
333
326
  * List invites.
334
327
  *
335
- * 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.
336
329
  *
337
330
  */
338
331
  static listInvites(options) {
@@ -357,7 +350,7 @@ export class InvitesService {
357
350
  /**
358
351
  * Get invite information.
359
352
  *
360
- * 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.
361
354
  *
362
355
  */
363
356
  static getInvite(options) {
@@ -373,41 +366,39 @@ export class InvitesService {
373
366
  return (options.client ?? client).delete({ url: '/invites/{email}', ...options });
374
367
  }
375
368
  }
376
- export class ChartsMarketplaceService {
369
+ export class ClustersService {
377
370
  /**
378
- * List chart listings available in the marketplace.
379
- *
380
- * Returns a list of available charts in the marketplace.
381
- *
382
- * This endpoint is available to all users in the organization.
371
+ * Query Kubernetes cluster API
383
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.
384
374
  */
385
- static listMarketplaceCharts(options) {
386
- return (options?.client ?? client).get({ url: '/marketplace', ...options });
375
+ static queryCluster(options) {
376
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
387
377
  }
388
378
  /**
389
- * Get chart files for a specific version channel.
390
- *
391
- * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
379
+ * List fleets.
392
380
  *
393
- * Version channels use patterns like "1.31.x-cfke.x" to match the latest patch version, or "1.x.x-cfke.x" to match the latest minor version.
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.
394
382
  *
395
383
  * This endpoint is available to all users in the organization.
396
384
  *
397
385
  */
398
- static getMarketplaceChartFiles(options) {
399
- 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 });
400
388
  }
401
- }
402
- export class McpService {
403
389
  /**
404
- * 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.
405
397
  *
406
- * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
407
398
  */
408
- static postMcp(options) {
399
+ static createFleet(options) {
409
400
  return (options.client ?? client).post({
410
- url: '/mcp',
401
+ url: '/clusters/{cluster_id}/fleets',
411
402
  ...options,
412
403
  headers: {
413
404
  'Content-Type': 'application/json',
@@ -415,28 +406,45 @@ export class McpService {
415
406
  }
416
407
  });
417
408
  }
418
- }
419
- export class OrganizationService {
420
409
  /**
421
- * Get organization information.
410
+ * Permanently delete fleet.
422
411
  *
423
- * 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.
424
426
  *
425
427
  * This endpoint is available to all users in the organization.
426
428
  *
427
429
  */
428
- static getOrganization(options) {
429
- 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 });
430
432
  }
431
433
  /**
432
- * Create a new organization / Cloudfleet account signup.
434
+ * Update fleet information.
433
435
  *
434
- * 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.
435
443
  *
436
444
  */
437
- static createOrganization(options) {
438
- return (options.client ?? client).post({
439
- url: '/organization',
445
+ static updateFleet(options) {
446
+ return (options.client ?? client).put({
447
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}',
440
448
  ...options,
441
449
  headers: {
442
450
  'Content-Type': 'application/json',
@@ -444,132 +452,141 @@ export class OrganizationService {
444
452
  }
445
453
  });
446
454
  }
447
- }
448
- export class RegistryService {
449
455
  /**
450
- * List repositories
451
- *
452
- * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
456
+ * List charts.
453
457
  *
454
- */
455
- static listRepositories(options) {
456
- return (options?.client ?? client).get({ url: '/registry', ...options });
457
- }
458
- /**
459
- * List tags for a repository
458
+ * Returns a list of charts in the cluster.
460
459
  *
461
- * Returns a list of tags for a specific repository, including size and metadata for each tag. This endpoint is available to all users in the organization.
460
+ * This endpoint is available to all users in the organization.
462
461
  *
463
462
  */
464
- static listTags(options) {
465
- 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 });
466
465
  }
467
466
  /**
468
- * Delete tag
467
+ * Create a new chart.
469
468
  *
470
- * 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.
471
472
  *
472
473
  */
473
- static deleteTag(options) {
474
- 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
+ });
475
483
  }
476
484
  /**
477
- * Get tag details
485
+ * Permanently delete the chart deployment from the cluster.
478
486
  *
479
- * Returns detailed information for a specific tag in a repository, including manifest details, size, and URI. This endpoint is available to all users in the organization.
487
+ * This endpoint will permanently delete chart. This operation cannot be undone.
488
+ *
489
+ * This endpoint is available to administrators of the organization only.
480
490
  *
481
491
  */
482
- static getTag(options) {
483
- 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 });
484
494
  }
485
- }
486
- export class TicketsService {
487
495
  /**
488
- * List tickets for the current organization.
496
+ * Get chart information.
489
497
  *
490
- * 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.
491
501
  *
492
502
  */
493
- static listTickets(options) {
494
- 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 });
495
505
  }
496
506
  /**
497
- * Create a new support ticket.
507
+ * Update chart information.
498
508
  *
499
- * Creates a new support ticket with an initial customer message. The request is `multipart/form-data` with a JSON-encoded `payload` field carrying `category`, `body`, and optional `properties`, plus up to 3 `attachments` files (10 MB max each).
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.
500
512
  *
501
513
  */
502
- static createTicket(options) {
503
- return (options.client ?? client).post({
504
- ...formDataBodySerializer,
505
- url: '/tickets',
514
+ static updateChart(options) {
515
+ return (options.client ?? client).put({
516
+ url: '/clusters/{cluster_id}/charts/{chart_name}',
506
517
  ...options,
507
518
  headers: {
508
- 'Content-Type': null,
519
+ 'Content-Type': 'application/json',
509
520
  ...options.headers
510
521
  }
511
522
  });
512
523
  }
513
524
  /**
514
- * Close a ticket (soft close).
525
+ * List clusters.
515
526
  *
516
- * Marks the ticket as closed. Closed is a terminal state users cannot reply to a closed ticket; a new ticket must be opened instead.
527
+ * Returns a list of clusters under the current organization.
528
+ *
529
+ * This endpoint is available to all users in the organization.
517
530
  *
518
531
  */
519
- static closeTicket(options) {
520
- return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
521
- }
522
- /**
523
- * Get a ticket and its messages.
524
- */
525
- static getTicket(options) {
526
- return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
532
+ static listClusters(options) {
533
+ return (options?.client ?? client).get({ url: '/clusters', ...options });
527
534
  }
528
535
  /**
529
- * Append a customer reply to a ticket.
536
+ * Create a new cluster.
530
537
  *
531
- * Multipart form-data with a JSON-encoded `payload` field carrying `body`, plus up to 3 `attachments` files. Returns 409 if the ticket is closed.
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.
532
541
  *
533
542
  */
534
- static replyTicket(options) {
543
+ static createCluster(options) {
535
544
  return (options.client ?? client).post({
536
- ...formDataBodySerializer,
537
- url: '/tickets/{ticket_id}/messages',
545
+ url: '/clusters',
538
546
  ...options,
539
547
  headers: {
540
- 'Content-Type': null,
548
+ 'Content-Type': 'application/json',
541
549
  ...options.headers
542
550
  }
543
551
  });
544
552
  }
545
553
  /**
546
- * 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
+ *
547
562
  */
548
- static getTicketAttachment(options) {
549
- 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 });
550
565
  }
551
- }
552
- export class TokensService {
553
566
  /**
554
- * List access tokens in organization.
567
+ * Get cluster information.
555
568
  *
556
- * This endpoint allows you to get a list of all access tokens details in organization. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
569
+ * Returns cluster details.
570
+ *
571
+ * This endpoint is available to all users in the organization.
557
572
  *
558
573
  */
559
- static listTokens(options) {
560
- return (options?.client ?? client).get({ url: '/tokens', ...options });
574
+ static getCluster(options) {
575
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
561
576
  }
562
577
  /**
563
- * Create a new access token.
578
+ * Update cluster information.
564
579
  *
565
- * This endpoint allows you to create a new access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
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.
566
583
  *
567
584
  * This endpoint is available to administrators of the organization only.
568
585
  *
569
586
  */
570
- static createToken(options) {
571
- return (options.client ?? client).post({
572
- url: '/tokens',
587
+ static updateCluster(options) {
588
+ return (options.client ?? client).put({
589
+ url: '/clusters/{cluster_id}',
573
590
  ...options,
574
591
  headers: {
575
592
  'Content-Type': 'application/json',
@@ -578,77 +595,88 @@ export class TokensService {
578
595
  });
579
596
  }
580
597
  /**
581
- * Permanently delete access token.
598
+ * Node join information for the cluster
582
599
  *
583
- * This endpoint allows you to delete an access token. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to administrators of the organization only.
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.
584
601
  *
585
602
  */
586
- static deleteToken(options) {
587
- 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 });
588
605
  }
606
+ }
607
+ export class BillingService {
589
608
  /**
590
- * Get access token information.
609
+ * Get billing usage information.
591
610
  *
592
- * This endpoint allows you to get access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton. This endpoint is available to all users in the organization.
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.
593
612
  *
594
613
  */
595
- static getToken(options) {
596
- return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
614
+ static getUsage(options) {
615
+ return (options?.client ?? client).get({ url: '/billing/usage', ...options });
597
616
  }
598
617
  /**
599
- * Update access token information.
618
+ * Get Stripe client secret.
600
619
  *
601
- * This endpoint allows you to update access token details. For more information about identity access management and security, see [Service Accounts](https://cloudfleet.ai/docs/organization/api-tokens/) section of documentaiton.
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.
602
621
  *
603
- * 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.
604
630
  *
605
631
  */
606
- static updateToken(options) {
607
- return (options.client ?? client).put({
608
- url: '/tokens/{token_id}',
609
- ...options,
610
- headers: {
611
- 'Content-Type': 'application/json',
612
- ...options.headers
613
- }
614
- });
632
+ static listPaymentMethods(options) {
633
+ return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
615
634
  }
616
635
  /**
617
- * 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.
618
639
  *
619
- * Generates a new access token secret. Old secret will not be valid anymore.
620
640
  */
621
- static regenerateToken(options) {
622
- 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 });
623
643
  }
624
- }
625
- export class UsersService {
626
644
  /**
627
- * 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
+ *
628
649
  */
629
- static listUserOrganizations(options) {
630
- 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 });
631
652
  }
632
653
  /**
633
- * List users in organization.
654
+ * List issued invoices.
634
655
  *
635
- * Returns a list of user details and their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
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.
636
657
  *
637
- * 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.
638
666
  *
639
667
  */
640
- static listUsers(options) {
641
- return (options?.client ?? client).get({ url: '/users', ...options });
668
+ static getContact(options) {
669
+ return (options?.client ?? client).get({ url: '/billing/contact', ...options });
642
670
  }
643
671
  /**
644
- * Create a new user.
672
+ * Update organization contact information and billing address.
645
673
  *
646
- * Create a new user in your Cloudfleet organization. Requires a valid invite code generated by the `invites create` command. The invite code is a unique string that can be used only once to create a new user. The invite code is generated by the `POST /invites` endpoint.
674
+ * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
647
675
  *
648
676
  */
649
- static createUser(options) {
650
- return (options.client ?? client).post({
651
- url: '/users',
677
+ static updateContact(options) {
678
+ return (options.client ?? client).put({
679
+ url: '/billing/contact',
652
680
  ...options,
653
681
  headers: {
654
682
  'Content-Type': 'application/json',
@@ -657,34 +685,23 @@ export class UsersService {
657
685
  });
658
686
  }
659
687
  /**
660
- * Delete user by id.
661
- *
662
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
663
- *
664
- */
665
- static deleteUser(options) {
666
- return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
667
- }
668
- /**
669
- * Get user profile information by id.
670
- *
671
- * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
688
+ * Get applied promotional credits
672
689
  *
673
- * 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.
674
691
  *
675
692
  */
676
- static getUser(options) {
677
- return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
693
+ static getCredits(options) {
694
+ return (options?.client ?? client).get({ url: '/billing/credits', ...options });
678
695
  }
679
696
  /**
680
- * Update user profile information.
697
+ * Redeem promotional credits code.
681
698
  *
682
- * Update user profile information: email, first name, last name, role. This endpoint can be accessed by administrators and the user itself. Role and status can be changed by administrators only.
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.
683
700
  *
684
701
  */
685
- static updateUser(options) {
686
- return (options.client ?? client).put({
687
- url: '/users/{user_id}',
702
+ static redeemCredits(options) {
703
+ return (options.client ?? client).post({
704
+ url: '/billing/credits',
688
705
  ...options,
689
706
  headers: {
690
707
  'Content-Type': 'application/json',