@cloudfleet/sdk 0.0.1-a104fac → 0.0.1-a3d32c9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
2
  import { queryOptions } from '@tanstack/react-query';
3
3
  import { client } from '../client.gen';
4
- import { BillingService, ChartsMarketplaceService, ClustersService, InvitesService, McpService, OrganizationService, RegistryService, TokensService, UsersService } from '../sdk.gen';
4
+ import { BillingService, ChartsMarketplaceService, ClustersService, InvitesService, McpService, OrganizationService, RegistryService, TicketsService, TokensService, UsersService } from '../sdk.gen';
5
5
  const createQueryKey = (id, options, infinite, tags) => {
6
6
  const params = { _id: id, baseUrl: options?.baseUrl || (options?.client ?? client).getConfig().baseUrl };
7
7
  if (infinite) {
@@ -24,16 +24,13 @@ const createQueryKey = (id, options, infinite, tags) => {
24
24
  }
25
25
  return [params];
26
26
  };
27
- export const getUsageQueryKey = (options) => createQueryKey('getUsage', options);
27
+ export const listUserOrganizationsQueryKey = (options) => createQueryKey('listUserOrganizations', options);
28
28
  /**
29
- * Get billing usage information.
30
- *
31
- * 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.
32
- *
29
+ * Get a list of organizations the user belongs to. Used during authentication process.
33
30
  */
34
- export const getUsageOptions = (options) => queryOptions({
31
+ export const listUserOrganizationsOptions = (options) => queryOptions({
35
32
  queryFn: async ({ queryKey, signal }) => {
36
- const { data } = await BillingService.getUsage({
33
+ const { data } = await UsersService.listUserOrganizations({
37
34
  ...options,
38
35
  ...queryKey[0],
39
36
  signal,
@@ -41,18 +38,20 @@ export const getUsageOptions = (options) => queryOptions({
41
38
  });
42
39
  return data;
43
40
  },
44
- queryKey: getUsageQueryKey(options)
41
+ queryKey: listUserOrganizationsQueryKey(options)
45
42
  });
46
- export const getPaymentMethodQueryKey = (options) => createQueryKey('getPaymentMethod', options);
43
+ export const listUsersQueryKey = (options) => createQueryKey('listUsers', options);
47
44
  /**
48
- * Get organization payment method information.
45
+ * List users in organization.
46
+ *
47
+ * 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.
49
48
  *
50
- * 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.
49
+ * This endpoint is available to all users in the organization.
51
50
  *
52
51
  */
53
- export const getPaymentMethodOptions = (options) => queryOptions({
52
+ export const listUsersOptions = (options) => queryOptions({
54
53
  queryFn: async ({ queryKey, signal }) => {
55
- const { data } = await BillingService.getPaymentMethod({
54
+ const { data } = await UsersService.listUsers({
56
55
  ...options,
57
56
  ...queryKey[0],
58
57
  signal,
@@ -60,18 +59,18 @@ export const getPaymentMethodOptions = (options) => queryOptions({
60
59
  });
61
60
  return data;
62
61
  },
63
- queryKey: getPaymentMethodQueryKey(options)
62
+ queryKey: listUsersQueryKey(options)
64
63
  });
65
64
  /**
66
- * Get Stripe client secret.
65
+ * Create a new user.
67
66
  *
68
- * 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.
67
+ * 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.
69
68
  *
70
69
  */
71
- export const getPaymentMethodSecretMutation = (options) => {
70
+ export const createUserMutation = (options) => {
72
71
  const mutationOptions = {
73
72
  mutationFn: async (fnOptions) => {
74
- const { data } = await BillingService.getPaymentMethodSecret({
73
+ const { data } = await UsersService.createUser({
75
74
  ...options,
76
75
  ...fnOptions,
77
76
  throwOnError: true
@@ -81,54 +80,16 @@ export const getPaymentMethodSecretMutation = (options) => {
81
80
  };
82
81
  return mutationOptions;
83
82
  };
84
- export const listInvoicesQueryKey = (options) => createQueryKey('listInvoices', options);
85
- /**
86
- * List issued invoices.
87
- *
88
- * 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.
89
- *
90
- */
91
- export const listInvoicesOptions = (options) => queryOptions({
92
- queryFn: async ({ queryKey, signal }) => {
93
- const { data } = await BillingService.listInvoices({
94
- ...options,
95
- ...queryKey[0],
96
- signal,
97
- throwOnError: true
98
- });
99
- return data;
100
- },
101
- queryKey: listInvoicesQueryKey(options)
102
- });
103
- export const getContactQueryKey = (options) => createQueryKey('getContact', options);
104
- /**
105
- * Get organization contact and billing address information.
106
- *
107
- * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
108
- *
109
- */
110
- export const getContactOptions = (options) => queryOptions({
111
- queryFn: async ({ queryKey, signal }) => {
112
- const { data } = await BillingService.getContact({
113
- ...options,
114
- ...queryKey[0],
115
- signal,
116
- throwOnError: true
117
- });
118
- return data;
119
- },
120
- queryKey: getContactQueryKey(options)
121
- });
122
83
  /**
123
- * Update organization contact information and billing address.
84
+ * Delete user by id.
124
85
  *
125
- * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
86
+ * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
126
87
  *
127
88
  */
128
- export const updateContactMutation = (options) => {
89
+ export const deleteUserMutation = (options) => {
129
90
  const mutationOptions = {
130
91
  mutationFn: async (fnOptions) => {
131
- const { data } = await BillingService.updateContact({
92
+ const { data } = await UsersService.deleteUser({
132
93
  ...options,
133
94
  ...fnOptions,
134
95
  throwOnError: true
@@ -138,16 +99,18 @@ export const updateContactMutation = (options) => {
138
99
  };
139
100
  return mutationOptions;
140
101
  };
141
- export const getCreditsQueryKey = (options) => createQueryKey('getCredits', options);
102
+ export const getUserQueryKey = (options) => createQueryKey('getUser', options);
142
103
  /**
143
- * Get applied promotional credits
104
+ * Get user profile information by id.
144
105
  *
145
- * 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.
106
+ * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
107
+ *
108
+ * This endpoint is available to all users in the organization.
146
109
  *
147
110
  */
148
- export const getCreditsOptions = (options) => queryOptions({
111
+ export const getUserOptions = (options) => queryOptions({
149
112
  queryFn: async ({ queryKey, signal }) => {
150
- const { data } = await BillingService.getCredits({
113
+ const { data } = await UsersService.getUser({
151
114
  ...options,
152
115
  ...queryKey[0],
153
116
  signal,
@@ -155,18 +118,18 @@ export const getCreditsOptions = (options) => queryOptions({
155
118
  });
156
119
  return data;
157
120
  },
158
- queryKey: getCreditsQueryKey(options)
121
+ queryKey: getUserQueryKey(options)
159
122
  });
160
123
  /**
161
- * Redeem promotional credits code.
124
+ * Update user profile information.
162
125
  *
163
- * 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.
126
+ * 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.
164
127
  *
165
128
  */
166
- export const redeemCreditsMutation = (options) => {
129
+ export const updateUserMutation = (options) => {
167
130
  const mutationOptions = {
168
131
  mutationFn: async (fnOptions) => {
169
- const { data } = await BillingService.redeemCredits({
132
+ const { data } = await UsersService.updateUser({
170
133
  ...options,
171
134
  ...fnOptions,
172
135
  throwOnError: true
@@ -176,18 +139,16 @@ export const redeemCreditsMutation = (options) => {
176
139
  };
177
140
  return mutationOptions;
178
141
  };
179
- export const listChartsQueryKey = (options) => createQueryKey('listCharts', options);
142
+ export const listTokensQueryKey = (options) => createQueryKey('listTokens', options);
180
143
  /**
181
- * List charts.
182
- *
183
- * Returns a list of charts in the cluster.
144
+ * List access tokens in organization.
184
145
  *
185
- * This endpoint is available to all users in the organization.
146
+ * 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.
186
147
  *
187
148
  */
188
- export const listChartsOptions = (options) => queryOptions({
149
+ export const listTokensOptions = (options) => queryOptions({
189
150
  queryFn: async ({ queryKey, signal }) => {
190
- const { data } = await ClustersService.listCharts({
151
+ const { data } = await TokensService.listTokens({
191
152
  ...options,
192
153
  ...queryKey[0],
193
154
  signal,
@@ -195,20 +156,20 @@ export const listChartsOptions = (options) => queryOptions({
195
156
  });
196
157
  return data;
197
158
  },
198
- queryKey: listChartsQueryKey(options)
159
+ queryKey: listTokensQueryKey(options)
199
160
  });
200
161
  /**
201
- * Create a new chart.
162
+ * Create a new access token.
202
163
  *
203
- * Create a new chart deployment.
164
+ * 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.
204
165
  *
205
166
  * This endpoint is available to administrators of the organization only.
206
167
  *
207
168
  */
208
- export const createChartMutation = (options) => {
169
+ export const createTokenMutation = (options) => {
209
170
  const mutationOptions = {
210
171
  mutationFn: async (fnOptions) => {
211
- const { data } = await ClustersService.createChart({
172
+ const { data } = await TokensService.createToken({
212
173
  ...options,
213
174
  ...fnOptions,
214
175
  throwOnError: true
@@ -219,17 +180,15 @@ export const createChartMutation = (options) => {
219
180
  return mutationOptions;
220
181
  };
221
182
  /**
222
- * Permanently delete the chart deployment from the cluster.
223
- *
224
- * This endpoint will permanently delete chart. This operation cannot be undone.
183
+ * Permanently delete access token.
225
184
  *
226
- * This endpoint is available to administrators of the organization only.
185
+ * 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.
227
186
  *
228
187
  */
229
- export const deleteChartMutation = (options) => {
188
+ export const deleteTokenMutation = (options) => {
230
189
  const mutationOptions = {
231
190
  mutationFn: async (fnOptions) => {
232
- const { data } = await ClustersService.deleteChart({
191
+ const { data } = await TokensService.deleteToken({
233
192
  ...options,
234
193
  ...fnOptions,
235
194
  throwOnError: true
@@ -239,18 +198,16 @@ export const deleteChartMutation = (options) => {
239
198
  };
240
199
  return mutationOptions;
241
200
  };
242
- export const getChartQueryKey = (options) => createQueryKey('getChart', options);
201
+ export const getTokenQueryKey = (options) => createQueryKey('getToken', options);
243
202
  /**
244
- * Get chart information.
245
- *
246
- * Returns the details of the chart deployment.
203
+ * Get access token information.
247
204
  *
248
- * This endpoint is available to all users in the organization.
205
+ * 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.
249
206
  *
250
207
  */
251
- export const getChartOptions = (options) => queryOptions({
208
+ export const getTokenOptions = (options) => queryOptions({
252
209
  queryFn: async ({ queryKey, signal }) => {
253
- const { data } = await ClustersService.getChart({
210
+ const { data } = await TokensService.getToken({
254
211
  ...options,
255
212
  ...queryKey[0],
256
213
  signal,
@@ -258,20 +215,20 @@ export const getChartOptions = (options) => queryOptions({
258
215
  });
259
216
  return data;
260
217
  },
261
- queryKey: getChartQueryKey(options)
218
+ queryKey: getTokenQueryKey(options)
262
219
  });
263
220
  /**
264
- * Update chart information.
221
+ * Update access token information.
265
222
  *
266
- * This endpoint allows you to update the values of a chart deployment.
223
+ * 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.
267
224
  *
268
225
  * This endpoint is available to administrators of the organization only.
269
226
  *
270
227
  */
271
- export const updateChartMutation = (options) => {
228
+ export const updateTokenMutation = (options) => {
272
229
  const mutationOptions = {
273
230
  mutationFn: async (fnOptions) => {
274
- const { data } = await ClustersService.updateChart({
231
+ const { data } = await TokensService.updateToken({
275
232
  ...options,
276
233
  ...fnOptions,
277
234
  throwOnError: true
@@ -281,18 +238,34 @@ export const updateChartMutation = (options) => {
281
238
  };
282
239
  return mutationOptions;
283
240
  };
284
- export const listFleetsQueryKey = (options) => createQueryKey('listFleets', options);
285
241
  /**
286
- * List fleets.
242
+ * Regenerate access token secret key.
287
243
  *
288
- * Returns a list of fleets belonging to the cluster. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
244
+ * Generates a new access token secret. Old secret will not be valid anymore.
245
+ */
246
+ export const regenerateTokenMutation = (options) => {
247
+ const mutationOptions = {
248
+ mutationFn: async (fnOptions) => {
249
+ const { data } = await TokensService.regenerateToken({
250
+ ...options,
251
+ ...fnOptions,
252
+ throwOnError: true
253
+ });
254
+ return data;
255
+ }
256
+ };
257
+ return mutationOptions;
258
+ };
259
+ export const listTicketsQueryKey = (options) => createQueryKey('listTickets', options);
260
+ /**
261
+ * List tickets for the current organization.
289
262
  *
290
- * This endpoint is available to all users in the organization.
263
+ * Returns all tickets belonging to the caller's organization, newest first.
291
264
  *
292
265
  */
293
- export const listFleetsOptions = (options) => queryOptions({
266
+ export const listTicketsOptions = (options) => queryOptions({
294
267
  queryFn: async ({ queryKey, signal }) => {
295
- const { data } = await ClustersService.listFleets({
268
+ const { data } = await TicketsService.listTickets({
296
269
  ...options,
297
270
  ...queryKey[0],
298
271
  signal,
@@ -300,20 +273,18 @@ export const listFleetsOptions = (options) => queryOptions({
300
273
  });
301
274
  return data;
302
275
  },
303
- queryKey: listFleetsQueryKey(options)
276
+ queryKey: listTicketsQueryKey(options)
304
277
  });
305
278
  /**
306
- * Create a new fleet.
279
+ * Create a new support ticket.
307
280
  *
308
- * 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.
309
- *
310
- * This endpoint is available to administrators of the organization only.
281
+ * 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).
311
282
  *
312
283
  */
313
- export const createFleetMutation = (options) => {
284
+ export const createTicketMutation = (options) => {
314
285
  const mutationOptions = {
315
286
  mutationFn: async (fnOptions) => {
316
- const { data } = await ClustersService.createFleet({
287
+ const { data } = await TicketsService.createTicket({
317
288
  ...options,
318
289
  ...fnOptions,
319
290
  throwOnError: true
@@ -324,17 +295,15 @@ export const createFleetMutation = (options) => {
324
295
  return mutationOptions;
325
296
  };
326
297
  /**
327
- * Permanently delete fleet.
298
+ * Close a ticket (soft close).
328
299
  *
329
- * 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.
330
- *
331
- * This endpoint is available to administrators of the organization only.
300
+ * Marks the ticket as closed. Closed is a terminal state users cannot reply to a closed ticket; a new ticket must be opened instead.
332
301
  *
333
302
  */
334
- export const deleteFleetMutation = (options) => {
303
+ export const closeTicketMutation = (options) => {
335
304
  const mutationOptions = {
336
305
  mutationFn: async (fnOptions) => {
337
- const { data } = await ClustersService.deleteFleet({
306
+ const { data } = await TicketsService.closeTicket({
338
307
  ...options,
339
308
  ...fnOptions,
340
309
  throwOnError: true
@@ -344,18 +313,13 @@ export const deleteFleetMutation = (options) => {
344
313
  };
345
314
  return mutationOptions;
346
315
  };
347
- export const getFleetQueryKey = (options) => createQueryKey('getFleet', options);
316
+ export const getTicketQueryKey = (options) => createQueryKey('getTicket', options);
348
317
  /**
349
- * Get fleet information.
350
- *
351
- * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
352
- *
353
- * This endpoint is available to all users in the organization.
354
- *
318
+ * Get a ticket and its messages.
355
319
  */
356
- export const getFleetOptions = (options) => queryOptions({
320
+ export const getTicketOptions = (options) => queryOptions({
357
321
  queryFn: async ({ queryKey, signal }) => {
358
- const { data } = await ClustersService.getFleet({
322
+ const { data } = await TicketsService.getTicket({
359
323
  ...options,
360
324
  ...queryKey[0],
361
325
  signal,
@@ -363,24 +327,18 @@ export const getFleetOptions = (options) => queryOptions({
363
327
  });
364
328
  return data;
365
329
  },
366
- queryKey: getFleetQueryKey(options)
330
+ queryKey: getTicketQueryKey(options)
367
331
  });
368
332
  /**
369
- * Update fleet information.
370
- *
371
- * This endpoint allows you to update fleet details.
372
- *
373
- * 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`.
333
+ * Append a customer reply to a ticket.
374
334
  *
375
- * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
376
- *
377
- * This endpoint is available to administrators of the organization only.
335
+ * Multipart form-data with a JSON-encoded `payload` field carrying `body`, plus up to 3 `attachments` files. Returns 409 if the ticket is closed.
378
336
  *
379
337
  */
380
- export const updateFleetMutation = (options) => {
338
+ export const replyTicketMutation = (options) => {
381
339
  const mutationOptions = {
382
340
  mutationFn: async (fnOptions) => {
383
- const { data } = await ClustersService.updateFleet({
341
+ const { data } = await TicketsService.replyTicket({
384
342
  ...options,
385
343
  ...fnOptions,
386
344
  throwOnError: true
@@ -390,15 +348,13 @@ export const updateFleetMutation = (options) => {
390
348
  };
391
349
  return mutationOptions;
392
350
  };
393
- export const queryClusterQueryKey = (options) => createQueryKey('queryCluster', options);
351
+ export const getTicketAttachmentQueryKey = (options) => createQueryKey('getTicketAttachment', options);
394
352
  /**
395
- * Query Kubernetes cluster API
396
- *
397
- * 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.
353
+ * Download a ticket attachment.
398
354
  */
399
- export const queryClusterOptions = (options) => queryOptions({
355
+ export const getTicketAttachmentOptions = (options) => queryOptions({
400
356
  queryFn: async ({ queryKey, signal }) => {
401
- const { data } = await ClustersService.queryCluster({
357
+ const { data } = await TicketsService.getTicketAttachment({
402
358
  ...options,
403
359
  ...queryKey[0],
404
360
  signal,
@@ -406,20 +362,18 @@ export const queryClusterOptions = (options) => queryOptions({
406
362
  });
407
363
  return data;
408
364
  },
409
- queryKey: queryClusterQueryKey(options)
365
+ queryKey: getTicketAttachmentQueryKey(options)
410
366
  });
411
- export const listClustersQueryKey = (options) => createQueryKey('listClusters', options);
367
+ export const listRepositoriesQueryKey = (options) => createQueryKey('listRepositories', options);
412
368
  /**
413
- * List clusters.
414
- *
415
- * 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.
369
+ * List repositories
416
370
  *
417
- * This endpoint is available to all users in the organization.
371
+ * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
418
372
  *
419
373
  */
420
- export const listClustersOptions = (options) => queryOptions({
374
+ export const listRepositoriesOptions = (options) => queryOptions({
421
375
  queryFn: async ({ queryKey, signal }) => {
422
- const { data } = await ClustersService.listClusters({
376
+ const { data } = await RegistryService.listRepositories({
423
377
  ...options,
424
378
  ...queryKey[0],
425
379
  signal,
@@ -427,20 +381,37 @@ export const listClustersOptions = (options) => queryOptions({
427
381
  });
428
382
  return data;
429
383
  },
430
- queryKey: listClustersQueryKey(options)
384
+ queryKey: listRepositoriesQueryKey(options)
431
385
  });
386
+ export const listTagsQueryKey = (options) => createQueryKey('listTags', options);
432
387
  /**
433
- * Create a new cluster.
388
+ * List tags for a repository
434
389
  *
435
- * 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.
390
+ * 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.
436
391
  *
437
- * This endpoint is available to administrators of the organization only.
392
+ */
393
+ export const listTagsOptions = (options) => queryOptions({
394
+ queryFn: async ({ queryKey, signal }) => {
395
+ const { data } = await RegistryService.listTags({
396
+ ...options,
397
+ ...queryKey[0],
398
+ signal,
399
+ throwOnError: true
400
+ });
401
+ return data;
402
+ },
403
+ queryKey: listTagsQueryKey(options)
404
+ });
405
+ /**
406
+ * Delete tag
407
+ *
408
+ * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
438
409
  *
439
410
  */
440
- export const createClusterMutation = (options) => {
411
+ export const deleteTagMutation = (options) => {
441
412
  const mutationOptions = {
442
413
  mutationFn: async (fnOptions) => {
443
- const { data } = await ClustersService.createCluster({
414
+ const { data } = await RegistryService.deleteTag({
444
415
  ...options,
445
416
  ...fnOptions,
446
417
  throwOnError: true
@@ -450,18 +421,56 @@ export const createClusterMutation = (options) => {
450
421
  };
451
422
  return mutationOptions;
452
423
  };
424
+ export const getTagQueryKey = (options) => createQueryKey('getTag', options);
453
425
  /**
454
- * Permanently delete cluster.
426
+ * Get tag details
455
427
  *
456
- * This endpoint will permanently delete the cluster. This operation cannot be undone.
428
+ * 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.
457
429
  *
458
- * This endpoint is available to administrators of the organization only.
430
+ */
431
+ export const getTagOptions = (options) => queryOptions({
432
+ queryFn: async ({ queryKey, signal }) => {
433
+ const { data } = await RegistryService.getTag({
434
+ ...options,
435
+ ...queryKey[0],
436
+ signal,
437
+ throwOnError: true
438
+ });
439
+ return data;
440
+ },
441
+ queryKey: getTagQueryKey(options)
442
+ });
443
+ export const getOrganizationQueryKey = (options) => createQueryKey('getOrganization', options);
444
+ /**
445
+ * Get organization information.
446
+ *
447
+ * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
448
+ *
449
+ * This endpoint is available to all users in the organization.
459
450
  *
460
451
  */
461
- export const deleteClusterMutation = (options) => {
452
+ export const getOrganizationOptions = (options) => queryOptions({
453
+ queryFn: async ({ queryKey, signal }) => {
454
+ const { data } = await OrganizationService.getOrganization({
455
+ ...options,
456
+ ...queryKey[0],
457
+ signal,
458
+ throwOnError: true
459
+ });
460
+ return data;
461
+ },
462
+ queryKey: getOrganizationQueryKey(options)
463
+ });
464
+ /**
465
+ * Create a new organization / Cloudfleet account signup.
466
+ *
467
+ * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
468
+ *
469
+ */
470
+ export const createOrganizationMutation = (options) => {
462
471
  const mutationOptions = {
463
472
  mutationFn: async (fnOptions) => {
464
- const { data } = await ClustersService.deleteCluster({
473
+ const { data } = await OrganizationService.createOrganization({
465
474
  ...options,
466
475
  ...fnOptions,
467
476
  throwOnError: true
@@ -471,18 +480,18 @@ export const deleteClusterMutation = (options) => {
471
480
  };
472
481
  return mutationOptions;
473
482
  };
474
- export const getClusterQueryKey = (options) => createQueryKey('getCluster', options);
483
+ export const getBasicPriceConsentQueryKey = (options) => createQueryKey('getBasicPriceConsent', options);
475
484
  /**
476
- * Get cluster information.
485
+ * Get the organization's consent status for the new Basic price.
477
486
  *
478
- * 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.
487
+ * 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.
479
488
  *
480
- * This endpoint is available to all users in the organization.
489
+ * This endpoint is available to all users in the organization and drives the consent dialog in the console.
481
490
  *
482
491
  */
483
- export const getClusterOptions = (options) => queryOptions({
492
+ export const getBasicPriceConsentOptions = (options) => queryOptions({
484
493
  queryFn: async ({ queryKey, signal }) => {
485
- const { data } = await ClustersService.getCluster({
494
+ const { data } = await OrganizationService.getBasicPriceConsent({
486
495
  ...options,
487
496
  ...queryKey[0],
488
497
  signal,
@@ -490,20 +499,36 @@ export const getClusterOptions = (options) => queryOptions({
490
499
  });
491
500
  return data;
492
501
  },
493
- queryKey: getClusterQueryKey(options)
502
+ queryKey: getBasicPriceConsentQueryKey(options)
494
503
  });
495
504
  /**
496
- * Update cluster information.
505
+ * Record an administrator's decision on the new Basic price.
497
506
  *
498
- * 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.
507
+ * 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.
499
508
  *
500
- * This endpoint is available to administrators of the organization only.
509
+ */
510
+ export const setBasicPriceConsentMutation = (options) => {
511
+ const mutationOptions = {
512
+ mutationFn: async (fnOptions) => {
513
+ const { data } = await OrganizationService.setBasicPriceConsent({
514
+ ...options,
515
+ ...fnOptions,
516
+ throwOnError: true
517
+ });
518
+ return data;
519
+ }
520
+ };
521
+ return mutationOptions;
522
+ };
523
+ /**
524
+ * MCP endpoint
501
525
  *
526
+ * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
502
527
  */
503
- export const updateClusterMutation = (options) => {
528
+ export const postMcpMutation = (options) => {
504
529
  const mutationOptions = {
505
530
  mutationFn: async (fnOptions) => {
506
- const { data } = await ClustersService.updateCluster({
531
+ const { data } = await McpService.postMcp({
507
532
  ...options,
508
533
  ...fnOptions,
509
534
  throwOnError: true
@@ -513,16 +538,18 @@ export const updateClusterMutation = (options) => {
513
538
  };
514
539
  return mutationOptions;
515
540
  };
516
- export const getClusterCaQueryKey = (options) => createQueryKey('getClusterCa', options);
541
+ export const listMarketplaceChartsQueryKey = (options) => createQueryKey('listMarketplaceCharts', options);
517
542
  /**
518
- * Get the cluster's certificate authority in PEM format.
543
+ * List chart listings available in the marketplace.
544
+ *
545
+ * Returns a list of available charts in the marketplace.
519
546
  *
520
- * 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.
547
+ * This endpoint is available to all users in the organization.
521
548
  *
522
549
  */
523
- export const getClusterCaOptions = (options) => queryOptions({
550
+ export const listMarketplaceChartsOptions = (options) => queryOptions({
524
551
  queryFn: async ({ queryKey, signal }) => {
525
- const { data } = await ClustersService.getClusterCa({
552
+ const { data } = await ChartsMarketplaceService.listMarketplaceCharts({
526
553
  ...options,
527
554
  ...queryKey[0],
528
555
  signal,
@@ -530,32 +557,36 @@ export const getClusterCaOptions = (options) => queryOptions({
530
557
  });
531
558
  return data;
532
559
  },
533
- queryKey: getClusterCaQueryKey(options)
560
+ queryKey: listMarketplaceChartsQueryKey(options)
534
561
  });
562
+ export const getMarketplaceChartFilesQueryKey = (options) => createQueryKey('getMarketplaceChartFiles', options);
535
563
  /**
536
- * Node join information for the cluster
564
+ * Get chart files for a specific version channel.
537
565
  *
538
- * 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.
566
+ * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
567
+ *
568
+ * 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.
569
+ *
570
+ * This endpoint is available to all users in the organization.
539
571
  *
540
572
  */
541
- export const getJoinInformationMutation = (options) => {
542
- const mutationOptions = {
543
- mutationFn: async (fnOptions) => {
544
- const { data } = await ClustersService.getJoinInformation({
545
- ...options,
546
- ...fnOptions,
547
- throwOnError: true
548
- });
549
- return data;
550
- }
551
- };
552
- return mutationOptions;
553
- };
573
+ export const getMarketplaceChartFilesOptions = (options) => queryOptions({
574
+ queryFn: async ({ queryKey, signal }) => {
575
+ const { data } = await ChartsMarketplaceService.getMarketplaceChartFiles({
576
+ ...options,
577
+ ...queryKey[0],
578
+ signal,
579
+ throwOnError: true
580
+ });
581
+ return data;
582
+ },
583
+ queryKey: getMarketplaceChartFilesQueryKey(options)
584
+ });
554
585
  export const listInvitesQueryKey = (options) => createQueryKey('listInvites', options);
555
586
  /**
556
587
  * List invites.
557
588
  *
558
- * Returns a list of invites under the current organization. This endpoint is available to all users in the organization.
589
+ * Returns a list of pending (non-expired) invites under the current organization. This endpoint is available to administrators of the organization only.
559
590
  *
560
591
  */
561
592
  export const listInvitesOptions = (options) => queryOptions({
@@ -593,7 +624,7 @@ export const getInviteQueryKey = (options) => createQueryKey('getInvite', option
593
624
  /**
594
625
  * Get invite information.
595
626
  *
596
- * Returns invite details.
627
+ * 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.
597
628
  *
598
629
  */
599
630
  export const getInviteOptions = (options) => queryOptions({
@@ -627,18 +658,15 @@ export const deleteInviteMutation = (options) => {
627
658
  };
628
659
  return mutationOptions;
629
660
  };
630
- export const listMarketplaceChartsQueryKey = (options) => createQueryKey('listMarketplaceCharts', options);
661
+ export const queryClusterQueryKey = (options) => createQueryKey('queryCluster', options);
631
662
  /**
632
- * List chart listings available in the marketplace.
633
- *
634
- * Returns a list of available charts in the marketplace.
635
- *
636
- * This endpoint is available to all users in the organization.
663
+ * Query Kubernetes cluster API
637
664
  *
665
+ * 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.
638
666
  */
639
- export const listMarketplaceChartsOptions = (options) => queryOptions({
667
+ export const queryClusterOptions = (options) => queryOptions({
640
668
  queryFn: async ({ queryKey, signal }) => {
641
- const { data } = await ChartsMarketplaceService.listMarketplaceCharts({
669
+ const { data } = await ClustersService.queryCluster({
642
670
  ...options,
643
671
  ...queryKey[0],
644
672
  signal,
@@ -646,22 +674,20 @@ export const listMarketplaceChartsOptions = (options) => queryOptions({
646
674
  });
647
675
  return data;
648
676
  },
649
- queryKey: listMarketplaceChartsQueryKey(options)
677
+ queryKey: queryClusterQueryKey(options)
650
678
  });
651
- export const getMarketplaceChartFilesQueryKey = (options) => createQueryKey('getMarketplaceChartFiles', options);
679
+ export const listFleetsQueryKey = (options) => createQueryKey('listFleets', options);
652
680
  /**
653
- * Get chart files for a specific version channel.
654
- *
655
- * Returns the Chart.yaml, values.yaml, and values.schema.json files for the latest version matching the specified version channel.
681
+ * List fleets.
656
682
  *
657
- * 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.
683
+ * Returns a list of fleets belonging to the cluster. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
658
684
  *
659
685
  * This endpoint is available to all users in the organization.
660
686
  *
661
687
  */
662
- export const getMarketplaceChartFilesOptions = (options) => queryOptions({
688
+ export const listFleetsOptions = (options) => queryOptions({
663
689
  queryFn: async ({ queryKey, signal }) => {
664
- const { data } = await ChartsMarketplaceService.getMarketplaceChartFiles({
690
+ const { data } = await ClustersService.listFleets({
665
691
  ...options,
666
692
  ...queryKey[0],
667
693
  signal,
@@ -669,17 +695,22 @@ export const getMarketplaceChartFilesOptions = (options) => queryOptions({
669
695
  });
670
696
  return data;
671
697
  },
672
- queryKey: getMarketplaceChartFilesQueryKey(options)
698
+ queryKey: listFleetsQueryKey(options)
673
699
  });
674
700
  /**
675
- * MCP endpoint
701
+ * Create a new fleet.
702
+ *
703
+ * 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.
704
+ *
705
+ * The cluster must be ready (status `deployed`) before a fleet can be added. Adding a fleet while the cluster is still provisioning returns `409`.
706
+ *
707
+ * This endpoint is available to administrators of the organization only.
676
708
  *
677
- * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
678
709
  */
679
- export const postMcpMutation = (options) => {
710
+ export const createFleetMutation = (options) => {
680
711
  const mutationOptions = {
681
712
  mutationFn: async (fnOptions) => {
682
- const { data } = await McpService.postMcp({
713
+ const { data } = await ClustersService.createFleet({
683
714
  ...options,
684
715
  ...fnOptions,
685
716
  throwOnError: true
@@ -689,18 +720,41 @@ export const postMcpMutation = (options) => {
689
720
  };
690
721
  return mutationOptions;
691
722
  };
692
- export const getOrganizationQueryKey = (options) => createQueryKey('getOrganization', options);
693
723
  /**
694
- * Get organization information.
724
+ * Permanently delete fleet.
695
725
  *
696
- * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
726
+ * 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.
727
+ *
728
+ * 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.
729
+ *
730
+ * This endpoint is available to administrators of the organization only.
731
+ *
732
+ */
733
+ export const deleteFleetMutation = (options) => {
734
+ const mutationOptions = {
735
+ mutationFn: async (fnOptions) => {
736
+ const { data } = await ClustersService.deleteFleet({
737
+ ...options,
738
+ ...fnOptions,
739
+ throwOnError: true
740
+ });
741
+ return data;
742
+ }
743
+ };
744
+ return mutationOptions;
745
+ };
746
+ export const getFleetQueryKey = (options) => createQueryKey('getFleet', options);
747
+ /**
748
+ * Get fleet information.
749
+ *
750
+ * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
697
751
  *
698
752
  * This endpoint is available to all users in the organization.
699
753
  *
700
754
  */
701
- export const getOrganizationOptions = (options) => queryOptions({
755
+ export const getFleetOptions = (options) => queryOptions({
702
756
  queryFn: async ({ queryKey, signal }) => {
703
- const { data } = await OrganizationService.getOrganization({
757
+ const { data } = await ClustersService.getFleet({
704
758
  ...options,
705
759
  ...queryKey[0],
706
760
  signal,
@@ -708,18 +762,24 @@ export const getOrganizationOptions = (options) => queryOptions({
708
762
  });
709
763
  return data;
710
764
  },
711
- queryKey: getOrganizationQueryKey(options)
765
+ queryKey: getFleetQueryKey(options)
712
766
  });
713
767
  /**
714
- * Create a new organization / Cloudfleet account signup.
768
+ * Update fleet information.
715
769
  *
716
- * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
770
+ * This endpoint allows you to update fleet details.
771
+ *
772
+ * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
773
+ *
774
+ * 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).
775
+ *
776
+ * This endpoint is available to administrators of the organization only.
717
777
  *
718
778
  */
719
- export const createOrganizationMutation = (options) => {
779
+ export const updateFleetMutation = (options) => {
720
780
  const mutationOptions = {
721
781
  mutationFn: async (fnOptions) => {
722
- const { data } = await OrganizationService.createOrganization({
782
+ const { data } = await ClustersService.updateFleet({
723
783
  ...options,
724
784
  ...fnOptions,
725
785
  throwOnError: true
@@ -729,16 +789,18 @@ export const createOrganizationMutation = (options) => {
729
789
  };
730
790
  return mutationOptions;
731
791
  };
732
- export const listRepositoriesQueryKey = (options) => createQueryKey('listRepositories', options);
792
+ export const listChartsQueryKey = (options) => createQueryKey('listCharts', options);
733
793
  /**
734
- * List repositories
794
+ * List charts.
735
795
  *
736
- * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
796
+ * Returns a list of charts in the cluster.
797
+ *
798
+ * This endpoint is available to all users in the organization.
737
799
  *
738
800
  */
739
- export const listRepositoriesOptions = (options) => queryOptions({
801
+ export const listChartsOptions = (options) => queryOptions({
740
802
  queryFn: async ({ queryKey, signal }) => {
741
- const { data } = await RegistryService.listRepositories({
803
+ const { data } = await ClustersService.listCharts({
742
804
  ...options,
743
805
  ...queryKey[0],
744
806
  signal,
@@ -746,37 +808,41 @@ export const listRepositoriesOptions = (options) => queryOptions({
746
808
  });
747
809
  return data;
748
810
  },
749
- queryKey: listRepositoriesQueryKey(options)
811
+ queryKey: listChartsQueryKey(options)
750
812
  });
751
- export const listTagsQueryKey = (options) => createQueryKey('listTags', options);
752
813
  /**
753
- * List tags for a repository
814
+ * Create a new chart.
754
815
  *
755
- * 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.
816
+ * Create a new chart deployment.
817
+ *
818
+ * This endpoint is available to administrators of the organization only.
756
819
  *
757
820
  */
758
- export const listTagsOptions = (options) => queryOptions({
759
- queryFn: async ({ queryKey, signal }) => {
760
- const { data } = await RegistryService.listTags({
761
- ...options,
762
- ...queryKey[0],
763
- signal,
764
- throwOnError: true
765
- });
766
- return data;
767
- },
768
- queryKey: listTagsQueryKey(options)
769
- });
821
+ export const createChartMutation = (options) => {
822
+ const mutationOptions = {
823
+ mutationFn: async (fnOptions) => {
824
+ const { data } = await ClustersService.createChart({
825
+ ...options,
826
+ ...fnOptions,
827
+ throwOnError: true
828
+ });
829
+ return data;
830
+ }
831
+ };
832
+ return mutationOptions;
833
+ };
770
834
  /**
771
- * Delete tag
835
+ * Permanently delete the chart deployment from the cluster.
772
836
  *
773
- * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
837
+ * This endpoint will permanently delete chart. This operation cannot be undone.
838
+ *
839
+ * This endpoint is available to administrators of the organization only.
774
840
  *
775
841
  */
776
- export const deleteTagMutation = (options) => {
842
+ export const deleteChartMutation = (options) => {
777
843
  const mutationOptions = {
778
844
  mutationFn: async (fnOptions) => {
779
- const { data } = await RegistryService.deleteTag({
845
+ const { data } = await ClustersService.deleteChart({
780
846
  ...options,
781
847
  ...fnOptions,
782
848
  throwOnError: true
@@ -786,16 +852,18 @@ export const deleteTagMutation = (options) => {
786
852
  };
787
853
  return mutationOptions;
788
854
  };
789
- export const getTagQueryKey = (options) => createQueryKey('getTag', options);
855
+ export const getChartQueryKey = (options) => createQueryKey('getChart', options);
790
856
  /**
791
- * Get tag details
857
+ * Get chart information.
792
858
  *
793
- * 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.
859
+ * Returns the details of the chart deployment.
860
+ *
861
+ * This endpoint is available to all users in the organization.
794
862
  *
795
863
  */
796
- export const getTagOptions = (options) => queryOptions({
864
+ export const getChartOptions = (options) => queryOptions({
797
865
  queryFn: async ({ queryKey, signal }) => {
798
- const { data } = await RegistryService.getTag({
866
+ const { data } = await ClustersService.getChart({
799
867
  ...options,
800
868
  ...queryKey[0],
801
869
  signal,
@@ -803,18 +871,41 @@ export const getTagOptions = (options) => queryOptions({
803
871
  });
804
872
  return data;
805
873
  },
806
- queryKey: getTagQueryKey(options)
874
+ queryKey: getChartQueryKey(options)
807
875
  });
808
- export const listTokensQueryKey = (options) => createQueryKey('listTokens', options);
809
876
  /**
810
- * List access tokens in organization.
877
+ * Update chart information.
811
878
  *
812
- * 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.
879
+ * This endpoint allows you to update the values of a chart deployment.
880
+ *
881
+ * This endpoint is available to administrators of the organization only.
813
882
  *
814
883
  */
815
- export const listTokensOptions = (options) => queryOptions({
884
+ export const updateChartMutation = (options) => {
885
+ const mutationOptions = {
886
+ mutationFn: async (fnOptions) => {
887
+ const { data } = await ClustersService.updateChart({
888
+ ...options,
889
+ ...fnOptions,
890
+ throwOnError: true
891
+ });
892
+ return data;
893
+ }
894
+ };
895
+ return mutationOptions;
896
+ };
897
+ export const listClustersQueryKey = (options) => createQueryKey('listClusters', options);
898
+ /**
899
+ * List clusters.
900
+ *
901
+ * Returns a list of clusters under the current organization.
902
+ *
903
+ * This endpoint is available to all users in the organization.
904
+ *
905
+ */
906
+ export const listClustersOptions = (options) => queryOptions({
816
907
  queryFn: async ({ queryKey, signal }) => {
817
- const { data } = await TokensService.listTokens({
908
+ const { data } = await ClustersService.listClusters({
818
909
  ...options,
819
910
  ...queryKey[0],
820
911
  signal,
@@ -822,20 +913,20 @@ export const listTokensOptions = (options) => queryOptions({
822
913
  });
823
914
  return data;
824
915
  },
825
- queryKey: listTokensQueryKey(options)
916
+ queryKey: listClustersQueryKey(options)
826
917
  });
827
918
  /**
828
- * Create a new access token.
919
+ * Create a new cluster.
829
920
  *
830
- * 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.
921
+ * 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.
831
922
  *
832
923
  * This endpoint is available to administrators of the organization only.
833
924
  *
834
925
  */
835
- export const createTokenMutation = (options) => {
926
+ export const createClusterMutation = (options) => {
836
927
  const mutationOptions = {
837
928
  mutationFn: async (fnOptions) => {
838
- const { data } = await TokensService.createToken({
929
+ const { data } = await ClustersService.createCluster({
839
930
  ...options,
840
931
  ...fnOptions,
841
932
  throwOnError: true
@@ -846,15 +937,19 @@ export const createTokenMutation = (options) => {
846
937
  return mutationOptions;
847
938
  };
848
939
  /**
849
- * Permanently delete access token.
940
+ * Permanently delete cluster.
850
941
  *
851
- * 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.
942
+ * This endpoint will permanently delete the cluster. This operation cannot be undone.
943
+ *
944
+ * 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.
945
+ *
946
+ * This endpoint is available to administrators of the organization only.
852
947
  *
853
948
  */
854
- export const deleteTokenMutation = (options) => {
949
+ export const deleteClusterMutation = (options) => {
855
950
  const mutationOptions = {
856
951
  mutationFn: async (fnOptions) => {
857
- const { data } = await TokensService.deleteToken({
952
+ const { data } = await ClustersService.deleteCluster({
858
953
  ...options,
859
954
  ...fnOptions,
860
955
  throwOnError: true
@@ -864,16 +959,18 @@ export const deleteTokenMutation = (options) => {
864
959
  };
865
960
  return mutationOptions;
866
961
  };
867
- export const getTokenQueryKey = (options) => createQueryKey('getToken', options);
962
+ export const getClusterQueryKey = (options) => createQueryKey('getCluster', options);
868
963
  /**
869
- * Get access token information.
964
+ * Get cluster information.
870
965
  *
871
- * 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.
966
+ * Returns cluster details.
967
+ *
968
+ * This endpoint is available to all users in the organization.
872
969
  *
873
970
  */
874
- export const getTokenOptions = (options) => queryOptions({
971
+ export const getClusterOptions = (options) => queryOptions({
875
972
  queryFn: async ({ queryKey, signal }) => {
876
- const { data } = await TokensService.getToken({
973
+ const { data } = await ClustersService.getCluster({
877
974
  ...options,
878
975
  ...queryKey[0],
879
976
  signal,
@@ -881,20 +978,22 @@ export const getTokenOptions = (options) => queryOptions({
881
978
  });
882
979
  return data;
883
980
  },
884
- queryKey: getTokenQueryKey(options)
981
+ queryKey: getClusterQueryKey(options)
885
982
  });
886
983
  /**
887
- * Update access token information.
984
+ * Update cluster information.
888
985
  *
889
- * 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.
986
+ * 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.
987
+ *
988
+ * This is a full overwrite: any field omitted from the request is reset to its default rather than left unchanged.
890
989
  *
891
990
  * This endpoint is available to administrators of the organization only.
892
991
  *
893
992
  */
894
- export const updateTokenMutation = (options) => {
993
+ export const updateClusterMutation = (options) => {
895
994
  const mutationOptions = {
896
995
  mutationFn: async (fnOptions) => {
897
- const { data } = await TokensService.updateToken({
996
+ const { data } = await ClustersService.updateCluster({
898
997
  ...options,
899
998
  ...fnOptions,
900
999
  throwOnError: true
@@ -905,14 +1004,15 @@ export const updateTokenMutation = (options) => {
905
1004
  return mutationOptions;
906
1005
  };
907
1006
  /**
908
- * Regenerate access token secret key.
1007
+ * Node join information for the cluster
1008
+ *
1009
+ * 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.
909
1010
  *
910
- * Generates a new access token secret. Old secret will not be valid anymore.
911
1011
  */
912
- export const regenerateTokenMutation = (options) => {
1012
+ export const getJoinInformationMutation = (options) => {
913
1013
  const mutationOptions = {
914
1014
  mutationFn: async (fnOptions) => {
915
- const { data } = await TokensService.regenerateToken({
1015
+ const { data } = await ClustersService.getJoinInformation({
916
1016
  ...options,
917
1017
  ...fnOptions,
918
1018
  throwOnError: true
@@ -922,13 +1022,16 @@ export const regenerateTokenMutation = (options) => {
922
1022
  };
923
1023
  return mutationOptions;
924
1024
  };
925
- export const listUserOrganizationsQueryKey = (options) => createQueryKey('listUserOrganizations', options);
1025
+ export const getUsageQueryKey = (options) => createQueryKey('getUsage', options);
926
1026
  /**
927
- * Get a list of organizations the user belongs to. Used during authentication process.
1027
+ * Get billing usage information.
1028
+ *
1029
+ * 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.
1030
+ *
928
1031
  */
929
- export const listUserOrganizationsOptions = (options) => queryOptions({
1032
+ export const getUsageOptions = (options) => queryOptions({
930
1033
  queryFn: async ({ queryKey, signal }) => {
931
- const { data } = await UsersService.listUserOrganizations({
1034
+ const { data } = await BillingService.getUsage({
932
1035
  ...options,
933
1036
  ...queryKey[0],
934
1037
  signal,
@@ -936,20 +1039,37 @@ export const listUserOrganizationsOptions = (options) => queryOptions({
936
1039
  });
937
1040
  return data;
938
1041
  },
939
- queryKey: listUserOrganizationsQueryKey(options)
1042
+ queryKey: getUsageQueryKey(options)
940
1043
  });
941
- export const listUsersQueryKey = (options) => createQueryKey('listUsers', options);
942
1044
  /**
943
- * List users in organization.
1045
+ * Get Stripe client secret.
944
1046
  *
945
- * 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.
1047
+ * 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.
946
1048
  *
947
- * This endpoint is available to all users in the organization.
1049
+ */
1050
+ export const getPaymentMethodSecretMutation = (options) => {
1051
+ const mutationOptions = {
1052
+ mutationFn: async (fnOptions) => {
1053
+ const { data } = await BillingService.getPaymentMethodSecret({
1054
+ ...options,
1055
+ ...fnOptions,
1056
+ throwOnError: true
1057
+ });
1058
+ return data;
1059
+ }
1060
+ };
1061
+ return mutationOptions;
1062
+ };
1063
+ export const listPaymentMethodsQueryKey = (options) => createQueryKey('listPaymentMethods', options);
1064
+ /**
1065
+ * List organization payment methods.
1066
+ *
1067
+ * 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.
948
1068
  *
949
1069
  */
950
- export const listUsersOptions = (options) => queryOptions({
1070
+ export const listPaymentMethodsOptions = (options) => queryOptions({
951
1071
  queryFn: async ({ queryKey, signal }) => {
952
- const { data } = await UsersService.listUsers({
1072
+ const { data } = await BillingService.listPaymentMethods({
953
1073
  ...options,
954
1074
  ...queryKey[0],
955
1075
  signal,
@@ -957,18 +1077,18 @@ export const listUsersOptions = (options) => queryOptions({
957
1077
  });
958
1078
  return data;
959
1079
  },
960
- queryKey: listUsersQueryKey(options)
1080
+ queryKey: listPaymentMethodsQueryKey(options)
961
1081
  });
962
1082
  /**
963
- * Create a new user.
1083
+ * Set the default payment method.
964
1084
  *
965
- * 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.
1085
+ * Sets the given payment method as the default used for invoices and active subscriptions. Requires the Administrator role.
966
1086
  *
967
1087
  */
968
- export const createUserMutation = (options) => {
1088
+ export const setDefaultPaymentMethodMutation = (options) => {
969
1089
  const mutationOptions = {
970
1090
  mutationFn: async (fnOptions) => {
971
- const { data } = await UsersService.createUser({
1091
+ const { data } = await BillingService.setDefaultPaymentMethod({
972
1092
  ...options,
973
1093
  ...fnOptions,
974
1094
  throwOnError: true
@@ -979,15 +1099,15 @@ export const createUserMutation = (options) => {
979
1099
  return mutationOptions;
980
1100
  };
981
1101
  /**
982
- * Delete user by id.
1102
+ * Delete a payment method.
983
1103
  *
984
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
1104
+ * 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.
985
1105
  *
986
1106
  */
987
- export const deleteUserMutation = (options) => {
1107
+ export const deletePaymentMethodMutation = (options) => {
988
1108
  const mutationOptions = {
989
1109
  mutationFn: async (fnOptions) => {
990
- const { data } = await UsersService.deleteUser({
1110
+ const { data } = await BillingService.deletePaymentMethod({
991
1111
  ...options,
992
1112
  ...fnOptions,
993
1113
  throwOnError: true
@@ -997,18 +1117,35 @@ export const deleteUserMutation = (options) => {
997
1117
  };
998
1118
  return mutationOptions;
999
1119
  };
1000
- export const getUserQueryKey = (options) => createQueryKey('getUser', options);
1120
+ export const listInvoicesQueryKey = (options) => createQueryKey('listInvoices', options);
1001
1121
  /**
1002
- * Get user profile information by id.
1122
+ * List issued invoices.
1003
1123
  *
1004
- * Returns user details including their roles. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
1124
+ * 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.
1005
1125
  *
1006
- * This endpoint is available to all users in the organization.
1126
+ */
1127
+ export const listInvoicesOptions = (options) => queryOptions({
1128
+ queryFn: async ({ queryKey, signal }) => {
1129
+ const { data } = await BillingService.listInvoices({
1130
+ ...options,
1131
+ ...queryKey[0],
1132
+ signal,
1133
+ throwOnError: true
1134
+ });
1135
+ return data;
1136
+ },
1137
+ queryKey: listInvoicesQueryKey(options)
1138
+ });
1139
+ export const getContactQueryKey = (options) => createQueryKey('getContact', options);
1140
+ /**
1141
+ * Get organization contact and billing address information.
1142
+ *
1143
+ * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
1007
1144
  *
1008
1145
  */
1009
- export const getUserOptions = (options) => queryOptions({
1146
+ export const getContactOptions = (options) => queryOptions({
1010
1147
  queryFn: async ({ queryKey, signal }) => {
1011
- const { data } = await UsersService.getUser({
1148
+ const { data } = await BillingService.getContact({
1012
1149
  ...options,
1013
1150
  ...queryKey[0],
1014
1151
  signal,
@@ -1016,18 +1153,56 @@ export const getUserOptions = (options) => queryOptions({
1016
1153
  });
1017
1154
  return data;
1018
1155
  },
1019
- queryKey: getUserQueryKey(options)
1156
+ queryKey: getContactQueryKey(options)
1020
1157
  });
1021
1158
  /**
1022
- * Update user profile information.
1159
+ * Update organization contact information and billing address.
1023
1160
  *
1024
- * 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.
1161
+ * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
1025
1162
  *
1026
1163
  */
1027
- export const updateUserMutation = (options) => {
1164
+ export const updateContactMutation = (options) => {
1028
1165
  const mutationOptions = {
1029
1166
  mutationFn: async (fnOptions) => {
1030
- const { data } = await UsersService.updateUser({
1167
+ const { data } = await BillingService.updateContact({
1168
+ ...options,
1169
+ ...fnOptions,
1170
+ throwOnError: true
1171
+ });
1172
+ return data;
1173
+ }
1174
+ };
1175
+ return mutationOptions;
1176
+ };
1177
+ export const getCreditsQueryKey = (options) => createQueryKey('getCredits', options);
1178
+ /**
1179
+ * Get applied promotional credits
1180
+ *
1181
+ * 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.
1182
+ *
1183
+ */
1184
+ export const getCreditsOptions = (options) => queryOptions({
1185
+ queryFn: async ({ queryKey, signal }) => {
1186
+ const { data } = await BillingService.getCredits({
1187
+ ...options,
1188
+ ...queryKey[0],
1189
+ signal,
1190
+ throwOnError: true
1191
+ });
1192
+ return data;
1193
+ },
1194
+ queryKey: getCreditsQueryKey(options)
1195
+ });
1196
+ /**
1197
+ * Redeem promotional credits code.
1198
+ *
1199
+ * 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.
1200
+ *
1201
+ */
1202
+ export const redeemCreditsMutation = (options) => {
1203
+ const mutationOptions = {
1204
+ mutationFn: async (fnOptions) => {
1205
+ const { data } = await BillingService.redeemCredits({
1031
1206
  ...options,
1032
1207
  ...fnOptions,
1033
1208
  throwOnError: true