@cloudfleet/sdk 0.0.1-bd28e81 → 0.0.1-bd45f1a

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.
Files changed (88) hide show
  1. package/README.md +26 -2
  2. package/dist/@tanstack/react-query.gen.d.ts +1149 -0
  3. package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
  4. package/dist/@tanstack/react-query.gen.js +1165 -0
  5. package/dist/@tanstack/react-query.gen.js.map +1 -0
  6. package/dist/client/client.gen.d.ts +3 -0
  7. package/dist/client/client.gen.d.ts.map +1 -0
  8. package/dist/client/client.gen.js +217 -0
  9. package/dist/client/client.gen.js.map +1 -0
  10. package/dist/client/index.d.ts +9 -0
  11. package/dist/client/index.d.ts.map +1 -0
  12. package/dist/client/index.js +7 -0
  13. package/dist/client/index.js.map +1 -0
  14. package/dist/client/types.gen.d.ts +121 -0
  15. package/dist/client/types.gen.d.ts.map +1 -0
  16. package/dist/client/types.gen.js +3 -0
  17. package/dist/client/types.gen.js.map +1 -0
  18. package/dist/client/utils.gen.d.ts +38 -0
  19. package/dist/client/utils.gen.d.ts.map +1 -0
  20. package/dist/client/utils.gen.js +229 -0
  21. package/dist/client/utils.gen.js.map +1 -0
  22. package/dist/client.gen.d.ts +13 -0
  23. package/dist/client.gen.d.ts.map +1 -0
  24. package/dist/client.gen.js +4 -0
  25. package/dist/client.gen.js.map +1 -0
  26. package/dist/core/auth.gen.d.ts +19 -0
  27. package/dist/core/auth.gen.d.ts.map +1 -0
  28. package/dist/core/auth.gen.js +15 -0
  29. package/dist/core/auth.gen.js.map +1 -0
  30. package/dist/core/bodySerializer.gen.d.ts +26 -0
  31. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  32. package/dist/core/bodySerializer.gen.js +58 -0
  33. package/dist/core/bodySerializer.gen.js.map +1 -0
  34. package/dist/core/params.gen.d.ts +44 -0
  35. package/dist/core/params.gen.d.ts.map +1 -0
  36. package/dist/core/params.gen.js +101 -0
  37. package/dist/core/params.gen.js.map +1 -0
  38. package/dist/core/pathSerializer.gen.d.ts +34 -0
  39. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  40. package/dist/core/pathSerializer.gen.js +107 -0
  41. package/dist/core/pathSerializer.gen.js.map +1 -0
  42. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  43. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  44. package/dist/core/queryKeySerializer.gen.js +93 -0
  45. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  46. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  47. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  48. package/dist/core/serverSentEvents.gen.js +133 -0
  49. package/dist/core/serverSentEvents.gen.js.map +1 -0
  50. package/dist/core/types.gen.d.ts +79 -0
  51. package/dist/core/types.gen.d.ts.map +1 -0
  52. package/dist/core/types.gen.js +3 -0
  53. package/dist/core/types.gen.js.map +1 -0
  54. package/dist/core/utils.gen.d.ts +20 -0
  55. package/dist/core/utils.gen.d.ts.map +1 -0
  56. package/dist/core/utils.gen.js +88 -0
  57. package/dist/core/utils.gen.js.map +1 -0
  58. package/dist/index.d.ts +3 -0
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +3 -0
  61. package/dist/index.js.map +1 -1
  62. package/dist/schemas.gen.d.ts +1915 -1079
  63. package/dist/schemas.gen.d.ts.map +1 -1
  64. package/dist/schemas.gen.js +3241 -1127
  65. package/dist/schemas.gen.js.map +1 -1
  66. package/dist/sdk.gen.d.ts +326 -198
  67. package/dist/sdk.gen.d.ts.map +1 -1
  68. package/dist/sdk.gen.js +432 -297
  69. package/dist/sdk.gen.js.map +1 -1
  70. package/dist/services/kubernetes/api.d.ts +196 -0
  71. package/dist/services/kubernetes/api.d.ts.map +1 -0
  72. package/dist/services/kubernetes/api.js +140 -0
  73. package/dist/services/kubernetes/api.js.map +1 -0
  74. package/dist/services/kubernetes/index.d.ts +44 -0
  75. package/dist/services/kubernetes/index.d.ts.map +1 -0
  76. package/dist/services/kubernetes/index.js +68 -0
  77. package/dist/services/kubernetes/index.js.map +1 -0
  78. package/dist/services/kubernetes/types.d.ts +1335 -0
  79. package/dist/services/kubernetes/types.d.ts.map +1 -0
  80. package/dist/services/kubernetes/types.js +2 -0
  81. package/dist/services/kubernetes/types.js.map +1 -0
  82. package/dist/types.gen.d.ts +1999 -1236
  83. package/dist/types.gen.d.ts.map +1 -1
  84. package/dist/zod.gen.d.ts +3920 -2932
  85. package/dist/zod.gen.d.ts.map +1 -1
  86. package/dist/zod.gen.js +1693 -920
  87. package/dist/zod.gen.js.map +1 -1
  88. package/package.json +30 -7
package/dist/sdk.gen.js CHANGED
@@ -1,566 +1,701 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
- import { createClient, createConfig } from '@hey-api/client-fetch';
3
- export const client = createClient(createConfig());
4
- export class BillingService {
2
+ import { formDataBodySerializer } from './client';
3
+ import { client } from './client.gen';
4
+ export class UsersService {
5
5
  /**
6
- * Get billing usage information.
7
- * Returns rolled-up usage information for the organization. Entries are grouped by task, and billing unit. 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.
8
- *
6
+ * Get a list of organizations the user belongs to. Used during authentication process.
9
7
  */
10
- static getUsage(options) {
11
- return (options?.client ?? client).get({
12
- url: '/billing/usage',
13
- ...options
14
- });
8
+ static listUserOrganizations(options) {
9
+ return (options.client ?? client).get({ url: '/users/organizations/{email}', ...options });
15
10
  }
16
11
  /**
17
- * Get billing balance information.
18
- * Returns the current balance of the organization in USD as a floating-point number. 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.
12
+ * List users in organization.
13
+ *
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.
19
17
  *
20
18
  */
21
- static getBalance(options) {
22
- return (options?.client ?? client).get({
23
- url: '/billing/balance',
24
- ...options
25
- });
19
+ static listUsers(options) {
20
+ return (options?.client ?? client).get({ url: '/users', ...options });
26
21
  }
27
22
  /**
28
- * Get organization payment method information.
29
- * 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.
23
+ * Create a new user.
24
+ *
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.
30
26
  *
31
27
  */
32
- static getPaymentMethod(options) {
33
- return (options?.client ?? client).get({
34
- url: '/billing/payment-method',
35
- ...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
36
  });
37
37
  }
38
38
  /**
39
- * Get Stripe client secret.
40
- * 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.
39
+ * Delete user by id.
40
+ *
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.
41
42
  *
42
43
  */
43
- static getPaymentMethodSecret(options) {
44
- return (options?.client ?? client).put({
45
- url: '/billing/payment-method',
46
- ...options
47
- });
44
+ static deleteUser(options) {
45
+ return (options.client ?? client).delete({ url: '/users/{user_id}', ...options });
48
46
  }
49
47
  /**
50
- * List issued invoices.
51
- * Returns a list of invoices for the organization. For more information on billing and payments, see [Billing and pricing](https://cloudfleet.ai/docs/organization/billing/) section of documentaiton. This endpoint is available to all users in the organization.
48
+ * Get user profile information by id.
49
+ *
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.
52
53
  *
53
54
  */
54
- static listInvoices(options) {
55
- return (options?.client ?? client).get({
56
- url: '/billing/invoices',
57
- ...options
58
- });
55
+ static getUser(options) {
56
+ return (options.client ?? client).get({ url: '/users/{user_id}', ...options });
59
57
  }
60
58
  /**
61
- * Get invoice information.
62
- * Returns a single Invoice as HTML referenced by id. This endpoint is available to all users in the organization.
59
+ * Update user profile information.
60
+ *
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.
63
62
  *
64
63
  */
65
- static getInvoice(options) {
66
- return (options?.client ?? client).get({
67
- url: '/billing/invoices/{id}',
68
- ...options
64
+ static updateUser(options) {
65
+ return (options.client ?? client).put({
66
+ url: '/users/{user_id}',
67
+ ...options,
68
+ headers: {
69
+ 'Content-Type': 'application/json',
70
+ ...options.headers
71
+ }
69
72
  });
70
73
  }
71
74
  }
72
- export class ClustersService {
75
+ export class TokensService {
73
76
  /**
74
- * List fleets.
75
- * Returns a list of fleets belonging to the cluster. For more information, see [Fleets and fleet types](https://cloudfleet.ai/docs/cloud-infrastructure/fleets-and-fleet-types/) section of documentaiton.
77
+ * List access tokens in organization.
76
78
  *
77
- * 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.
78
80
  *
79
81
  */
80
- static listFleets(options) {
81
- return (options?.client ?? client).get({
82
- url: '/clusters/{cluster_id}/fleets',
83
- ...options
84
- });
82
+ static listTokens(options) {
83
+ return (options?.client ?? client).get({ url: '/tokens', ...options });
85
84
  }
86
85
  /**
87
- * Create a new fleet.
88
- * 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 and fleet types](https://cloudfleet.ai/docs/cloud-infrastructure/fleets-and-fleet-types/) section of documentaiton.
86
+ * Create a new access token.
87
+ *
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
89
  *
90
90
  * This endpoint is available to administrators of the organization only.
91
91
  *
92
92
  */
93
- static createFleet(options) {
94
- return (options?.client ?? client).post({
95
- url: '/clusters/{cluster_id}/fleets',
93
+ static createToken(options) {
94
+ return (options.client ?? client).post({
95
+ url: '/tokens',
96
96
  ...options,
97
97
  headers: {
98
98
  'Content-Type': 'application/json',
99
- ...options?.headers
99
+ ...options.headers
100
100
  }
101
101
  });
102
102
  }
103
103
  /**
104
- * Permanently delete fleet.
105
- * 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 Connected Fleet until the end of the billing period, set the status to `cancelling`. For more information, see [Fleets and fleet types](https://cloudfleet.ai/docs/cloud-infrastructure/fleets-and-fleet-types/) section of documentaiton.
104
+ * Permanently delete access token.
106
105
  *
107
- * This endpoint is available to administrators of the organization only.
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.
108
107
  *
109
108
  */
110
- static deleteFleet(options) {
111
- return (options?.client ?? client).delete({
112
- url: '/clusters/{cluster_id}/fleets/{fleet_name}',
113
- ...options
114
- });
109
+ static deleteToken(options) {
110
+ return (options.client ?? client).delete({ url: '/tokens/{token_id}', ...options });
115
111
  }
116
112
  /**
117
- * Get fleet information.
118
- * Returns fleet details. For more information, see [Fleets and fleet types](https://cloudfleet.ai/docs/cloud-infrastructure/fleets-and-fleet-types/) section of documentaiton.
113
+ * Get access token information.
119
114
  *
120
- * This endpoint is available to all users in the organization.
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.
121
116
  *
122
117
  */
123
- static getFleet(options) {
124
- return (options?.client ?? client).get({
125
- url: '/clusters/{cluster_id}/fleets/{fleet_name}',
126
- ...options
127
- });
118
+ static getToken(options) {
119
+ return (options.client ?? client).get({ url: '/tokens/{token_id}', ...options });
128
120
  }
129
121
  /**
130
- * Update fleet information.
131
- * This endpoint allows you to update fleet details.
132
- *
133
- * 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 Connected Fleet until the end of the billing period, set the status to `cancelling`.
122
+ * Update access token information.
134
123
  *
135
- * For more information, see [Fleets and fleet types](https://cloudfleet.ai/docs/cloud-infrastructure/fleets-and-fleet-types/) section of documentaiton.
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.
136
125
  *
137
126
  * This endpoint is available to administrators of the organization only.
138
127
  *
139
128
  */
140
- static updateFleet(options) {
141
- return (options?.client ?? client).put({
142
- url: '/clusters/{cluster_id}/fleets/{fleet_name}',
129
+ static updateToken(options) {
130
+ return (options.client ?? client).put({
131
+ url: '/tokens/{token_id}',
143
132
  ...options,
144
133
  headers: {
145
134
  'Content-Type': 'application/json',
146
- ...options?.headers
135
+ ...options.headers
147
136
  }
148
137
  });
149
138
  }
150
139
  /**
151
- * Query Kubernetes cluster API
152
- * 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.
140
+ * Regenerate access token secret key.
141
+ *
142
+ * Generates a new access token secret. Old secret will not be valid anymore.
153
143
  */
154
- static queryCluster(options) {
155
- return (options?.client ?? client).get({
156
- url: '/clusters/{cluster_id}/query',
157
- ...options
158
- });
144
+ static regenerateToken(options) {
145
+ return (options.client ?? client).put({ url: '/tokens/{token_id}/secret', ...options });
159
146
  }
147
+ }
148
+ export class TicketsService {
160
149
  /**
161
- * List clusters.
162
- * 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.
150
+ * List tickets for the current organization.
163
151
  *
164
- * This endpoint is available to all users in the organization.
152
+ * Returns all tickets belonging to the caller's organization, newest first.
165
153
  *
166
154
  */
167
- static listClusters(options) {
168
- return (options?.client ?? client).get({
169
- url: '/clusters',
170
- ...options
171
- });
155
+ static listTickets(options) {
156
+ return (options?.client ?? client).get({ url: '/tickets', ...options });
172
157
  }
173
158
  /**
174
- * Create a new cluster.
175
- * 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.
159
+ * Create a new support ticket.
176
160
  *
177
- * 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).
178
162
  *
179
163
  */
180
- static createCluster(options) {
181
- return (options?.client ?? client).post({
182
- url: '/clusters',
164
+ static createTicket(options) {
165
+ return (options.client ?? client).post({
166
+ ...formDataBodySerializer,
167
+ url: '/tickets',
183
168
  ...options,
184
169
  headers: {
185
- 'Content-Type': 'application/json',
186
- ...options?.headers
170
+ 'Content-Type': null,
171
+ ...options.headers
187
172
  }
188
173
  });
189
174
  }
190
175
  /**
191
- * Permanently delete cluster.
192
- * This endpoint will permanently delete the cluster. This operation cannot be undone.
176
+ * Close a ticket (soft close).
193
177
  *
194
- * This endpoint is available to administrators of the organization only.
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.
195
179
  *
196
180
  */
197
- static deleteCluster(options) {
198
- return (options?.client ?? client).delete({
199
- url: '/clusters/{cluster_id}',
200
- ...options
201
- });
181
+ static closeTicket(options) {
182
+ return (options.client ?? client).delete({ url: '/tickets/{ticket_id}', ...options });
202
183
  }
203
184
  /**
204
- * Get cluster information.
205
- * 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.
206
- *
207
- * This endpoint is available to all users in the organization.
208
- *
185
+ * Get a ticket and its messages.
209
186
  */
210
- static getCluster(options) {
211
- return (options?.client ?? client).get({
212
- url: '/clusters/{cluster_id}',
213
- ...options
214
- });
187
+ static getTicket(options) {
188
+ return (options.client ?? client).get({ url: '/tickets/{ticket_id}', ...options });
215
189
  }
216
190
  /**
217
- * Update cluster information.
218
- * 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.
191
+ * Append a customer reply to a ticket.
219
192
  *
220
- * 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.
221
194
  *
222
195
  */
223
- static updateCluster(options) {
224
- return (options?.client ?? client).put({
225
- url: '/clusters/{cluster_id}',
196
+ static replyTicket(options) {
197
+ return (options.client ?? client).post({
198
+ ...formDataBodySerializer,
199
+ url: '/tickets/{ticket_id}/messages',
226
200
  ...options,
227
201
  headers: {
228
- 'Content-Type': 'application/json',
229
- ...options?.headers
202
+ 'Content-Type': null,
203
+ ...options.headers
230
204
  }
231
205
  });
232
206
  }
233
207
  /**
234
- * Node join information for the cluster
235
- * Returns the join information for the cluster. This information is used to add a self-managed cluster to the CFKE cluster. This endpoint is available to only admins of the organization.
208
+ * Download a ticket attachment.
209
+ */
210
+ static getTicketAttachment(options) {
211
+ return (options.client ?? client).get({ url: '/tickets/{ticket_id}/attachments/{attachment_id}', ...options });
212
+ }
213
+ }
214
+ export class RegistryService {
215
+ /**
216
+ * List repositories
217
+ *
218
+ * Returns a list of repositories in the registry across all regions. This endpoint is available to all users in the organization.
236
219
  *
237
220
  */
238
- static getJoinInformation(options) {
239
- return (options?.client ?? client).post({
240
- url: '/clusters/{cluster_id}/join_information',
241
- ...options
242
- });
221
+ static listRepositories(options) {
222
+ return (options?.client ?? client).get({ url: '/registry', ...options });
223
+ }
224
+ /**
225
+ * List tags for a repository
226
+ *
227
+ * Returns a list of tags for a specific repository, including size and metadata for each tag. This endpoint is available to all users in the organization.
228
+ *
229
+ */
230
+ static listTags(options) {
231
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}', ...options });
232
+ }
233
+ /**
234
+ * Delete tag
235
+ *
236
+ * Permanently deletes a specific tag from a repository. This endpoint is available to administrators of the organization only.
237
+ *
238
+ */
239
+ static deleteTag(options) {
240
+ return (options.client ?? client).delete({ url: '/registry/{region}/{repository}/{tag}', ...options });
241
+ }
242
+ /**
243
+ * Get tag details
244
+ *
245
+ * Returns detailed information for a specific tag in a repository, including manifest details, size, and URI. This endpoint is available to all users in the organization.
246
+ *
247
+ */
248
+ static getTag(options) {
249
+ return (options.client ?? client).get({ url: '/registry/{region}/{repository}/{tag}', ...options });
243
250
  }
244
251
  }
245
- export class InfrastructureService {
252
+ export class OrganizationService {
246
253
  /**
247
- * Search infrastructure catalog.
248
- * This endpoint is used to search the infrastructure catalog for the right virtual machine / instance type when creating a new task. The search is performed by specifying a set of filters. The filters are combined using the logical AND operator. For example, if you want to find all available instances with Nvidia A100 GPUs in the US, you would use the following query:
254
+ * Get organization information.
249
255
  *
250
- * `GET /infrastructure?accelerator_name=A100&region=northamerica`
256
+ * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
251
257
  *
252
- * Catalog is dynamic and updated regularly to reflect the latest changes in the cloud providers' offerings. Although we try to keep the catalog up to date, it is possible that some instances are missing or that some information is outdated. It is possible that the final price you will see in the billing section will be different from the price shown in the catalog. Additionally, catalog does not account for any limitaitons and quotas set by the cloud providers, as well as current availability of specific instance types.
258
+ * This endpoint is available to all users in the organization.
253
259
  *
254
- * **Note:** This endpoint is available for both authenticated and unauthenticated users. However, unauthenticated users will only see limited results and will be rate limited. To get full access to the catalog, please create a Cloudfleet account and log in.
260
+ */
261
+ static getOrganization(options) {
262
+ return (options?.client ?? client).get({ url: '/organization', ...options });
263
+ }
264
+ /**
265
+ * Create a new organization / Cloudfleet account signup.
255
266
  *
256
- * For full documentation of the infrastructure catalog, see [Cloud providers and instance types](https://cloudfleet.ai/docs/cloud-infrastructure/) section of the documentation.
267
+ * This endpoint allows you to create a new Cloudfleet organization and an administrator user.
257
268
  *
258
269
  */
259
- static getInfrastructure(options) {
260
- return (options?.client ?? client).get({
261
- url: '/infrastructure',
262
- ...options
270
+ static createOrganization(options) {
271
+ return (options.client ?? client).post({
272
+ url: '/organization',
273
+ ...options,
274
+ headers: {
275
+ 'Content-Type': 'application/json',
276
+ ...options.headers
277
+ }
263
278
  });
264
279
  }
280
+ }
281
+ export class McpService {
265
282
  /**
266
- * Infrastructure catalog facets.
267
- * This endpoint returns calculated search facets from the infrastructure catalog.
283
+ * MCP endpoint
268
284
  *
285
+ * MCP endpoint for handling Model Context Protocol JSON-RPC 2.0 messages.
269
286
  */
270
- static getFacets(options) {
271
- return (options?.client ?? client).get({
272
- url: '/infrastructure/facets',
273
- ...options
287
+ static postMcp(options) {
288
+ return (options.client ?? client).post({
289
+ url: '/mcp',
290
+ ...options,
291
+ headers: {
292
+ 'Content-Type': 'application/json',
293
+ ...options.headers
294
+ }
274
295
  });
275
296
  }
297
+ }
298
+ export class ChartsMarketplaceService {
276
299
  /**
277
- * Available Cloudfleet regions and Kubernetes versions.
278
- * Available Cloudfleet regions and Kubernetes versions.
300
+ * List chart listings available in the marketplace.
301
+ *
302
+ * Returns a list of available charts in the marketplace.
303
+ *
304
+ * This endpoint is available to all users in the organization.
279
305
  *
280
306
  */
281
- static getRegions(options) {
282
- return (options?.client ?? client).get({
283
- url: '/infrastructure/regions',
284
- ...options
285
- });
307
+ static listMarketplaceCharts(options) {
308
+ return (options?.client ?? client).get({ url: '/marketplace', ...options });
309
+ }
310
+ /**
311
+ * Get chart files for a specific version channel.
312
+ *
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.
318
+ *
319
+ */
320
+ static getMarketplaceChartFiles(options) {
321
+ return (options.client ?? client).get({ url: '/marketplace/{chart_name}/files/{version_channel}', ...options });
286
322
  }
287
323
  }
288
324
  export class InvitesService {
289
325
  /**
290
326
  * List invites.
291
- * Returns a list of invites under the current organization. This endpoint is available to all users in the organization.
327
+ *
328
+ * Returns a list of pending (non-expired) invites under the current organization. This endpoint is available to administrators of the organization only.
292
329
  *
293
330
  */
294
331
  static listInvites(options) {
295
- return (options?.client ?? client).get({
296
- url: '/invites',
297
- ...options
298
- });
332
+ return (options?.client ?? client).get({ url: '/invites', ...options });
299
333
  }
300
334
  /**
301
335
  * Create a new invite.
302
- * Invite a new user to your CloudFlett organization. The user will receive an email with a link to create a new account. This endpoint is available to administrators of the organization only.
336
+ *
337
+ * Invite a new user to your Cloudfleet organization. The user will receive an email with a link to create a new account. This endpoint is available to administrators of the organization only.
303
338
  *
304
339
  */
305
340
  static createInvite(options) {
306
- return (options?.client ?? client).post({
341
+ return (options.client ?? client).post({
307
342
  url: '/invites',
308
343
  ...options,
309
344
  headers: {
310
345
  'Content-Type': 'application/json',
311
- ...options?.headers
346
+ ...options.headers
312
347
  }
313
348
  });
314
349
  }
315
350
  /**
316
351
  * Get invite information.
317
- * Returns invite details.
352
+ *
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.
318
354
  *
319
355
  */
320
356
  static getInvite(options) {
321
- return (options?.client ?? client).get({
322
- url: '/invites/{code}',
323
- ...options
324
- });
357
+ return (options.client ?? client).get({ url: '/invites/{code}', ...options });
325
358
  }
326
359
  /**
327
360
  * Permanently delete invite.
361
+ *
328
362
  * Permanently deletes invite from the organization. This endpoint is available to administrators of the organization only.
329
363
  *
330
364
  */
331
365
  static deleteInvite(options) {
332
- return (options?.client ?? client).delete({
333
- url: '/invites/{email}',
334
- ...options
335
- });
366
+ return (options.client ?? client).delete({ url: '/invites/{email}', ...options });
336
367
  }
337
368
  }
338
- export class OrganizationService {
369
+ export class ClustersService {
339
370
  /**
340
- * Get organization information.
341
- * Returns organization details including quota. For more information about quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
371
+ * Query Kubernetes cluster API
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.
374
+ */
375
+ static queryCluster(options) {
376
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/query', ...options });
377
+ }
378
+ /**
379
+ * List fleets.
380
+ *
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.
342
382
  *
343
383
  * This endpoint is available to all users in the organization.
344
384
  *
345
385
  */
346
- static getOrganization(options) {
347
- return (options?.client ?? client).get({
348
- url: '/organization',
349
- ...options
350
- });
386
+ static listFleets(options) {
387
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets', ...options });
351
388
  }
352
389
  /**
353
- * Create a new organization / Cloudfleet account signup.
354
- * This endpoint allows you to create a new Cloudfleet organization with its contact information. For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota. For more information about organizations and quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
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
+ * This endpoint is available to administrators of the organization only.
355
395
  *
356
396
  */
357
- static createOrganization(options) {
358
- return (options?.client ?? client).post({
359
- url: '/organization',
397
+ static createFleet(options) {
398
+ return (options.client ?? client).post({
399
+ url: '/clusters/{cluster_id}/fleets',
360
400
  ...options,
361
401
  headers: {
362
402
  'Content-Type': 'application/json',
363
- ...options?.headers
403
+ ...options.headers
364
404
  }
365
405
  });
366
406
  }
367
407
  /**
368
- * Update organization information.
369
- * This endpoint allows you to update organization details with its contact information. For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota. For more information about organizations and quotas, see [Quotas and limits](https://cloudfleet.ai/docs/organization/quotas/) section of documentaiton.
408
+ * Permanently delete fleet.
409
+ *
410
+ * 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.
370
411
  *
371
412
  * This endpoint is available to administrators of the organization only.
372
413
  *
373
414
  */
374
- static updateOrganization(options) {
375
- return (options?.client ?? client).put({
376
- url: '/organization',
415
+ static deleteFleet(options) {
416
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
417
+ }
418
+ /**
419
+ * Get fleet information.
420
+ *
421
+ * Returns fleet details. For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
422
+ *
423
+ * This endpoint is available to all users in the organization.
424
+ *
425
+ */
426
+ static getFleet(options) {
427
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/fleets/{fleet_name}', ...options });
428
+ }
429
+ /**
430
+ * Update fleet information.
431
+ *
432
+ * This endpoint allows you to update fleet details.
433
+ *
434
+ * For more information, see [Fleets](https://cloudfleet.ai/docs/cloud-infrastructure/fleets/) section of documentaiton.
435
+ *
436
+ * This endpoint is available to administrators of the organization only.
437
+ *
438
+ */
439
+ static updateFleet(options) {
440
+ return (options.client ?? client).put({
441
+ url: '/clusters/{cluster_id}/fleets/{fleet_name}',
377
442
  ...options,
378
443
  headers: {
379
444
  'Content-Type': 'application/json',
380
- ...options?.headers
445
+ ...options.headers
381
446
  }
382
447
  });
383
448
  }
384
- }
385
- export class TokensService {
386
449
  /**
387
- * List access tokens in organization.
388
- * 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.
450
+ * List charts.
451
+ *
452
+ * Returns a list of charts in the cluster.
453
+ *
454
+ * This endpoint is available to all users in the organization.
389
455
  *
390
456
  */
391
- static listTokens(options) {
392
- return (options?.client ?? client).get({
393
- url: '/tokens',
394
- ...options
395
- });
457
+ static listCharts(options) {
458
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts', ...options });
396
459
  }
397
460
  /**
398
- * Create a new access token.
399
- * 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.
461
+ * Create a new chart.
462
+ *
463
+ * Create a new chart deployment.
400
464
  *
401
465
  * This endpoint is available to administrators of the organization only.
402
466
  *
403
467
  */
404
- static createToken(options) {
405
- return (options?.client ?? client).post({
406
- url: '/tokens',
468
+ static createChart(options) {
469
+ return (options.client ?? client).post({
470
+ url: '/clusters/{cluster_id}/charts',
407
471
  ...options,
408
472
  headers: {
409
473
  'Content-Type': 'application/json',
410
- ...options?.headers
474
+ ...options.headers
411
475
  }
412
476
  });
413
477
  }
414
478
  /**
415
- * Permanently delete access token.
416
- * 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.
479
+ * Permanently delete the chart deployment from the cluster.
480
+ *
481
+ * This endpoint will permanently delete chart. This operation cannot be undone.
482
+ *
483
+ * This endpoint is available to administrators of the organization only.
417
484
  *
418
485
  */
419
- static deleteToken(options) {
420
- return (options?.client ?? client).delete({
421
- url: '/tokens/{token_id}',
422
- ...options
423
- });
486
+ static deleteChart(options) {
487
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
424
488
  }
425
489
  /**
426
- * Get access token information.
427
- * 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.
490
+ * Get chart information.
491
+ *
492
+ * Returns the details of the chart deployment.
493
+ *
494
+ * This endpoint is available to all users in the organization.
428
495
  *
429
496
  */
430
- static getToken(options) {
431
- return (options?.client ?? client).get({
432
- url: '/tokens/{token_id}',
433
- ...options
434
- });
497
+ static getChart(options) {
498
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}/charts/{chart_name}', ...options });
435
499
  }
436
500
  /**
437
- * Update access token information.
438
- * 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.
501
+ * Update chart information.
502
+ *
503
+ * This endpoint allows you to update the values of a chart deployment.
439
504
  *
440
505
  * This endpoint is available to administrators of the organization only.
441
506
  *
442
507
  */
443
- static updateToken(options) {
444
- return (options?.client ?? client).put({
445
- url: '/tokens/{token_id}',
508
+ static updateChart(options) {
509
+ return (options.client ?? client).put({
510
+ url: '/clusters/{cluster_id}/charts/{chart_name}',
446
511
  ...options,
447
512
  headers: {
448
513
  'Content-Type': 'application/json',
449
- ...options?.headers
514
+ ...options.headers
450
515
  }
451
516
  });
452
517
  }
453
518
  /**
454
- * Regenerate access token secret key.
455
- * Generates a new access token secret. Old secret will not be valid anymore.
519
+ * List clusters.
520
+ *
521
+ * Returns a list of clusters under the current organization.
522
+ *
523
+ * This endpoint is available to all users in the organization.
524
+ *
456
525
  */
457
- static regenerateToken(options) {
458
- return (options?.client ?? client).put({
459
- url: '/tokens/{token_id}/secret',
460
- ...options
461
- });
526
+ static listClusters(options) {
527
+ return (options?.client ?? client).get({ url: '/clusters', ...options });
462
528
  }
463
- }
464
- export class UsersService {
465
529
  /**
466
- * Get a list of organizations the user belongs to. Used during authentication process.
530
+ * Create a new cluster.
531
+ *
532
+ * 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.
533
+ *
534
+ * This endpoint is available to administrators of the organization only.
535
+ *
467
536
  */
468
- static listUserOrganizations(options) {
469
- return (options?.client ?? client).get({
470
- url: '/users/organizations/{email}',
471
- ...options
537
+ static createCluster(options) {
538
+ return (options.client ?? client).post({
539
+ url: '/clusters',
540
+ ...options,
541
+ headers: {
542
+ 'Content-Type': 'application/json',
543
+ ...options.headers
544
+ }
472
545
  });
473
546
  }
474
547
  /**
475
- * List users in organization.
476
- * Returns a list of user details, including roles and cluster permissions. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
548
+ * Permanently delete cluster.
549
+ *
550
+ * This endpoint will permanently delete the cluster. This operation cannot be undone.
551
+ *
552
+ * This endpoint is available to administrators of the organization only.
553
+ *
554
+ */
555
+ static deleteCluster(options) {
556
+ return (options.client ?? client).delete({ url: '/clusters/{cluster_id}', ...options });
557
+ }
558
+ /**
559
+ * Get cluster information.
560
+ *
561
+ * Returns cluster details.
477
562
  *
478
563
  * This endpoint is available to all users in the organization.
479
564
  *
480
565
  */
481
- static listUsers(options) {
482
- return (options?.client ?? client).get({
483
- url: '/users',
484
- ...options
485
- });
566
+ static getCluster(options) {
567
+ return (options.client ?? client).get({ url: '/clusters/{cluster_id}', ...options });
486
568
  }
487
569
  /**
488
- * Create a new user.
489
- * Create a new user in your CloudFlett 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.
570
+ * Update cluster information.
571
+ *
572
+ * 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.
573
+ *
574
+ * This endpoint is available to administrators of the organization only.
490
575
  *
491
576
  */
492
- static createUser(options) {
493
- return (options?.client ?? client).post({
494
- url: '/users',
577
+ static updateCluster(options) {
578
+ return (options.client ?? client).put({
579
+ url: '/clusters/{cluster_id}',
495
580
  ...options,
496
581
  headers: {
497
582
  'Content-Type': 'application/json',
498
- ...options?.headers
583
+ ...options.headers
499
584
  }
500
585
  });
501
586
  }
502
587
  /**
503
- * Delete user by id.
504
- * Sets user status to `inactive`. Inactive users cannot log in and manage organization resources. This endpoint is available to administrators of the organization only.
588
+ * Node join information for the cluster
589
+ *
590
+ * 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.
505
591
  *
506
592
  */
507
- static deleteUser(options) {
508
- return (options?.client ?? client).delete({
509
- url: '/users/{user_id}',
510
- ...options
511
- });
593
+ static getJoinInformation(options) {
594
+ return (options.client ?? client).post({ url: '/clusters/{cluster_id}/join_information', ...options });
512
595
  }
596
+ }
597
+ export class BillingService {
513
598
  /**
514
- * Get user profile information by id.
515
- * Returns user details, including roles and cluster permissions. For more information on identity access management, see [Users](https://cloudfleet.ai/docs/organization/users/) section of documentaiton.
599
+ * Get billing usage information.
516
600
  *
517
- * This endpoint is available to all users in the organization.
601
+ * 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.
518
602
  *
519
603
  */
520
- static getUser(options) {
521
- return (options?.client ?? client).get({
522
- url: '/users/{user_id}',
523
- ...options
524
- });
604
+ static getUsage(options) {
605
+ return (options?.client ?? client).get({ url: '/billing/usage', ...options });
525
606
  }
526
607
  /**
527
- * Update user profile information.
528
- * 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.
608
+ * Get Stripe client secret.
609
+ *
610
+ * 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.
529
611
  *
530
612
  */
531
- static updateUser(options) {
532
- return (options?.client ?? client).put({
533
- url: '/users/{user_id}',
613
+ static getPaymentMethodSecret(options) {
614
+ return (options?.client ?? client).put({ url: '/billing/payment-method', ...options });
615
+ }
616
+ /**
617
+ * List organization payment methods.
618
+ *
619
+ * 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.
620
+ *
621
+ */
622
+ static listPaymentMethods(options) {
623
+ return (options?.client ?? client).get({ url: '/billing/payment-methods', ...options });
624
+ }
625
+ /**
626
+ * Set the default payment method.
627
+ *
628
+ * Sets the given payment method as the default used for invoices and active subscriptions. Requires the Administrator role.
629
+ *
630
+ */
631
+ static setDefaultPaymentMethod(options) {
632
+ return (options.client ?? client).put({ url: '/billing/payment-methods/{paymentMethodId}/default', ...options });
633
+ }
634
+ /**
635
+ * Delete a payment method.
636
+ *
637
+ * 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.
638
+ *
639
+ */
640
+ static deletePaymentMethod(options) {
641
+ return (options.client ?? client).delete({ url: '/billing/payment-methods/{paymentMethodId}', ...options });
642
+ }
643
+ /**
644
+ * List issued invoices.
645
+ *
646
+ * 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.
647
+ *
648
+ */
649
+ static listInvoices(options) {
650
+ return (options?.client ?? client).get({ url: '/billing/invoices', ...options });
651
+ }
652
+ /**
653
+ * Get organization contact and billing address information.
654
+ *
655
+ * Returns the organization contact and billing address information. This endpoint is available to all users in the organization.
656
+ *
657
+ */
658
+ static getContact(options) {
659
+ return (options?.client ?? client).get({ url: '/billing/contact', ...options });
660
+ }
661
+ /**
662
+ * Update organization contact information and billing address.
663
+ *
664
+ * This endpoint allows you to update organization details with its contact information. This endpoint is available to administrators of the organization only.
665
+ *
666
+ */
667
+ static updateContact(options) {
668
+ return (options.client ?? client).put({
669
+ url: '/billing/contact',
534
670
  ...options,
535
671
  headers: {
536
672
  'Content-Type': 'application/json',
537
- ...options?.headers
673
+ ...options.headers
538
674
  }
539
675
  });
540
676
  }
541
677
  /**
542
- * Remove user from cluster.
543
- * Removes user from the cluster. The user will no longer be able to access the cluster and all its resources. This endpoint is available to administrators of the organization only.
678
+ * Get applied promotional credits
679
+ *
680
+ * 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.
544
681
  *
545
682
  */
546
- static deleteClusterPermissions(options) {
547
- return (options?.client ?? client).delete({
548
- url: '/users/{user_id}/clusters/{cluster_id}',
549
- ...options
550
- });
683
+ static getCredits(options) {
684
+ return (options?.client ?? client).get({ url: '/billing/credits', ...options });
551
685
  }
552
686
  /**
553
- * Add user to cluster and set permissions.
554
- * Add user to the cluster and set / update access permissions. This endpoint is available to administrators of the organization only.
687
+ * Redeem promotional credits code.
688
+ *
689
+ * 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.
555
690
  *
556
691
  */
557
- static setClusterPermissions(options) {
558
- return (options?.client ?? client).put({
559
- url: '/users/{user_id}/clusters/{cluster_id}',
692
+ static redeemCredits(options) {
693
+ return (options.client ?? client).post({
694
+ url: '/billing/credits',
560
695
  ...options,
561
696
  headers: {
562
697
  'Content-Type': 'application/json',
563
- ...options?.headers
698
+ ...options.headers
564
699
  }
565
700
  });
566
701
  }