@cloudfleet/sdk 0.0.1-bd521c7 → 0.0.1-c144916
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@tanstack/react-query.gen.d.ts +1125 -0
- package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
- package/dist/@tanstack/react-query.gen.js +1129 -0
- package/dist/@tanstack/react-query.gen.js.map +1 -0
- package/dist/client/client.gen.d.ts +3 -0
- package/dist/client/client.gen.d.ts.map +1 -0
- package/dist/client/client.gen.js +220 -0
- package/dist/client/client.gen.js.map +1 -0
- package/dist/client/index.d.ts +9 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +7 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/types.gen.d.ts +121 -0
- package/dist/client/types.gen.d.ts.map +1 -0
- package/dist/client/types.gen.js +3 -0
- package/dist/client/types.gen.js.map +1 -0
- package/dist/client/utils.gen.d.ts +38 -0
- package/dist/client/utils.gen.d.ts.map +1 -0
- package/dist/client/utils.gen.js +229 -0
- package/dist/client/utils.gen.js.map +1 -0
- package/dist/client.gen.d.ts +13 -0
- package/dist/client.gen.d.ts.map +1 -0
- package/dist/client.gen.js +4 -0
- package/dist/client.gen.js.map +1 -0
- package/dist/core/auth.gen.d.ts +19 -0
- package/dist/core/auth.gen.d.ts.map +1 -0
- package/dist/core/auth.gen.js +15 -0
- package/dist/core/auth.gen.js.map +1 -0
- package/dist/core/bodySerializer.gen.d.ts +26 -0
- package/dist/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/core/bodySerializer.gen.js +58 -0
- package/dist/core/bodySerializer.gen.js.map +1 -0
- package/dist/core/params.gen.d.ts +44 -0
- package/dist/core/params.gen.d.ts.map +1 -0
- package/dist/core/params.gen.js +101 -0
- package/dist/core/params.gen.js.map +1 -0
- package/dist/core/pathSerializer.gen.d.ts +34 -0
- package/dist/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/core/pathSerializer.gen.js +107 -0
- package/dist/core/pathSerializer.gen.js.map +1 -0
- package/dist/core/queryKeySerializer.gen.d.ts +19 -0
- package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
- package/dist/core/queryKeySerializer.gen.js +93 -0
- package/dist/core/queryKeySerializer.gen.js.map +1 -0
- package/dist/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/core/serverSentEvents.gen.js +133 -0
- package/dist/core/serverSentEvents.gen.js.map +1 -0
- package/dist/core/types.gen.d.ts +79 -0
- package/dist/core/types.gen.d.ts.map +1 -0
- package/dist/core/types.gen.js +3 -0
- package/dist/core/types.gen.js.map +1 -0
- package/dist/core/utils.gen.d.ts +20 -0
- package/dist/core/utils.gen.d.ts.map +1 -0
- package/dist/core/utils.gen.js +88 -0
- package/dist/core/utils.gen.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas.gen.d.ts +1591 -1140
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +2859 -1201
- package/dist/schemas.gen.js.map +1 -1
- package/dist/sdk.gen.d.ts +258 -142
- package/dist/sdk.gen.d.ts.map +1 -1
- package/dist/sdk.gen.js +342 -223
- package/dist/sdk.gen.js.map +1 -1
- package/dist/services/kubernetes/api.d.ts +196 -0
- package/dist/services/kubernetes/api.d.ts.map +1 -0
- package/dist/services/kubernetes/api.js +140 -0
- package/dist/services/kubernetes/api.js.map +1 -0
- package/dist/services/kubernetes/index.d.ts +44 -0
- package/dist/services/kubernetes/index.d.ts.map +1 -0
- package/dist/services/kubernetes/index.js +68 -0
- package/dist/services/kubernetes/index.js.map +1 -0
- package/dist/services/kubernetes/types.d.ts +1335 -0
- package/dist/services/kubernetes/types.d.ts.map +1 -0
- package/dist/services/kubernetes/types.js +2 -0
- package/dist/services/kubernetes/types.js.map +1 -0
- package/dist/types.gen.d.ts +1422 -992
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +3713 -2759
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1539 -913
- package/dist/zod.gen.js.map +1 -1
- package/package.json +31 -5
package/dist/schemas.gen.js
CHANGED
|
@@ -1,4 +1,437 @@
|
|
|
1
1
|
// This file is auto-generated by @hey-api/openapi-ts
|
|
2
|
+
export const BillingContactSchema = {
|
|
3
|
+
type: 'object',
|
|
4
|
+
properties: {
|
|
5
|
+
company: {
|
|
6
|
+
type: 'string',
|
|
7
|
+
maxLength: 120,
|
|
8
|
+
minLength: 2,
|
|
9
|
+
pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
|
|
10
|
+
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
11
|
+
example: 'ACME Corp.'
|
|
12
|
+
},
|
|
13
|
+
address1: {
|
|
14
|
+
type: 'string',
|
|
15
|
+
nullable: true,
|
|
16
|
+
description: 'Street address, P.O. box, c/o',
|
|
17
|
+
example: '123 Main St.'
|
|
18
|
+
},
|
|
19
|
+
address2: {
|
|
20
|
+
type: 'string',
|
|
21
|
+
nullable: true,
|
|
22
|
+
description: 'Apartment, suite, unit, building, floor, etc.',
|
|
23
|
+
example: 'Suite 100'
|
|
24
|
+
},
|
|
25
|
+
postalCode: {
|
|
26
|
+
type: 'string',
|
|
27
|
+
nullable: true,
|
|
28
|
+
description: 'Postal code as a string.',
|
|
29
|
+
example: '94105'
|
|
30
|
+
},
|
|
31
|
+
city: {
|
|
32
|
+
type: 'string',
|
|
33
|
+
nullable: true,
|
|
34
|
+
description: 'City or town name.',
|
|
35
|
+
example: 'San Francisco'
|
|
36
|
+
},
|
|
37
|
+
state: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
nullable: true,
|
|
40
|
+
description: 'State, province, or region name.',
|
|
41
|
+
example: 'CA'
|
|
42
|
+
},
|
|
43
|
+
country: {
|
|
44
|
+
type: 'string',
|
|
45
|
+
nullable: true,
|
|
46
|
+
description: 'Country as a ISO 3166-1 alpha-2 country code.',
|
|
47
|
+
example: 'US'
|
|
48
|
+
},
|
|
49
|
+
phone: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
nullable: true,
|
|
52
|
+
description: 'Phone number as a string.',
|
|
53
|
+
example: '+1 555 555 5555'
|
|
54
|
+
},
|
|
55
|
+
email: {
|
|
56
|
+
type: 'string',
|
|
57
|
+
format: 'email',
|
|
58
|
+
description: 'Email address used for billing as a string.',
|
|
59
|
+
example: 'email@example.com'
|
|
60
|
+
},
|
|
61
|
+
individual_name: {
|
|
62
|
+
type: 'string',
|
|
63
|
+
description: 'Name of the billing contact person.',
|
|
64
|
+
example: 'John Doe'
|
|
65
|
+
},
|
|
66
|
+
tax_id: {
|
|
67
|
+
type: 'string',
|
|
68
|
+
nullable: true,
|
|
69
|
+
description: 'Tax ID of the organization.',
|
|
70
|
+
example: 'DE123456789'
|
|
71
|
+
},
|
|
72
|
+
tax_id_type: {
|
|
73
|
+
type: 'string',
|
|
74
|
+
nullable: true,
|
|
75
|
+
description: 'Type of the tax ID.',
|
|
76
|
+
example: 'de_vat',
|
|
77
|
+
enum: [
|
|
78
|
+
'ad_nrt',
|
|
79
|
+
'ae_trn',
|
|
80
|
+
'al_tin',
|
|
81
|
+
'am_tin',
|
|
82
|
+
'ao_tin',
|
|
83
|
+
'ar_cuit',
|
|
84
|
+
'at_vat',
|
|
85
|
+
'au_abn',
|
|
86
|
+
'au_arn',
|
|
87
|
+
'ba_tin',
|
|
88
|
+
'bb_tin',
|
|
89
|
+
'be_vat',
|
|
90
|
+
'bg_uic',
|
|
91
|
+
'bg_vat',
|
|
92
|
+
'bh_vat',
|
|
93
|
+
'bo_tin',
|
|
94
|
+
'br_cnpj',
|
|
95
|
+
'br_cpf',
|
|
96
|
+
'bs_tin',
|
|
97
|
+
'by_tin',
|
|
98
|
+
'ca_bn',
|
|
99
|
+
'ca_gst_hst',
|
|
100
|
+
'ca_pst_bc',
|
|
101
|
+
'ca_pst_mb',
|
|
102
|
+
'ca_pst_sk',
|
|
103
|
+
'ca_qst',
|
|
104
|
+
'cd_nif',
|
|
105
|
+
'ch_uid',
|
|
106
|
+
'ch_vat',
|
|
107
|
+
'cl_tin',
|
|
108
|
+
'cn_tin',
|
|
109
|
+
'co_nit',
|
|
110
|
+
'cr_tin',
|
|
111
|
+
'cy_vat',
|
|
112
|
+
'cz_vat',
|
|
113
|
+
'de_stn',
|
|
114
|
+
'de_vat',
|
|
115
|
+
'dk_vat',
|
|
116
|
+
'do_rcn',
|
|
117
|
+
'ec_ruc',
|
|
118
|
+
'ee_vat',
|
|
119
|
+
'eg_tin',
|
|
120
|
+
'es_cif',
|
|
121
|
+
'es_vat',
|
|
122
|
+
'eu_oss_vat',
|
|
123
|
+
'fi_vat',
|
|
124
|
+
'fr_vat',
|
|
125
|
+
'gb_vat',
|
|
126
|
+
'ge_vat',
|
|
127
|
+
'gn_nif',
|
|
128
|
+
'gr_vat',
|
|
129
|
+
'hk_br',
|
|
130
|
+
'hr_oib',
|
|
131
|
+
'hr_vat',
|
|
132
|
+
'hu_tin',
|
|
133
|
+
'hu_vat',
|
|
134
|
+
'id_npwp',
|
|
135
|
+
'ie_vat',
|
|
136
|
+
'il_vat',
|
|
137
|
+
'in_gst',
|
|
138
|
+
'is_vat',
|
|
139
|
+
'it_vat',
|
|
140
|
+
'jp_cn',
|
|
141
|
+
'jp_rn',
|
|
142
|
+
'jp_trn',
|
|
143
|
+
'ke_pin',
|
|
144
|
+
'kh_tin',
|
|
145
|
+
'kr_brn',
|
|
146
|
+
'kz_bin',
|
|
147
|
+
'li_uid',
|
|
148
|
+
'li_vat',
|
|
149
|
+
'lt_vat',
|
|
150
|
+
'lu_vat',
|
|
151
|
+
'lv_vat',
|
|
152
|
+
'ma_vat',
|
|
153
|
+
'md_vat',
|
|
154
|
+
'me_pib',
|
|
155
|
+
'mk_vat',
|
|
156
|
+
'mr_nif',
|
|
157
|
+
'mt_vat',
|
|
158
|
+
'mx_rfc',
|
|
159
|
+
'my_frp',
|
|
160
|
+
'my_itn',
|
|
161
|
+
'my_sst',
|
|
162
|
+
'ng_tin',
|
|
163
|
+
'nl_vat',
|
|
164
|
+
'no_vat',
|
|
165
|
+
'no_voec',
|
|
166
|
+
'np_pan',
|
|
167
|
+
'nz_gst',
|
|
168
|
+
'om_vat',
|
|
169
|
+
'pe_ruc',
|
|
170
|
+
'ph_tin',
|
|
171
|
+
'pl_vat',
|
|
172
|
+
'pt_vat',
|
|
173
|
+
'ro_tin',
|
|
174
|
+
'ro_vat',
|
|
175
|
+
'rs_pib',
|
|
176
|
+
'ru_inn',
|
|
177
|
+
'ru_kpp',
|
|
178
|
+
'sa_vat',
|
|
179
|
+
'se_vat',
|
|
180
|
+
'sg_gst',
|
|
181
|
+
'sg_uen',
|
|
182
|
+
'si_tin',
|
|
183
|
+
'si_vat',
|
|
184
|
+
'sk_vat',
|
|
185
|
+
'sn_ninea',
|
|
186
|
+
'sr_fin',
|
|
187
|
+
'sv_nit',
|
|
188
|
+
'th_vat',
|
|
189
|
+
'tj_tin',
|
|
190
|
+
'tr_tin',
|
|
191
|
+
'tw_vat',
|
|
192
|
+
'tz_vat',
|
|
193
|
+
'ua_vat',
|
|
194
|
+
'ug_tin',
|
|
195
|
+
'us_ein',
|
|
196
|
+
'uy_ruc',
|
|
197
|
+
'uz_tin',
|
|
198
|
+
'uz_vat',
|
|
199
|
+
've_rif',
|
|
200
|
+
'vn_tin',
|
|
201
|
+
'xi_vat',
|
|
202
|
+
'za_vat',
|
|
203
|
+
'zm_tin',
|
|
204
|
+
'zw_tin',
|
|
205
|
+
''
|
|
206
|
+
]
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
required: [
|
|
210
|
+
'email',
|
|
211
|
+
'individual_name'
|
|
212
|
+
],
|
|
213
|
+
additionalProperties: false
|
|
214
|
+
};
|
|
215
|
+
export const BillingCreditsSchema = {
|
|
216
|
+
type: 'object',
|
|
217
|
+
properties: {
|
|
218
|
+
id: {
|
|
219
|
+
type: 'string',
|
|
220
|
+
description: 'Generated unique identifier of the promotional code.',
|
|
221
|
+
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
222
|
+
},
|
|
223
|
+
type: {
|
|
224
|
+
type: 'string',
|
|
225
|
+
description: 'Type of the promotional code.',
|
|
226
|
+
example: 'credit',
|
|
227
|
+
enum: [
|
|
228
|
+
'credit',
|
|
229
|
+
'discount'
|
|
230
|
+
]
|
|
231
|
+
},
|
|
232
|
+
date_start: {
|
|
233
|
+
type: 'string',
|
|
234
|
+
format: 'date-time',
|
|
235
|
+
description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
|
|
236
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
237
|
+
},
|
|
238
|
+
date_end: {
|
|
239
|
+
type: 'string',
|
|
240
|
+
format: 'date-time',
|
|
241
|
+
description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
|
|
242
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
243
|
+
},
|
|
244
|
+
code: {
|
|
245
|
+
type: 'string',
|
|
246
|
+
description: 'Promotional code used by the customer.',
|
|
247
|
+
example: 'VQ4SCMB'
|
|
248
|
+
},
|
|
249
|
+
description: {
|
|
250
|
+
type: 'string',
|
|
251
|
+
description: 'Description of the promotional code.',
|
|
252
|
+
example: '10% off on all products'
|
|
253
|
+
},
|
|
254
|
+
value_total: {
|
|
255
|
+
type: 'number',
|
|
256
|
+
format: 'float',
|
|
257
|
+
description: 'Total value of the promotional code.',
|
|
258
|
+
example: 10
|
|
259
|
+
},
|
|
260
|
+
value_remaining: {
|
|
261
|
+
type: 'number',
|
|
262
|
+
format: 'float',
|
|
263
|
+
description: 'Remaining value of the promotional code.',
|
|
264
|
+
example: 8
|
|
265
|
+
}
|
|
266
|
+
},
|
|
267
|
+
required: [
|
|
268
|
+
'type',
|
|
269
|
+
'date_start',
|
|
270
|
+
'code',
|
|
271
|
+
'value_total'
|
|
272
|
+
],
|
|
273
|
+
additionalProperties: false
|
|
274
|
+
};
|
|
275
|
+
export const ChartCreateInputSchema = {
|
|
276
|
+
type: 'object',
|
|
277
|
+
properties: {
|
|
278
|
+
values: {
|
|
279
|
+
type: 'string',
|
|
280
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
281
|
+
},
|
|
282
|
+
version_channel: {
|
|
283
|
+
type: 'string',
|
|
284
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
285
|
+
description: 'Desired version range or channel for the chart.',
|
|
286
|
+
example: '2.x.x-cfke.x'
|
|
287
|
+
},
|
|
288
|
+
name: {
|
|
289
|
+
type: 'string',
|
|
290
|
+
maxLength: 63,
|
|
291
|
+
minLength: 1,
|
|
292
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
293
|
+
description: 'Unique identifier of the chart deployment aka name of the helm release.',
|
|
294
|
+
example: 'postgresql-0'
|
|
295
|
+
},
|
|
296
|
+
namespace: {
|
|
297
|
+
type: 'string',
|
|
298
|
+
maxLength: 63,
|
|
299
|
+
minLength: 1,
|
|
300
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
301
|
+
description: 'Namespace of the chart deployment',
|
|
302
|
+
example: 'default'
|
|
303
|
+
},
|
|
304
|
+
chart: {
|
|
305
|
+
type: 'string',
|
|
306
|
+
maxLength: 63,
|
|
307
|
+
minLength: 1,
|
|
308
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
309
|
+
description: 'Name of the chart listing',
|
|
310
|
+
example: 'postgresql'
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
required: [
|
|
314
|
+
'values',
|
|
315
|
+
'version_channel',
|
|
316
|
+
'name',
|
|
317
|
+
'namespace',
|
|
318
|
+
'chart'
|
|
319
|
+
],
|
|
320
|
+
additionalProperties: false
|
|
321
|
+
};
|
|
322
|
+
export const ChartSchema = {
|
|
323
|
+
type: 'object',
|
|
324
|
+
properties: {
|
|
325
|
+
values: {
|
|
326
|
+
type: 'string',
|
|
327
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
328
|
+
},
|
|
329
|
+
version_channel: {
|
|
330
|
+
type: 'string',
|
|
331
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
332
|
+
description: 'Desired version range or channel for the chart.',
|
|
333
|
+
example: '2.x.x-cfke.x'
|
|
334
|
+
},
|
|
335
|
+
name: {
|
|
336
|
+
type: 'string',
|
|
337
|
+
maxLength: 63,
|
|
338
|
+
minLength: 1,
|
|
339
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
340
|
+
description: 'Unique identifier of the chart deployment aka name of the helm release.',
|
|
341
|
+
example: 'postgresql-0'
|
|
342
|
+
},
|
|
343
|
+
namespace: {
|
|
344
|
+
type: 'string',
|
|
345
|
+
maxLength: 63,
|
|
346
|
+
minLength: 1,
|
|
347
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
348
|
+
description: 'Namespace of the chart deployment',
|
|
349
|
+
example: 'default'
|
|
350
|
+
},
|
|
351
|
+
chart: {
|
|
352
|
+
type: 'string',
|
|
353
|
+
maxLength: 63,
|
|
354
|
+
minLength: 1,
|
|
355
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
356
|
+
description: 'Name of the chart listing',
|
|
357
|
+
example: 'postgresql'
|
|
358
|
+
},
|
|
359
|
+
status: {
|
|
360
|
+
type: 'string',
|
|
361
|
+
description: 'Status of the chart deployment.',
|
|
362
|
+
example: 'active',
|
|
363
|
+
enum: [
|
|
364
|
+
'InstallSucceeded',
|
|
365
|
+
'InstallFailed',
|
|
366
|
+
'UpgradeSucceeded',
|
|
367
|
+
'UpgradeFailed',
|
|
368
|
+
'TestSucceeded',
|
|
369
|
+
'TestFailed',
|
|
370
|
+
'RollbackSucceeded',
|
|
371
|
+
'RollbackFailed',
|
|
372
|
+
'UninstallSucceeded',
|
|
373
|
+
'UninstallFailed',
|
|
374
|
+
'ArtifactFailed',
|
|
375
|
+
'DependencyNotReady',
|
|
376
|
+
'Progressing',
|
|
377
|
+
'SourceNotReady'
|
|
378
|
+
]
|
|
379
|
+
},
|
|
380
|
+
version_current: {
|
|
381
|
+
type: 'string',
|
|
382
|
+
description: 'Current version of the chart deployment.',
|
|
383
|
+
example: '2.1.33-cfke.11'
|
|
384
|
+
},
|
|
385
|
+
created_at: {
|
|
386
|
+
type: 'string',
|
|
387
|
+
description: 'Creation date and time of the chart deployment.',
|
|
388
|
+
example: '2024-09-12T09:11:27Z'
|
|
389
|
+
},
|
|
390
|
+
updated_at: {
|
|
391
|
+
type: 'string',
|
|
392
|
+
description: 'Last update date and time of the chart deployment.',
|
|
393
|
+
example: '2024-09-12T09:11:27Z'
|
|
394
|
+
},
|
|
395
|
+
ready: {
|
|
396
|
+
type: 'boolean',
|
|
397
|
+
description: 'Indicates if the chart deployment is ready to be used.',
|
|
398
|
+
example: true
|
|
399
|
+
}
|
|
400
|
+
},
|
|
401
|
+
required: [
|
|
402
|
+
'values',
|
|
403
|
+
'version_channel',
|
|
404
|
+
'name',
|
|
405
|
+
'namespace',
|
|
406
|
+
'chart',
|
|
407
|
+
'status',
|
|
408
|
+
'version_current',
|
|
409
|
+
'created_at',
|
|
410
|
+
'updated_at',
|
|
411
|
+
'ready'
|
|
412
|
+
],
|
|
413
|
+
additionalProperties: false
|
|
414
|
+
};
|
|
415
|
+
export const ChartUpdateInputSchema = {
|
|
416
|
+
type: 'object',
|
|
417
|
+
properties: {
|
|
418
|
+
values: {
|
|
419
|
+
type: 'string',
|
|
420
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
421
|
+
},
|
|
422
|
+
version_channel: {
|
|
423
|
+
type: 'string',
|
|
424
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
425
|
+
description: 'Desired version range or channel for the chart.',
|
|
426
|
+
example: '2.x.x-cfke.x'
|
|
427
|
+
}
|
|
428
|
+
},
|
|
429
|
+
required: [
|
|
430
|
+
'values',
|
|
431
|
+
'version_channel'
|
|
432
|
+
],
|
|
433
|
+
additionalProperties: false
|
|
434
|
+
};
|
|
2
435
|
export const ClusterCreateInputSchema = {
|
|
3
436
|
type: 'object',
|
|
4
437
|
properties: {
|
|
@@ -10,28 +443,45 @@ export const ClusterCreateInputSchema = {
|
|
|
10
443
|
description: 'Name of the cluster.',
|
|
11
444
|
example: 'production-cluster'
|
|
12
445
|
},
|
|
13
|
-
region: {
|
|
14
|
-
type: 'string',
|
|
15
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
16
|
-
default: 'staging',
|
|
17
|
-
example: 'northamerica-central-1',
|
|
18
|
-
enum: ['staging', 'northamerica-central-1']
|
|
19
|
-
},
|
|
20
446
|
tier: {
|
|
21
447
|
type: 'string',
|
|
22
448
|
description: 'Tier of the cluster.',
|
|
23
449
|
example: 'pro',
|
|
24
|
-
enum: [
|
|
450
|
+
enum: [
|
|
451
|
+
'basic',
|
|
452
|
+
'pro'
|
|
453
|
+
]
|
|
454
|
+
},
|
|
455
|
+
region: {
|
|
456
|
+
type: 'string',
|
|
457
|
+
description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
458
|
+
default: 'staging-1a',
|
|
459
|
+
example: 'northamerica-central-1a',
|
|
460
|
+
enum: [
|
|
461
|
+
'staging-1a',
|
|
462
|
+
'northamerica-central-1',
|
|
463
|
+
'europe-central-1a',
|
|
464
|
+
'northamerica-central-1a'
|
|
465
|
+
]
|
|
25
466
|
},
|
|
26
467
|
version_channel: {
|
|
27
468
|
type: 'string',
|
|
28
469
|
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
29
470
|
description: 'Version of the kubernetes cluster.',
|
|
30
471
|
default: '1.x.x-cfke.x',
|
|
31
|
-
example: '1.
|
|
472
|
+
example: '1.x.x-cfke.x',
|
|
473
|
+
enum: [
|
|
474
|
+
'1.x.x-cfke.x',
|
|
475
|
+
'1.31.x-cfke.x',
|
|
476
|
+
'1.32.x-cfke.x',
|
|
477
|
+
'1.33.x-cfke.x'
|
|
478
|
+
]
|
|
32
479
|
}
|
|
33
480
|
},
|
|
34
|
-
required: [
|
|
481
|
+
required: [
|
|
482
|
+
'name',
|
|
483
|
+
'tier'
|
|
484
|
+
],
|
|
35
485
|
additionalProperties: false
|
|
36
486
|
};
|
|
37
487
|
export const ClusterJoinInformationSchema = {
|
|
@@ -40,8 +490,7 @@ export const ClusterJoinInformationSchema = {
|
|
|
40
490
|
certificate_authority: {
|
|
41
491
|
type: 'string',
|
|
42
492
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
43
|
-
example:
|
|
44
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
493
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
45
494
|
},
|
|
46
495
|
endpoint: {
|
|
47
496
|
type: 'string',
|
|
@@ -49,6 +498,11 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
49
498
|
description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
|
|
50
499
|
example: 'https://10.31.64.7:6443'
|
|
51
500
|
},
|
|
501
|
+
cluster_dns: {
|
|
502
|
+
type: 'string',
|
|
503
|
+
description: 'Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.',
|
|
504
|
+
example: '10.96.0.10'
|
|
505
|
+
},
|
|
52
506
|
auth_key: {
|
|
53
507
|
type: 'string',
|
|
54
508
|
description: 'Authentication key for the cluster.',
|
|
@@ -65,7 +519,7 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
65
519
|
kubernetes: {
|
|
66
520
|
type: 'string',
|
|
67
521
|
description: 'Kubernetes version of the cluster.',
|
|
68
|
-
example: '1.
|
|
522
|
+
example: '1.33.7'
|
|
69
523
|
},
|
|
70
524
|
tailscale: {
|
|
71
525
|
type: 'string',
|
|
@@ -76,9 +530,19 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
76
530
|
type: 'string',
|
|
77
531
|
description: 'Containerd version of the cluster.',
|
|
78
532
|
example: '1.7.19'
|
|
533
|
+
},
|
|
534
|
+
nvidia_driver: {
|
|
535
|
+
type: 'string',
|
|
536
|
+
description: 'NVIDIA driver version of the cluster.',
|
|
537
|
+
example: '565.0.0'
|
|
79
538
|
}
|
|
80
539
|
},
|
|
81
|
-
required: [
|
|
540
|
+
required: [
|
|
541
|
+
'kubernetes',
|
|
542
|
+
'tailscale',
|
|
543
|
+
'containerd',
|
|
544
|
+
'nvidia_driver'
|
|
545
|
+
],
|
|
82
546
|
additionalProperties: false,
|
|
83
547
|
description: 'Versions of the different components of the cluster.'
|
|
84
548
|
},
|
|
@@ -101,12 +565,24 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
101
565
|
example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
|
|
102
566
|
}
|
|
103
567
|
},
|
|
104
|
-
required: [
|
|
568
|
+
required: [
|
|
569
|
+
'metadata_url',
|
|
570
|
+
'aws_role_arn',
|
|
571
|
+
'gcp_workload_identity_provider'
|
|
572
|
+
],
|
|
105
573
|
additionalProperties: false,
|
|
106
|
-
description:
|
|
574
|
+
description: 'OIDC Information for hosts to access to third party API\'s.'
|
|
107
575
|
}
|
|
108
576
|
},
|
|
109
|
-
required: [
|
|
577
|
+
required: [
|
|
578
|
+
'certificate_authority',
|
|
579
|
+
'endpoint',
|
|
580
|
+
'cluster_dns',
|
|
581
|
+
'auth_key',
|
|
582
|
+
'bootstrap_token',
|
|
583
|
+
'versions',
|
|
584
|
+
'third_party_api_access_config'
|
|
585
|
+
],
|
|
110
586
|
additionalProperties: false
|
|
111
587
|
};
|
|
112
588
|
export const ClusterSchema = {
|
|
@@ -120,25 +596,26 @@ export const ClusterSchema = {
|
|
|
120
596
|
description: 'Name of the cluster.',
|
|
121
597
|
example: 'production-cluster'
|
|
122
598
|
},
|
|
123
|
-
region: {
|
|
124
|
-
type: 'string',
|
|
125
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
126
|
-
default: 'staging',
|
|
127
|
-
example: 'northamerica-central-1',
|
|
128
|
-
enum: ['staging', 'northamerica-central-1']
|
|
129
|
-
},
|
|
130
599
|
tier: {
|
|
131
600
|
type: 'string',
|
|
132
601
|
description: 'Tier of the cluster.',
|
|
133
602
|
example: 'pro',
|
|
134
|
-
enum: [
|
|
603
|
+
enum: [
|
|
604
|
+
'basic',
|
|
605
|
+
'pro'
|
|
606
|
+
]
|
|
135
607
|
},
|
|
136
|
-
|
|
608
|
+
region: {
|
|
137
609
|
type: 'string',
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
610
|
+
description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
611
|
+
default: 'staging-1a',
|
|
612
|
+
example: 'northamerica-central-1a',
|
|
613
|
+
enum: [
|
|
614
|
+
'staging-1a',
|
|
615
|
+
'northamerica-central-1',
|
|
616
|
+
'europe-central-1a',
|
|
617
|
+
'northamerica-central-1a'
|
|
618
|
+
]
|
|
142
619
|
},
|
|
143
620
|
id: {
|
|
144
621
|
type: 'string',
|
|
@@ -150,32 +627,57 @@ export const ClusterSchema = {
|
|
|
150
627
|
type: 'string',
|
|
151
628
|
description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
|
|
152
629
|
example: 'active',
|
|
153
|
-
enum: [
|
|
630
|
+
enum: [
|
|
631
|
+
'active',
|
|
632
|
+
'disabled',
|
|
633
|
+
'deleted',
|
|
634
|
+
'creating',
|
|
635
|
+
'deployed',
|
|
636
|
+
'failed',
|
|
637
|
+
'updating'
|
|
638
|
+
]
|
|
154
639
|
},
|
|
155
640
|
endpoint: {
|
|
156
641
|
anyOf: [
|
|
157
642
|
{
|
|
158
643
|
type: 'string',
|
|
159
644
|
format: 'uri',
|
|
160
|
-
description: 'URL of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
645
|
+
description: 'URL signed by the private CA of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster. (Deprecated, use endpoint_public instead)',
|
|
161
646
|
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.cloudfleet.dev:6443'
|
|
162
647
|
},
|
|
163
648
|
{
|
|
164
649
|
type: 'string',
|
|
165
|
-
enum: [
|
|
650
|
+
enum: [
|
|
651
|
+
''
|
|
652
|
+
]
|
|
653
|
+
}
|
|
654
|
+
]
|
|
655
|
+
},
|
|
656
|
+
endpoint_public: {
|
|
657
|
+
anyOf: [
|
|
658
|
+
{
|
|
659
|
+
type: 'string',
|
|
660
|
+
format: 'uri',
|
|
661
|
+
description: 'URL signed by a public CA of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
662
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
type: 'string',
|
|
666
|
+
enum: [
|
|
667
|
+
''
|
|
668
|
+
]
|
|
166
669
|
}
|
|
167
670
|
]
|
|
168
671
|
},
|
|
169
672
|
certificate_ca: {
|
|
170
673
|
type: 'string',
|
|
171
674
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
172
|
-
example:
|
|
173
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
675
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
174
676
|
},
|
|
175
677
|
version_current: {
|
|
176
678
|
type: 'string',
|
|
177
679
|
description: 'Current version of the cluster.',
|
|
178
|
-
example: '1.
|
|
680
|
+
example: '1.33.7-cfke.264'
|
|
179
681
|
},
|
|
180
682
|
created_at: {
|
|
181
683
|
type: 'string',
|
|
@@ -191,9 +693,20 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
191
693
|
type: 'boolean',
|
|
192
694
|
description: 'Indicates if the cluster is ready to be used.',
|
|
193
695
|
example: true
|
|
696
|
+
},
|
|
697
|
+
version_channel: {
|
|
698
|
+
type: 'string',
|
|
699
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
700
|
+
description: 'Version of the kubernetes cluster.',
|
|
701
|
+
example: '1.x.x-cfke.x'
|
|
194
702
|
}
|
|
195
703
|
},
|
|
196
|
-
required: [
|
|
704
|
+
required: [
|
|
705
|
+
'name',
|
|
706
|
+
'tier',
|
|
707
|
+
'id',
|
|
708
|
+
'status'
|
|
709
|
+
],
|
|
197
710
|
additionalProperties: false
|
|
198
711
|
};
|
|
199
712
|
export const ClusterUpdateInputSchema = {
|
|
@@ -207,13 +720,25 @@ export const ClusterUpdateInputSchema = {
|
|
|
207
720
|
description: 'Name of the cluster.',
|
|
208
721
|
example: 'production-cluster'
|
|
209
722
|
},
|
|
723
|
+
tier: {
|
|
724
|
+
type: 'string',
|
|
725
|
+
description: 'Tier of the cluster.',
|
|
726
|
+
example: 'pro',
|
|
727
|
+
enum: [
|
|
728
|
+
'basic',
|
|
729
|
+
'pro'
|
|
730
|
+
]
|
|
731
|
+
},
|
|
210
732
|
version_channel: {
|
|
211
733
|
type: 'string',
|
|
212
734
|
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
213
735
|
description: 'Version of the kubernetes cluster.',
|
|
214
|
-
example: '1.
|
|
736
|
+
example: '1.x.x-cfke.x'
|
|
215
737
|
}
|
|
216
738
|
},
|
|
739
|
+
required: [
|
|
740
|
+
'tier'
|
|
741
|
+
],
|
|
217
742
|
additionalProperties: false
|
|
218
743
|
};
|
|
219
744
|
export const FleetCreateInputSchema = {
|
|
@@ -223,13 +748,12 @@ export const FleetCreateInputSchema = {
|
|
|
223
748
|
type: 'object',
|
|
224
749
|
properties: {
|
|
225
750
|
cpu: {
|
|
226
|
-
type: '
|
|
227
|
-
format: 'float',
|
|
751
|
+
type: 'integer',
|
|
228
752
|
minimum: 0,
|
|
229
|
-
|
|
753
|
+
maximum: 100000,
|
|
754
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
230
755
|
}
|
|
231
756
|
},
|
|
232
|
-
required: ['cpu'],
|
|
233
757
|
additionalProperties: false,
|
|
234
758
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
235
759
|
},
|
|
@@ -237,77 +761,348 @@ export const FleetCreateInputSchema = {
|
|
|
237
761
|
type: 'object',
|
|
238
762
|
properties: {
|
|
239
763
|
enabled: {
|
|
240
|
-
type: 'boolean'
|
|
241
|
-
default: true
|
|
764
|
+
type: 'boolean'
|
|
242
765
|
},
|
|
243
766
|
project: {
|
|
244
767
|
type: 'string',
|
|
245
|
-
|
|
768
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
769
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
770
|
+
example: 'my-cloudfleet-project'
|
|
246
771
|
}
|
|
247
772
|
},
|
|
248
|
-
required: [
|
|
773
|
+
required: [
|
|
774
|
+
'enabled'
|
|
775
|
+
],
|
|
249
776
|
additionalProperties: false
|
|
250
777
|
},
|
|
251
778
|
hetzner: {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
enabled: {
|
|
257
|
-
type: 'boolean',
|
|
258
|
-
default: true
|
|
259
|
-
},
|
|
260
|
-
apiKey: {
|
|
261
|
-
type: 'string'
|
|
262
|
-
}
|
|
263
|
-
},
|
|
264
|
-
additionalProperties: false
|
|
779
|
+
type: 'object',
|
|
780
|
+
properties: {
|
|
781
|
+
enabled: {
|
|
782
|
+
type: 'boolean'
|
|
265
783
|
},
|
|
266
|
-
{
|
|
267
|
-
type: '
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
enabled: {
|
|
273
|
-
type: 'boolean',
|
|
274
|
-
default: true
|
|
275
|
-
}
|
|
276
|
-
},
|
|
277
|
-
additionalProperties: false
|
|
784
|
+
apiKey: {
|
|
785
|
+
type: 'string',
|
|
786
|
+
maxLength: 64,
|
|
787
|
+
minLength: 64,
|
|
788
|
+
pattern: '^[A-Za-z0-9]+$',
|
|
789
|
+
description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
|
|
278
790
|
}
|
|
279
|
-
|
|
791
|
+
},
|
|
792
|
+
required: [
|
|
793
|
+
'enabled'
|
|
794
|
+
],
|
|
795
|
+
additionalProperties: false
|
|
280
796
|
},
|
|
281
797
|
aws: {
|
|
282
798
|
type: 'object',
|
|
283
799
|
properties: {
|
|
284
800
|
enabled: {
|
|
285
|
-
type: 'boolean'
|
|
286
|
-
default: true
|
|
801
|
+
type: 'boolean'
|
|
287
802
|
},
|
|
288
803
|
controllerRoleArn: {
|
|
289
804
|
type: 'string',
|
|
290
|
-
|
|
805
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
806
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
807
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
291
808
|
}
|
|
292
809
|
},
|
|
293
|
-
required: [
|
|
810
|
+
required: [
|
|
811
|
+
'enabled'
|
|
812
|
+
],
|
|
294
813
|
additionalProperties: false
|
|
295
814
|
},
|
|
296
|
-
|
|
297
|
-
type: '
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
815
|
+
constraints: {
|
|
816
|
+
type: 'object',
|
|
817
|
+
properties: {
|
|
818
|
+
'karpenter.sh/capacity-type': {
|
|
819
|
+
type: 'array',
|
|
820
|
+
items: {
|
|
821
|
+
type: 'string',
|
|
822
|
+
enum: [
|
|
823
|
+
'on-demand',
|
|
824
|
+
'spot'
|
|
825
|
+
]
|
|
826
|
+
},
|
|
827
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.'
|
|
828
|
+
},
|
|
829
|
+
'kubernetes.io/arch': {
|
|
830
|
+
type: 'array',
|
|
831
|
+
items: {
|
|
832
|
+
type: 'string',
|
|
833
|
+
enum: [
|
|
834
|
+
'amd64',
|
|
835
|
+
'arm64'
|
|
836
|
+
]
|
|
837
|
+
},
|
|
838
|
+
description: 'Allowed values for `kubernetes.io/arch`.'
|
|
839
|
+
},
|
|
840
|
+
'cfke.io/instance-family': {
|
|
841
|
+
type: 'array',
|
|
842
|
+
items: {
|
|
843
|
+
type: 'string',
|
|
844
|
+
enum: [
|
|
845
|
+
'a1',
|
|
846
|
+
'a2',
|
|
847
|
+
'a3',
|
|
848
|
+
'a4',
|
|
849
|
+
'c1',
|
|
850
|
+
'c2',
|
|
851
|
+
'c2d',
|
|
852
|
+
'c3',
|
|
853
|
+
'c3d',
|
|
854
|
+
'c4',
|
|
855
|
+
'c4a',
|
|
856
|
+
'c4d',
|
|
857
|
+
'c5',
|
|
858
|
+
'c5a',
|
|
859
|
+
'c5ad',
|
|
860
|
+
'c5d',
|
|
861
|
+
'c5n',
|
|
862
|
+
'c6a',
|
|
863
|
+
'c6g',
|
|
864
|
+
'c6gd',
|
|
865
|
+
'c6gn',
|
|
866
|
+
'c6i',
|
|
867
|
+
'c6id',
|
|
868
|
+
'c6in',
|
|
869
|
+
'c7a',
|
|
870
|
+
'c7g',
|
|
871
|
+
'c7gd',
|
|
872
|
+
'c7gn',
|
|
873
|
+
'c7i',
|
|
874
|
+
'c7i-flex',
|
|
875
|
+
'c8g',
|
|
876
|
+
'c8gd',
|
|
877
|
+
'cax',
|
|
878
|
+
'ccx',
|
|
879
|
+
'cpx',
|
|
880
|
+
'cx',
|
|
881
|
+
'd2',
|
|
882
|
+
'd3',
|
|
883
|
+
'd3en',
|
|
884
|
+
'dl1',
|
|
885
|
+
'dl2q',
|
|
886
|
+
'e2',
|
|
887
|
+
'f1',
|
|
888
|
+
'f2',
|
|
889
|
+
'g1',
|
|
890
|
+
'g2',
|
|
891
|
+
'g4ad',
|
|
892
|
+
'g4dn',
|
|
893
|
+
'g5',
|
|
894
|
+
'g5g',
|
|
895
|
+
'g6',
|
|
896
|
+
'g6e',
|
|
897
|
+
'gr6',
|
|
898
|
+
'h1',
|
|
899
|
+
'h3',
|
|
900
|
+
'hpc6a',
|
|
901
|
+
'hpc6id',
|
|
902
|
+
'hpc7a',
|
|
903
|
+
'hpc7g',
|
|
904
|
+
'i2',
|
|
905
|
+
'i3',
|
|
906
|
+
'i3en',
|
|
907
|
+
'i4g',
|
|
908
|
+
'i4i',
|
|
909
|
+
'i7i',
|
|
910
|
+
'i7ie',
|
|
911
|
+
'i8g',
|
|
912
|
+
'im4gn',
|
|
913
|
+
'inf1',
|
|
914
|
+
'inf2',
|
|
915
|
+
'is4gen',
|
|
916
|
+
'm1',
|
|
917
|
+
'm2',
|
|
918
|
+
'm3',
|
|
919
|
+
'm4',
|
|
920
|
+
'm5',
|
|
921
|
+
'm5a',
|
|
922
|
+
'm5ad',
|
|
923
|
+
'm5d',
|
|
924
|
+
'm5dn',
|
|
925
|
+
'm5n',
|
|
926
|
+
'm5zn',
|
|
927
|
+
'm6a',
|
|
928
|
+
'm6g',
|
|
929
|
+
'm6gd',
|
|
930
|
+
'm6i',
|
|
931
|
+
'm6id',
|
|
932
|
+
'm6idn',
|
|
933
|
+
'm6in',
|
|
934
|
+
'm7a',
|
|
935
|
+
'm7g',
|
|
936
|
+
'm7gd',
|
|
937
|
+
'm7i',
|
|
938
|
+
'm7i-flex',
|
|
939
|
+
'm8g',
|
|
940
|
+
'm8gd',
|
|
941
|
+
'n1',
|
|
942
|
+
'n2',
|
|
943
|
+
'n2d',
|
|
944
|
+
'n4',
|
|
945
|
+
'p3',
|
|
946
|
+
'p3dn',
|
|
947
|
+
'p4d',
|
|
948
|
+
'p4de',
|
|
949
|
+
'p5',
|
|
950
|
+
'p5e',
|
|
951
|
+
'p5en',
|
|
952
|
+
'p6-b200',
|
|
953
|
+
'r3',
|
|
954
|
+
'r4',
|
|
955
|
+
'r5',
|
|
956
|
+
'r5a',
|
|
957
|
+
'r5ad',
|
|
958
|
+
'r5b',
|
|
959
|
+
'r5d',
|
|
960
|
+
'r5dn',
|
|
961
|
+
'r5n',
|
|
962
|
+
'r6a',
|
|
963
|
+
'r6g',
|
|
964
|
+
'r6gd',
|
|
965
|
+
'r6i',
|
|
966
|
+
'r6id',
|
|
967
|
+
'r6idn',
|
|
968
|
+
'r6in',
|
|
969
|
+
'r7a',
|
|
970
|
+
'r7g',
|
|
971
|
+
'r7gd',
|
|
972
|
+
'r7i',
|
|
973
|
+
'r7iz',
|
|
974
|
+
'r8g',
|
|
975
|
+
'r8gd',
|
|
976
|
+
't2',
|
|
977
|
+
't2a',
|
|
978
|
+
't2d',
|
|
979
|
+
't3',
|
|
980
|
+
't3a',
|
|
981
|
+
't4g',
|
|
982
|
+
'trn1',
|
|
983
|
+
'trn1n',
|
|
984
|
+
'u-3tb1',
|
|
985
|
+
'u-6tb1',
|
|
986
|
+
'u7i-12tb',
|
|
987
|
+
'u7i-6tb',
|
|
988
|
+
'u7i-8tb',
|
|
989
|
+
'u7in-16tb',
|
|
990
|
+
'u7in-24tb',
|
|
991
|
+
'u7in-32tb',
|
|
992
|
+
'vt1',
|
|
993
|
+
'x1',
|
|
994
|
+
'x1e',
|
|
995
|
+
'x2gd',
|
|
996
|
+
'x2idn',
|
|
997
|
+
'x2iedn',
|
|
998
|
+
'x2iezn',
|
|
999
|
+
'x4',
|
|
1000
|
+
'x8g',
|
|
1001
|
+
'z1d',
|
|
1002
|
+
'z3'
|
|
1003
|
+
]
|
|
1004
|
+
},
|
|
1005
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1006
|
+
},
|
|
1007
|
+
'topology.kubernetes.io/region': {
|
|
1008
|
+
type: 'array',
|
|
1009
|
+
items: {
|
|
1010
|
+
type: 'string',
|
|
1011
|
+
enum: [
|
|
1012
|
+
'africa-south1',
|
|
1013
|
+
'ap-northeast-1',
|
|
1014
|
+
'ap-northeast-2',
|
|
1015
|
+
'ap-northeast-3',
|
|
1016
|
+
'ap-south-1',
|
|
1017
|
+
'ap-southeast-1',
|
|
1018
|
+
'ap-southeast-2',
|
|
1019
|
+
'ash',
|
|
1020
|
+
'asia-east1',
|
|
1021
|
+
'asia-east2',
|
|
1022
|
+
'asia-northeast1',
|
|
1023
|
+
'asia-northeast2',
|
|
1024
|
+
'asia-northeast3',
|
|
1025
|
+
'asia-south1',
|
|
1026
|
+
'asia-south2',
|
|
1027
|
+
'asia-southeast1',
|
|
1028
|
+
'asia-southeast2',
|
|
1029
|
+
'australia-southeast1',
|
|
1030
|
+
'australia-southeast2',
|
|
1031
|
+
'ca-central-1',
|
|
1032
|
+
'eu-central-1',
|
|
1033
|
+
'eu-central-2',
|
|
1034
|
+
'eu-north-1',
|
|
1035
|
+
'eu-west-1',
|
|
1036
|
+
'eu-west-2',
|
|
1037
|
+
'eu-west-3',
|
|
1038
|
+
'europe-central2',
|
|
1039
|
+
'europe-north1',
|
|
1040
|
+
'europe-southwest1',
|
|
1041
|
+
'europe-west1',
|
|
1042
|
+
'europe-west10',
|
|
1043
|
+
'europe-west12',
|
|
1044
|
+
'europe-west2',
|
|
1045
|
+
'europe-west3',
|
|
1046
|
+
'europe-west4',
|
|
1047
|
+
'europe-west6',
|
|
1048
|
+
'europe-west8',
|
|
1049
|
+
'europe-west9',
|
|
1050
|
+
'fsn1',
|
|
1051
|
+
'hel1',
|
|
1052
|
+
'hil',
|
|
1053
|
+
'me-central1',
|
|
1054
|
+
'me-central2',
|
|
1055
|
+
'me-west1',
|
|
1056
|
+
'nbg1',
|
|
1057
|
+
'northamerica-northeast1',
|
|
1058
|
+
'northamerica-northeast2',
|
|
1059
|
+
'sa-east-1',
|
|
1060
|
+
'sin',
|
|
1061
|
+
'southamerica-east1',
|
|
1062
|
+
'southamerica-west1',
|
|
1063
|
+
'us-central1',
|
|
1064
|
+
'us-east-1',
|
|
1065
|
+
'us-east-2',
|
|
1066
|
+
'us-east1',
|
|
1067
|
+
'us-east4',
|
|
1068
|
+
'us-east5',
|
|
1069
|
+
'us-south1',
|
|
1070
|
+
'us-west-1',
|
|
1071
|
+
'us-west-2',
|
|
1072
|
+
'us-west1',
|
|
1073
|
+
'us-west2',
|
|
1074
|
+
'us-west3',
|
|
1075
|
+
'us-west4'
|
|
1076
|
+
]
|
|
1077
|
+
},
|
|
1078
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1079
|
+
}
|
|
1080
|
+
},
|
|
1081
|
+
additionalProperties: false,
|
|
1082
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
303
1083
|
},
|
|
304
|
-
|
|
1084
|
+
scalingProfile: {
|
|
1085
|
+
type: 'string',
|
|
1086
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1087
|
+
default: 'conservative',
|
|
1088
|
+
example: 'conservative',
|
|
1089
|
+
enum: [
|
|
1090
|
+
'aggressive',
|
|
1091
|
+
'conservative'
|
|
1092
|
+
]
|
|
1093
|
+
},
|
|
1094
|
+
id: {
|
|
305
1095
|
type: 'string',
|
|
306
|
-
|
|
307
|
-
|
|
1096
|
+
maxLength: 63,
|
|
1097
|
+
minLength: 1,
|
|
1098
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
1099
|
+
description: 'Unique identifier of the kubernetes fleet.',
|
|
1100
|
+
example: 'new-clouds-fleet'
|
|
308
1101
|
}
|
|
309
1102
|
},
|
|
310
|
-
required: [
|
|
1103
|
+
required: [
|
|
1104
|
+
'id'
|
|
1105
|
+
],
|
|
311
1106
|
additionalProperties: false
|
|
312
1107
|
};
|
|
313
1108
|
export const FleetSchema = {
|
|
@@ -317,13 +1112,12 @@ export const FleetSchema = {
|
|
|
317
1112
|
type: 'object',
|
|
318
1113
|
properties: {
|
|
319
1114
|
cpu: {
|
|
320
|
-
type: '
|
|
321
|
-
format: 'float',
|
|
1115
|
+
type: 'integer',
|
|
322
1116
|
minimum: 0,
|
|
323
|
-
|
|
1117
|
+
maximum: 100000,
|
|
1118
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
324
1119
|
}
|
|
325
1120
|
},
|
|
326
|
-
required: ['cpu'],
|
|
327
1121
|
additionalProperties: false,
|
|
328
1122
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
329
1123
|
},
|
|
@@ -331,62 +1125,334 @@ export const FleetSchema = {
|
|
|
331
1125
|
type: 'object',
|
|
332
1126
|
properties: {
|
|
333
1127
|
enabled: {
|
|
334
|
-
type: 'boolean'
|
|
335
|
-
default: true
|
|
1128
|
+
type: 'boolean'
|
|
336
1129
|
},
|
|
337
1130
|
project: {
|
|
338
1131
|
type: 'string',
|
|
339
|
-
|
|
1132
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1133
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
1134
|
+
example: 'my-cloudfleet-project'
|
|
340
1135
|
}
|
|
341
1136
|
},
|
|
342
|
-
required: [
|
|
1137
|
+
required: [
|
|
1138
|
+
'enabled'
|
|
1139
|
+
],
|
|
343
1140
|
additionalProperties: false
|
|
344
1141
|
},
|
|
345
1142
|
hetzner: {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
enabled: {
|
|
351
|
-
type: 'boolean',
|
|
352
|
-
default: true
|
|
353
|
-
},
|
|
354
|
-
apiKey: {
|
|
355
|
-
type: 'string'
|
|
356
|
-
}
|
|
357
|
-
},
|
|
358
|
-
additionalProperties: false
|
|
1143
|
+
type: 'object',
|
|
1144
|
+
properties: {
|
|
1145
|
+
enabled: {
|
|
1146
|
+
type: 'boolean'
|
|
359
1147
|
},
|
|
360
|
-
{
|
|
361
|
-
type: '
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
type: 'string'
|
|
365
|
-
},
|
|
366
|
-
enabled: {
|
|
367
|
-
type: 'boolean',
|
|
368
|
-
default: true
|
|
369
|
-
}
|
|
370
|
-
},
|
|
371
|
-
additionalProperties: false
|
|
1148
|
+
apiKey: {
|
|
1149
|
+
type: 'string',
|
|
1150
|
+
pattern: '^\\*{64}$',
|
|
1151
|
+
description: 'Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.'
|
|
372
1152
|
}
|
|
373
|
-
|
|
1153
|
+
},
|
|
1154
|
+
required: [
|
|
1155
|
+
'enabled'
|
|
1156
|
+
],
|
|
1157
|
+
additionalProperties: false
|
|
374
1158
|
},
|
|
375
1159
|
aws: {
|
|
376
1160
|
type: 'object',
|
|
377
1161
|
properties: {
|
|
378
1162
|
enabled: {
|
|
379
|
-
type: 'boolean'
|
|
380
|
-
default: true
|
|
1163
|
+
type: 'boolean'
|
|
381
1164
|
},
|
|
382
1165
|
controllerRoleArn: {
|
|
383
1166
|
type: 'string',
|
|
384
|
-
|
|
1167
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1168
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1169
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
385
1170
|
}
|
|
386
1171
|
},
|
|
387
|
-
required: [
|
|
1172
|
+
required: [
|
|
1173
|
+
'enabled'
|
|
1174
|
+
],
|
|
388
1175
|
additionalProperties: false
|
|
389
1176
|
},
|
|
1177
|
+
constraints: {
|
|
1178
|
+
type: 'object',
|
|
1179
|
+
properties: {
|
|
1180
|
+
'karpenter.sh/capacity-type': {
|
|
1181
|
+
type: 'array',
|
|
1182
|
+
items: {
|
|
1183
|
+
type: 'string',
|
|
1184
|
+
enum: [
|
|
1185
|
+
'on-demand',
|
|
1186
|
+
'spot'
|
|
1187
|
+
]
|
|
1188
|
+
},
|
|
1189
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.'
|
|
1190
|
+
},
|
|
1191
|
+
'kubernetes.io/arch': {
|
|
1192
|
+
type: 'array',
|
|
1193
|
+
items: {
|
|
1194
|
+
type: 'string',
|
|
1195
|
+
enum: [
|
|
1196
|
+
'amd64',
|
|
1197
|
+
'arm64'
|
|
1198
|
+
]
|
|
1199
|
+
},
|
|
1200
|
+
description: 'Allowed values for `kubernetes.io/arch`.'
|
|
1201
|
+
},
|
|
1202
|
+
'cfke.io/instance-family': {
|
|
1203
|
+
type: 'array',
|
|
1204
|
+
items: {
|
|
1205
|
+
type: 'string',
|
|
1206
|
+
enum: [
|
|
1207
|
+
'a1',
|
|
1208
|
+
'a2',
|
|
1209
|
+
'a3',
|
|
1210
|
+
'a4',
|
|
1211
|
+
'c1',
|
|
1212
|
+
'c2',
|
|
1213
|
+
'c2d',
|
|
1214
|
+
'c3',
|
|
1215
|
+
'c3d',
|
|
1216
|
+
'c4',
|
|
1217
|
+
'c4a',
|
|
1218
|
+
'c4d',
|
|
1219
|
+
'c5',
|
|
1220
|
+
'c5a',
|
|
1221
|
+
'c5ad',
|
|
1222
|
+
'c5d',
|
|
1223
|
+
'c5n',
|
|
1224
|
+
'c6a',
|
|
1225
|
+
'c6g',
|
|
1226
|
+
'c6gd',
|
|
1227
|
+
'c6gn',
|
|
1228
|
+
'c6i',
|
|
1229
|
+
'c6id',
|
|
1230
|
+
'c6in',
|
|
1231
|
+
'c7a',
|
|
1232
|
+
'c7g',
|
|
1233
|
+
'c7gd',
|
|
1234
|
+
'c7gn',
|
|
1235
|
+
'c7i',
|
|
1236
|
+
'c7i-flex',
|
|
1237
|
+
'c8g',
|
|
1238
|
+
'c8gd',
|
|
1239
|
+
'cax',
|
|
1240
|
+
'ccx',
|
|
1241
|
+
'cpx',
|
|
1242
|
+
'cx',
|
|
1243
|
+
'd2',
|
|
1244
|
+
'd3',
|
|
1245
|
+
'd3en',
|
|
1246
|
+
'dl1',
|
|
1247
|
+
'dl2q',
|
|
1248
|
+
'e2',
|
|
1249
|
+
'f1',
|
|
1250
|
+
'f2',
|
|
1251
|
+
'g1',
|
|
1252
|
+
'g2',
|
|
1253
|
+
'g4ad',
|
|
1254
|
+
'g4dn',
|
|
1255
|
+
'g5',
|
|
1256
|
+
'g5g',
|
|
1257
|
+
'g6',
|
|
1258
|
+
'g6e',
|
|
1259
|
+
'gr6',
|
|
1260
|
+
'h1',
|
|
1261
|
+
'h3',
|
|
1262
|
+
'hpc6a',
|
|
1263
|
+
'hpc6id',
|
|
1264
|
+
'hpc7a',
|
|
1265
|
+
'hpc7g',
|
|
1266
|
+
'i2',
|
|
1267
|
+
'i3',
|
|
1268
|
+
'i3en',
|
|
1269
|
+
'i4g',
|
|
1270
|
+
'i4i',
|
|
1271
|
+
'i7i',
|
|
1272
|
+
'i7ie',
|
|
1273
|
+
'i8g',
|
|
1274
|
+
'im4gn',
|
|
1275
|
+
'inf1',
|
|
1276
|
+
'inf2',
|
|
1277
|
+
'is4gen',
|
|
1278
|
+
'm1',
|
|
1279
|
+
'm2',
|
|
1280
|
+
'm3',
|
|
1281
|
+
'm4',
|
|
1282
|
+
'm5',
|
|
1283
|
+
'm5a',
|
|
1284
|
+
'm5ad',
|
|
1285
|
+
'm5d',
|
|
1286
|
+
'm5dn',
|
|
1287
|
+
'm5n',
|
|
1288
|
+
'm5zn',
|
|
1289
|
+
'm6a',
|
|
1290
|
+
'm6g',
|
|
1291
|
+
'm6gd',
|
|
1292
|
+
'm6i',
|
|
1293
|
+
'm6id',
|
|
1294
|
+
'm6idn',
|
|
1295
|
+
'm6in',
|
|
1296
|
+
'm7a',
|
|
1297
|
+
'm7g',
|
|
1298
|
+
'm7gd',
|
|
1299
|
+
'm7i',
|
|
1300
|
+
'm7i-flex',
|
|
1301
|
+
'm8g',
|
|
1302
|
+
'm8gd',
|
|
1303
|
+
'n1',
|
|
1304
|
+
'n2',
|
|
1305
|
+
'n2d',
|
|
1306
|
+
'n4',
|
|
1307
|
+
'p3',
|
|
1308
|
+
'p3dn',
|
|
1309
|
+
'p4d',
|
|
1310
|
+
'p4de',
|
|
1311
|
+
'p5',
|
|
1312
|
+
'p5e',
|
|
1313
|
+
'p5en',
|
|
1314
|
+
'p6-b200',
|
|
1315
|
+
'r3',
|
|
1316
|
+
'r4',
|
|
1317
|
+
'r5',
|
|
1318
|
+
'r5a',
|
|
1319
|
+
'r5ad',
|
|
1320
|
+
'r5b',
|
|
1321
|
+
'r5d',
|
|
1322
|
+
'r5dn',
|
|
1323
|
+
'r5n',
|
|
1324
|
+
'r6a',
|
|
1325
|
+
'r6g',
|
|
1326
|
+
'r6gd',
|
|
1327
|
+
'r6i',
|
|
1328
|
+
'r6id',
|
|
1329
|
+
'r6idn',
|
|
1330
|
+
'r6in',
|
|
1331
|
+
'r7a',
|
|
1332
|
+
'r7g',
|
|
1333
|
+
'r7gd',
|
|
1334
|
+
'r7i',
|
|
1335
|
+
'r7iz',
|
|
1336
|
+
'r8g',
|
|
1337
|
+
'r8gd',
|
|
1338
|
+
't2',
|
|
1339
|
+
't2a',
|
|
1340
|
+
't2d',
|
|
1341
|
+
't3',
|
|
1342
|
+
't3a',
|
|
1343
|
+
't4g',
|
|
1344
|
+
'trn1',
|
|
1345
|
+
'trn1n',
|
|
1346
|
+
'u-3tb1',
|
|
1347
|
+
'u-6tb1',
|
|
1348
|
+
'u7i-12tb',
|
|
1349
|
+
'u7i-6tb',
|
|
1350
|
+
'u7i-8tb',
|
|
1351
|
+
'u7in-16tb',
|
|
1352
|
+
'u7in-24tb',
|
|
1353
|
+
'u7in-32tb',
|
|
1354
|
+
'vt1',
|
|
1355
|
+
'x1',
|
|
1356
|
+
'x1e',
|
|
1357
|
+
'x2gd',
|
|
1358
|
+
'x2idn',
|
|
1359
|
+
'x2iedn',
|
|
1360
|
+
'x2iezn',
|
|
1361
|
+
'x4',
|
|
1362
|
+
'x8g',
|
|
1363
|
+
'z1d',
|
|
1364
|
+
'z3'
|
|
1365
|
+
]
|
|
1366
|
+
},
|
|
1367
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1368
|
+
},
|
|
1369
|
+
'topology.kubernetes.io/region': {
|
|
1370
|
+
type: 'array',
|
|
1371
|
+
items: {
|
|
1372
|
+
type: 'string',
|
|
1373
|
+
enum: [
|
|
1374
|
+
'africa-south1',
|
|
1375
|
+
'ap-northeast-1',
|
|
1376
|
+
'ap-northeast-2',
|
|
1377
|
+
'ap-northeast-3',
|
|
1378
|
+
'ap-south-1',
|
|
1379
|
+
'ap-southeast-1',
|
|
1380
|
+
'ap-southeast-2',
|
|
1381
|
+
'ash',
|
|
1382
|
+
'asia-east1',
|
|
1383
|
+
'asia-east2',
|
|
1384
|
+
'asia-northeast1',
|
|
1385
|
+
'asia-northeast2',
|
|
1386
|
+
'asia-northeast3',
|
|
1387
|
+
'asia-south1',
|
|
1388
|
+
'asia-south2',
|
|
1389
|
+
'asia-southeast1',
|
|
1390
|
+
'asia-southeast2',
|
|
1391
|
+
'australia-southeast1',
|
|
1392
|
+
'australia-southeast2',
|
|
1393
|
+
'ca-central-1',
|
|
1394
|
+
'eu-central-1',
|
|
1395
|
+
'eu-central-2',
|
|
1396
|
+
'eu-north-1',
|
|
1397
|
+
'eu-west-1',
|
|
1398
|
+
'eu-west-2',
|
|
1399
|
+
'eu-west-3',
|
|
1400
|
+
'europe-central2',
|
|
1401
|
+
'europe-north1',
|
|
1402
|
+
'europe-southwest1',
|
|
1403
|
+
'europe-west1',
|
|
1404
|
+
'europe-west10',
|
|
1405
|
+
'europe-west12',
|
|
1406
|
+
'europe-west2',
|
|
1407
|
+
'europe-west3',
|
|
1408
|
+
'europe-west4',
|
|
1409
|
+
'europe-west6',
|
|
1410
|
+
'europe-west8',
|
|
1411
|
+
'europe-west9',
|
|
1412
|
+
'fsn1',
|
|
1413
|
+
'hel1',
|
|
1414
|
+
'hil',
|
|
1415
|
+
'me-central1',
|
|
1416
|
+
'me-central2',
|
|
1417
|
+
'me-west1',
|
|
1418
|
+
'nbg1',
|
|
1419
|
+
'northamerica-northeast1',
|
|
1420
|
+
'northamerica-northeast2',
|
|
1421
|
+
'sa-east-1',
|
|
1422
|
+
'sin',
|
|
1423
|
+
'southamerica-east1',
|
|
1424
|
+
'southamerica-west1',
|
|
1425
|
+
'us-central1',
|
|
1426
|
+
'us-east-1',
|
|
1427
|
+
'us-east-2',
|
|
1428
|
+
'us-east1',
|
|
1429
|
+
'us-east4',
|
|
1430
|
+
'us-east5',
|
|
1431
|
+
'us-south1',
|
|
1432
|
+
'us-west-1',
|
|
1433
|
+
'us-west-2',
|
|
1434
|
+
'us-west1',
|
|
1435
|
+
'us-west2',
|
|
1436
|
+
'us-west3',
|
|
1437
|
+
'us-west4'
|
|
1438
|
+
]
|
|
1439
|
+
},
|
|
1440
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1441
|
+
}
|
|
1442
|
+
},
|
|
1443
|
+
additionalProperties: false,
|
|
1444
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
1445
|
+
},
|
|
1446
|
+
scalingProfile: {
|
|
1447
|
+
type: 'string',
|
|
1448
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1449
|
+
default: 'conservative',
|
|
1450
|
+
example: 'conservative',
|
|
1451
|
+
enum: [
|
|
1452
|
+
'aggressive',
|
|
1453
|
+
'conservative'
|
|
1454
|
+
]
|
|
1455
|
+
},
|
|
390
1456
|
id: {
|
|
391
1457
|
type: 'string',
|
|
392
1458
|
maxLength: 63,
|
|
@@ -394,14 +1460,12 @@ export const FleetSchema = {
|
|
|
394
1460
|
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
395
1461
|
description: 'Unique identifier of the kubernetes fleet.',
|
|
396
1462
|
example: 'new-clouds-fleet'
|
|
397
|
-
},
|
|
398
|
-
type: {
|
|
399
|
-
type: 'string',
|
|
400
|
-
description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
|
|
401
|
-
enum: ['managed', 'connected']
|
|
402
1463
|
}
|
|
403
1464
|
},
|
|
404
|
-
required: [
|
|
1465
|
+
required: [
|
|
1466
|
+
'scalingProfile',
|
|
1467
|
+
'id'
|
|
1468
|
+
],
|
|
405
1469
|
additionalProperties: false
|
|
406
1470
|
};
|
|
407
1471
|
export const FleetUpdateInputSchema = {
|
|
@@ -411,13 +1475,12 @@ export const FleetUpdateInputSchema = {
|
|
|
411
1475
|
type: 'object',
|
|
412
1476
|
properties: {
|
|
413
1477
|
cpu: {
|
|
414
|
-
type: '
|
|
415
|
-
format: 'float',
|
|
1478
|
+
type: 'integer',
|
|
416
1479
|
minimum: 0,
|
|
417
|
-
|
|
1480
|
+
maximum: 100000,
|
|
1481
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
418
1482
|
}
|
|
419
1483
|
},
|
|
420
|
-
required: ['cpu'],
|
|
421
1484
|
additionalProperties: false,
|
|
422
1485
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
423
1486
|
},
|
|
@@ -425,1177 +1488,1681 @@ export const FleetUpdateInputSchema = {
|
|
|
425
1488
|
type: 'object',
|
|
426
1489
|
properties: {
|
|
427
1490
|
enabled: {
|
|
428
|
-
type: 'boolean'
|
|
429
|
-
default: true
|
|
1491
|
+
type: 'boolean'
|
|
430
1492
|
},
|
|
431
1493
|
project: {
|
|
432
1494
|
type: 'string',
|
|
433
|
-
|
|
1495
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1496
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
1497
|
+
example: 'my-cloudfleet-project'
|
|
434
1498
|
}
|
|
435
1499
|
},
|
|
436
|
-
required: [
|
|
1500
|
+
required: [
|
|
1501
|
+
'enabled'
|
|
1502
|
+
],
|
|
437
1503
|
additionalProperties: false
|
|
438
1504
|
},
|
|
439
1505
|
hetzner: {
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
enabled: {
|
|
445
|
-
type: 'boolean',
|
|
446
|
-
default: true
|
|
447
|
-
},
|
|
448
|
-
apiKey: {
|
|
449
|
-
type: 'string'
|
|
450
|
-
}
|
|
451
|
-
},
|
|
452
|
-
additionalProperties: false
|
|
1506
|
+
type: 'object',
|
|
1507
|
+
properties: {
|
|
1508
|
+
enabled: {
|
|
1509
|
+
type: 'boolean'
|
|
453
1510
|
},
|
|
454
|
-
{
|
|
455
|
-
type: '
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
enabled: {
|
|
461
|
-
type: 'boolean',
|
|
462
|
-
default: true
|
|
463
|
-
}
|
|
464
|
-
},
|
|
465
|
-
additionalProperties: false
|
|
1511
|
+
apiKey: {
|
|
1512
|
+
type: 'string',
|
|
1513
|
+
maxLength: 64,
|
|
1514
|
+
minLength: 64,
|
|
1515
|
+
pattern: '^[A-Za-z0-9]+$',
|
|
1516
|
+
description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
|
|
466
1517
|
}
|
|
467
|
-
|
|
1518
|
+
},
|
|
1519
|
+
required: [
|
|
1520
|
+
'enabled'
|
|
1521
|
+
],
|
|
1522
|
+
additionalProperties: false
|
|
468
1523
|
},
|
|
469
1524
|
aws: {
|
|
470
1525
|
type: 'object',
|
|
471
1526
|
properties: {
|
|
472
1527
|
enabled: {
|
|
473
|
-
type: 'boolean'
|
|
474
|
-
default: true
|
|
1528
|
+
type: 'boolean'
|
|
475
1529
|
},
|
|
476
1530
|
controllerRoleArn: {
|
|
477
1531
|
type: 'string',
|
|
478
|
-
|
|
1532
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1533
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1534
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
479
1535
|
}
|
|
480
1536
|
},
|
|
481
|
-
required: [
|
|
1537
|
+
required: [
|
|
1538
|
+
'enabled'
|
|
1539
|
+
],
|
|
482
1540
|
additionalProperties: false
|
|
1541
|
+
},
|
|
1542
|
+
constraints: {
|
|
1543
|
+
type: 'object',
|
|
1544
|
+
properties: {
|
|
1545
|
+
'karpenter.sh/capacity-type': {
|
|
1546
|
+
type: 'array',
|
|
1547
|
+
items: {
|
|
1548
|
+
type: 'string',
|
|
1549
|
+
enum: [
|
|
1550
|
+
'on-demand',
|
|
1551
|
+
'spot'
|
|
1552
|
+
]
|
|
1553
|
+
},
|
|
1554
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.'
|
|
1555
|
+
},
|
|
1556
|
+
'kubernetes.io/arch': {
|
|
1557
|
+
type: 'array',
|
|
1558
|
+
items: {
|
|
1559
|
+
type: 'string',
|
|
1560
|
+
enum: [
|
|
1561
|
+
'amd64',
|
|
1562
|
+
'arm64'
|
|
1563
|
+
]
|
|
1564
|
+
},
|
|
1565
|
+
description: 'Allowed values for `kubernetes.io/arch`.'
|
|
1566
|
+
},
|
|
1567
|
+
'cfke.io/instance-family': {
|
|
1568
|
+
type: 'array',
|
|
1569
|
+
items: {
|
|
1570
|
+
type: 'string',
|
|
1571
|
+
enum: [
|
|
1572
|
+
'a1',
|
|
1573
|
+
'a2',
|
|
1574
|
+
'a3',
|
|
1575
|
+
'a4',
|
|
1576
|
+
'c1',
|
|
1577
|
+
'c2',
|
|
1578
|
+
'c2d',
|
|
1579
|
+
'c3',
|
|
1580
|
+
'c3d',
|
|
1581
|
+
'c4',
|
|
1582
|
+
'c4a',
|
|
1583
|
+
'c4d',
|
|
1584
|
+
'c5',
|
|
1585
|
+
'c5a',
|
|
1586
|
+
'c5ad',
|
|
1587
|
+
'c5d',
|
|
1588
|
+
'c5n',
|
|
1589
|
+
'c6a',
|
|
1590
|
+
'c6g',
|
|
1591
|
+
'c6gd',
|
|
1592
|
+
'c6gn',
|
|
1593
|
+
'c6i',
|
|
1594
|
+
'c6id',
|
|
1595
|
+
'c6in',
|
|
1596
|
+
'c7a',
|
|
1597
|
+
'c7g',
|
|
1598
|
+
'c7gd',
|
|
1599
|
+
'c7gn',
|
|
1600
|
+
'c7i',
|
|
1601
|
+
'c7i-flex',
|
|
1602
|
+
'c8g',
|
|
1603
|
+
'c8gd',
|
|
1604
|
+
'cax',
|
|
1605
|
+
'ccx',
|
|
1606
|
+
'cpx',
|
|
1607
|
+
'cx',
|
|
1608
|
+
'd2',
|
|
1609
|
+
'd3',
|
|
1610
|
+
'd3en',
|
|
1611
|
+
'dl1',
|
|
1612
|
+
'dl2q',
|
|
1613
|
+
'e2',
|
|
1614
|
+
'f1',
|
|
1615
|
+
'f2',
|
|
1616
|
+
'g1',
|
|
1617
|
+
'g2',
|
|
1618
|
+
'g4ad',
|
|
1619
|
+
'g4dn',
|
|
1620
|
+
'g5',
|
|
1621
|
+
'g5g',
|
|
1622
|
+
'g6',
|
|
1623
|
+
'g6e',
|
|
1624
|
+
'gr6',
|
|
1625
|
+
'h1',
|
|
1626
|
+
'h3',
|
|
1627
|
+
'hpc6a',
|
|
1628
|
+
'hpc6id',
|
|
1629
|
+
'hpc7a',
|
|
1630
|
+
'hpc7g',
|
|
1631
|
+
'i2',
|
|
1632
|
+
'i3',
|
|
1633
|
+
'i3en',
|
|
1634
|
+
'i4g',
|
|
1635
|
+
'i4i',
|
|
1636
|
+
'i7i',
|
|
1637
|
+
'i7ie',
|
|
1638
|
+
'i8g',
|
|
1639
|
+
'im4gn',
|
|
1640
|
+
'inf1',
|
|
1641
|
+
'inf2',
|
|
1642
|
+
'is4gen',
|
|
1643
|
+
'm1',
|
|
1644
|
+
'm2',
|
|
1645
|
+
'm3',
|
|
1646
|
+
'm4',
|
|
1647
|
+
'm5',
|
|
1648
|
+
'm5a',
|
|
1649
|
+
'm5ad',
|
|
1650
|
+
'm5d',
|
|
1651
|
+
'm5dn',
|
|
1652
|
+
'm5n',
|
|
1653
|
+
'm5zn',
|
|
1654
|
+
'm6a',
|
|
1655
|
+
'm6g',
|
|
1656
|
+
'm6gd',
|
|
1657
|
+
'm6i',
|
|
1658
|
+
'm6id',
|
|
1659
|
+
'm6idn',
|
|
1660
|
+
'm6in',
|
|
1661
|
+
'm7a',
|
|
1662
|
+
'm7g',
|
|
1663
|
+
'm7gd',
|
|
1664
|
+
'm7i',
|
|
1665
|
+
'm7i-flex',
|
|
1666
|
+
'm8g',
|
|
1667
|
+
'm8gd',
|
|
1668
|
+
'n1',
|
|
1669
|
+
'n2',
|
|
1670
|
+
'n2d',
|
|
1671
|
+
'n4',
|
|
1672
|
+
'p3',
|
|
1673
|
+
'p3dn',
|
|
1674
|
+
'p4d',
|
|
1675
|
+
'p4de',
|
|
1676
|
+
'p5',
|
|
1677
|
+
'p5e',
|
|
1678
|
+
'p5en',
|
|
1679
|
+
'p6-b200',
|
|
1680
|
+
'r3',
|
|
1681
|
+
'r4',
|
|
1682
|
+
'r5',
|
|
1683
|
+
'r5a',
|
|
1684
|
+
'r5ad',
|
|
1685
|
+
'r5b',
|
|
1686
|
+
'r5d',
|
|
1687
|
+
'r5dn',
|
|
1688
|
+
'r5n',
|
|
1689
|
+
'r6a',
|
|
1690
|
+
'r6g',
|
|
1691
|
+
'r6gd',
|
|
1692
|
+
'r6i',
|
|
1693
|
+
'r6id',
|
|
1694
|
+
'r6idn',
|
|
1695
|
+
'r6in',
|
|
1696
|
+
'r7a',
|
|
1697
|
+
'r7g',
|
|
1698
|
+
'r7gd',
|
|
1699
|
+
'r7i',
|
|
1700
|
+
'r7iz',
|
|
1701
|
+
'r8g',
|
|
1702
|
+
'r8gd',
|
|
1703
|
+
't2',
|
|
1704
|
+
't2a',
|
|
1705
|
+
't2d',
|
|
1706
|
+
't3',
|
|
1707
|
+
't3a',
|
|
1708
|
+
't4g',
|
|
1709
|
+
'trn1',
|
|
1710
|
+
'trn1n',
|
|
1711
|
+
'u-3tb1',
|
|
1712
|
+
'u-6tb1',
|
|
1713
|
+
'u7i-12tb',
|
|
1714
|
+
'u7i-6tb',
|
|
1715
|
+
'u7i-8tb',
|
|
1716
|
+
'u7in-16tb',
|
|
1717
|
+
'u7in-24tb',
|
|
1718
|
+
'u7in-32tb',
|
|
1719
|
+
'vt1',
|
|
1720
|
+
'x1',
|
|
1721
|
+
'x1e',
|
|
1722
|
+
'x2gd',
|
|
1723
|
+
'x2idn',
|
|
1724
|
+
'x2iedn',
|
|
1725
|
+
'x2iezn',
|
|
1726
|
+
'x4',
|
|
1727
|
+
'x8g',
|
|
1728
|
+
'z1d',
|
|
1729
|
+
'z3'
|
|
1730
|
+
]
|
|
1731
|
+
},
|
|
1732
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1733
|
+
},
|
|
1734
|
+
'topology.kubernetes.io/region': {
|
|
1735
|
+
type: 'array',
|
|
1736
|
+
items: {
|
|
1737
|
+
type: 'string',
|
|
1738
|
+
enum: [
|
|
1739
|
+
'africa-south1',
|
|
1740
|
+
'ap-northeast-1',
|
|
1741
|
+
'ap-northeast-2',
|
|
1742
|
+
'ap-northeast-3',
|
|
1743
|
+
'ap-south-1',
|
|
1744
|
+
'ap-southeast-1',
|
|
1745
|
+
'ap-southeast-2',
|
|
1746
|
+
'ash',
|
|
1747
|
+
'asia-east1',
|
|
1748
|
+
'asia-east2',
|
|
1749
|
+
'asia-northeast1',
|
|
1750
|
+
'asia-northeast2',
|
|
1751
|
+
'asia-northeast3',
|
|
1752
|
+
'asia-south1',
|
|
1753
|
+
'asia-south2',
|
|
1754
|
+
'asia-southeast1',
|
|
1755
|
+
'asia-southeast2',
|
|
1756
|
+
'australia-southeast1',
|
|
1757
|
+
'australia-southeast2',
|
|
1758
|
+
'ca-central-1',
|
|
1759
|
+
'eu-central-1',
|
|
1760
|
+
'eu-central-2',
|
|
1761
|
+
'eu-north-1',
|
|
1762
|
+
'eu-west-1',
|
|
1763
|
+
'eu-west-2',
|
|
1764
|
+
'eu-west-3',
|
|
1765
|
+
'europe-central2',
|
|
1766
|
+
'europe-north1',
|
|
1767
|
+
'europe-southwest1',
|
|
1768
|
+
'europe-west1',
|
|
1769
|
+
'europe-west10',
|
|
1770
|
+
'europe-west12',
|
|
1771
|
+
'europe-west2',
|
|
1772
|
+
'europe-west3',
|
|
1773
|
+
'europe-west4',
|
|
1774
|
+
'europe-west6',
|
|
1775
|
+
'europe-west8',
|
|
1776
|
+
'europe-west9',
|
|
1777
|
+
'fsn1',
|
|
1778
|
+
'hel1',
|
|
1779
|
+
'hil',
|
|
1780
|
+
'me-central1',
|
|
1781
|
+
'me-central2',
|
|
1782
|
+
'me-west1',
|
|
1783
|
+
'nbg1',
|
|
1784
|
+
'northamerica-northeast1',
|
|
1785
|
+
'northamerica-northeast2',
|
|
1786
|
+
'sa-east-1',
|
|
1787
|
+
'sin',
|
|
1788
|
+
'southamerica-east1',
|
|
1789
|
+
'southamerica-west1',
|
|
1790
|
+
'us-central1',
|
|
1791
|
+
'us-east-1',
|
|
1792
|
+
'us-east-2',
|
|
1793
|
+
'us-east1',
|
|
1794
|
+
'us-east4',
|
|
1795
|
+
'us-east5',
|
|
1796
|
+
'us-south1',
|
|
1797
|
+
'us-west-1',
|
|
1798
|
+
'us-west-2',
|
|
1799
|
+
'us-west1',
|
|
1800
|
+
'us-west2',
|
|
1801
|
+
'us-west3',
|
|
1802
|
+
'us-west4'
|
|
1803
|
+
]
|
|
1804
|
+
},
|
|
1805
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1806
|
+
}
|
|
1807
|
+
},
|
|
1808
|
+
additionalProperties: false,
|
|
1809
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
1810
|
+
},
|
|
1811
|
+
scalingProfile: {
|
|
1812
|
+
type: 'string',
|
|
1813
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1814
|
+
example: 'conservative',
|
|
1815
|
+
enum: [
|
|
1816
|
+
'aggressive',
|
|
1817
|
+
'conservative'
|
|
1818
|
+
]
|
|
483
1819
|
}
|
|
484
1820
|
},
|
|
1821
|
+
required: [
|
|
1822
|
+
'scalingProfile'
|
|
1823
|
+
],
|
|
485
1824
|
additionalProperties: false
|
|
486
1825
|
};
|
|
487
|
-
export const
|
|
1826
|
+
export const InviteSchema = {
|
|
488
1827
|
type: 'object',
|
|
489
1828
|
properties: {
|
|
490
|
-
|
|
491
|
-
type: '
|
|
492
|
-
description: '
|
|
493
|
-
|
|
494
|
-
example: 1,
|
|
495
|
-
enum: [1]
|
|
496
|
-
},
|
|
497
|
-
provider: {
|
|
498
|
-
type: 'array',
|
|
499
|
-
items: {
|
|
500
|
-
type: 'string'
|
|
501
|
-
},
|
|
502
|
-
description: 'Limit selection of cloud providers to this list. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
|
|
503
|
-
example: 'AWS'
|
|
504
|
-
},
|
|
505
|
-
region: {
|
|
506
|
-
type: 'array',
|
|
507
|
-
items: {
|
|
508
|
-
type: 'string'
|
|
509
|
-
},
|
|
510
|
-
description: 'Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
|
|
511
|
-
example: 'northamerica'
|
|
512
|
-
},
|
|
513
|
-
sub_region: {
|
|
514
|
-
type: 'array',
|
|
515
|
-
items: {
|
|
516
|
-
type: 'string'
|
|
517
|
-
},
|
|
518
|
-
description: 'Limits selection of cloud regions to this list of Cloudfleet regions. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
|
|
519
|
-
example: 'west'
|
|
520
|
-
},
|
|
521
|
-
csp_region: {
|
|
522
|
-
type: 'array',
|
|
523
|
-
items: {
|
|
524
|
-
type: 'string'
|
|
525
|
-
},
|
|
526
|
-
description: 'Limits selection of cloud regions to this list of canonical provider regions',
|
|
527
|
-
example: 'eu-west-1'
|
|
528
|
-
},
|
|
529
|
-
instance_type: {
|
|
530
|
-
type: 'array',
|
|
531
|
-
items: {
|
|
532
|
-
type: 'string'
|
|
533
|
-
},
|
|
534
|
-
description: 'Limits selection of instance types to this list. Instance / VM type as defined by the cloud service provider',
|
|
535
|
-
example: 'p4d.24xlarge'
|
|
536
|
-
},
|
|
537
|
-
accelerator_name: {
|
|
538
|
-
type: 'array',
|
|
539
|
-
items: {
|
|
540
|
-
type: 'string'
|
|
541
|
-
},
|
|
542
|
-
description: "List of Normalized accelerator model names. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field",
|
|
543
|
-
example: 'A100'
|
|
544
|
-
},
|
|
545
|
-
accelerator_manufacturer: {
|
|
546
|
-
type: 'array',
|
|
547
|
-
items: {
|
|
548
|
-
type: 'string'
|
|
549
|
-
},
|
|
550
|
-
description: "List of normalized accelerator manufacturer names. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
|
|
551
|
-
example: 'NVIDIA'
|
|
552
|
-
},
|
|
553
|
-
accelerator_count_min: {
|
|
554
|
-
type: 'integer',
|
|
555
|
-
minimum: 0,
|
|
556
|
-
description: 'Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
557
|
-
example: 1
|
|
558
|
-
},
|
|
559
|
-
accelerator_count_max: {
|
|
560
|
-
type: 'integer',
|
|
561
|
-
minimum: 0,
|
|
562
|
-
description: 'Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
563
|
-
example: 8
|
|
1829
|
+
id: {
|
|
1830
|
+
type: 'string',
|
|
1831
|
+
description: 'Unique identifier of the invitation.',
|
|
1832
|
+
example: '65831dd20d20165489cbb868'
|
|
564
1833
|
},
|
|
565
|
-
|
|
566
|
-
type: '
|
|
567
|
-
format: '
|
|
568
|
-
description:
|
|
569
|
-
example:
|
|
1834
|
+
organization_id: {
|
|
1835
|
+
type: 'string',
|
|
1836
|
+
format: 'uuid',
|
|
1837
|
+
description: 'Unique identifier of the organization the project belongs to. UUID v4 string in canonical form',
|
|
1838
|
+
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
570
1839
|
},
|
|
571
|
-
|
|
572
|
-
type: '
|
|
573
|
-
format: '
|
|
574
|
-
description:
|
|
575
|
-
example:
|
|
1840
|
+
date_created: {
|
|
1841
|
+
type: 'string',
|
|
1842
|
+
format: 'date-time',
|
|
1843
|
+
description: 'Creation date of the project. ISO 8601 date string in UTC timezone',
|
|
1844
|
+
example: '2023-11-02T16:08:14.338Z'
|
|
576
1845
|
},
|
|
577
|
-
|
|
578
|
-
type: '
|
|
579
|
-
|
|
580
|
-
description: '
|
|
581
|
-
example:
|
|
1846
|
+
email: {
|
|
1847
|
+
type: 'string',
|
|
1848
|
+
format: 'email',
|
|
1849
|
+
description: 'User email address.',
|
|
1850
|
+
example: 'email@example.com'
|
|
582
1851
|
},
|
|
583
|
-
|
|
584
|
-
type: '
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
1852
|
+
code: {
|
|
1853
|
+
type: 'string',
|
|
1854
|
+
description: 'Generated unique invite code.',
|
|
1855
|
+
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
1856
|
+
}
|
|
1857
|
+
},
|
|
1858
|
+
required: [
|
|
1859
|
+
'date_created'
|
|
1860
|
+
],
|
|
1861
|
+
additionalProperties: false
|
|
1862
|
+
};
|
|
1863
|
+
export const InvoiceSchema = {
|
|
1864
|
+
type: 'object',
|
|
1865
|
+
properties: {
|
|
1866
|
+
id: {
|
|
1867
|
+
type: 'string',
|
|
1868
|
+
description: 'Unique identifier of the invoice.',
|
|
1869
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
588
1870
|
},
|
|
589
|
-
|
|
590
|
-
type: '
|
|
591
|
-
minimum: 1,
|
|
592
|
-
description: 'Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
|
|
593
|
-
example: 32
|
|
1871
|
+
number: {
|
|
1872
|
+
type: 'string'
|
|
594
1873
|
},
|
|
595
|
-
|
|
596
|
-
type: '
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
example: 128
|
|
1874
|
+
status: {
|
|
1875
|
+
type: 'string',
|
|
1876
|
+
description: 'Status of the invoice',
|
|
1877
|
+
example: 'paid'
|
|
600
1878
|
},
|
|
601
|
-
|
|
1879
|
+
total: {
|
|
602
1880
|
type: 'number',
|
|
603
1881
|
format: 'float',
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
example: 128
|
|
1882
|
+
description: 'Total amount of the invoice',
|
|
1883
|
+
example: 100
|
|
607
1884
|
},
|
|
608
|
-
|
|
609
|
-
type: '
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
description: 'Maximum total storage in GiB (attached and local)',
|
|
613
|
-
example: 256
|
|
1885
|
+
currency: {
|
|
1886
|
+
type: 'string',
|
|
1887
|
+
description: 'Currency of the invoice',
|
|
1888
|
+
example: 'usd'
|
|
614
1889
|
},
|
|
615
|
-
|
|
616
|
-
type: '
|
|
617
|
-
format: '
|
|
618
|
-
description: '
|
|
619
|
-
example:
|
|
1890
|
+
created: {
|
|
1891
|
+
type: 'string',
|
|
1892
|
+
format: 'date-time',
|
|
1893
|
+
description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
|
|
1894
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
620
1895
|
},
|
|
621
|
-
|
|
622
|
-
type: '
|
|
623
|
-
format: '
|
|
624
|
-
description: '
|
|
625
|
-
example:
|
|
1896
|
+
period_start: {
|
|
1897
|
+
type: 'string',
|
|
1898
|
+
format: 'date-time',
|
|
1899
|
+
description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
|
|
1900
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
626
1901
|
},
|
|
627
|
-
|
|
628
|
-
type: '
|
|
629
|
-
format: '
|
|
630
|
-
description: '
|
|
631
|
-
example:
|
|
1902
|
+
period_end: {
|
|
1903
|
+
type: 'string',
|
|
1904
|
+
format: 'date-time',
|
|
1905
|
+
description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
|
|
1906
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
632
1907
|
},
|
|
633
|
-
|
|
634
|
-
type: '
|
|
635
|
-
format: 'float',
|
|
636
|
-
description: 'Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
|
|
637
|
-
example: 50
|
|
1908
|
+
invoice_pdf: {
|
|
1909
|
+
type: 'string'
|
|
638
1910
|
}
|
|
639
1911
|
},
|
|
1912
|
+
required: [
|
|
1913
|
+
'created',
|
|
1914
|
+
'period_start',
|
|
1915
|
+
'period_end'
|
|
1916
|
+
],
|
|
640
1917
|
additionalProperties: false
|
|
641
1918
|
};
|
|
642
|
-
export const
|
|
1919
|
+
export const MarketplaceListingFilesSchema = {
|
|
643
1920
|
type: 'object',
|
|
644
1921
|
properties: {
|
|
645
|
-
|
|
646
|
-
type: 'string',
|
|
647
|
-
description: 'Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.',
|
|
648
|
-
example: 'AWS-EU-WEST-1C-P4D.24XLARGE'
|
|
649
|
-
},
|
|
650
|
-
provider: {
|
|
1922
|
+
chartYaml: {
|
|
651
1923
|
type: 'string',
|
|
652
|
-
description: '
|
|
653
|
-
example: '
|
|
1924
|
+
description: 'Raw Chart.yaml content from the Helm chart',
|
|
1925
|
+
example: 'apiVersion: v2\nname: nginx-ingress\nversion: 1.18.2-cfke.45\nappVersion: 1.9.4'
|
|
654
1926
|
},
|
|
655
|
-
|
|
656
|
-
type: 'string',
|
|
657
|
-
description: 'Normalized region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
|
|
658
|
-
example: 'europe'
|
|
659
|
-
},
|
|
660
|
-
sub_region: {
|
|
1927
|
+
valuesYaml: {
|
|
661
1928
|
type: 'string',
|
|
662
|
-
description: '
|
|
663
|
-
example: '
|
|
1929
|
+
description: 'Raw values.yaml content from the Helm chart',
|
|
1930
|
+
example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
|
|
664
1931
|
},
|
|
665
|
-
|
|
1932
|
+
valuesSchemaJson: {
|
|
666
1933
|
type: 'string',
|
|
667
|
-
description: '
|
|
668
|
-
example: '
|
|
669
|
-
}
|
|
670
|
-
|
|
1934
|
+
description: 'JSON schema for values.yaml as a string',
|
|
1935
|
+
example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
|
|
1936
|
+
}
|
|
1937
|
+
},
|
|
1938
|
+
additionalProperties: false
|
|
1939
|
+
};
|
|
1940
|
+
export const MarketplaceListingSchema = {
|
|
1941
|
+
type: 'object',
|
|
1942
|
+
properties: {
|
|
1943
|
+
name: {
|
|
671
1944
|
type: 'string',
|
|
672
|
-
description: '
|
|
673
|
-
example: '
|
|
1945
|
+
description: 'Name of the chart',
|
|
1946
|
+
example: 'nginx-ingress'
|
|
674
1947
|
},
|
|
675
|
-
|
|
676
|
-
type: '
|
|
677
|
-
|
|
678
|
-
|
|
1948
|
+
versions: {
|
|
1949
|
+
type: 'array',
|
|
1950
|
+
items: {
|
|
1951
|
+
type: 'string',
|
|
1952
|
+
pattern: '^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
1953
|
+
description: 'Specific version of the chart',
|
|
1954
|
+
example: '1.18.2-cfke.45'
|
|
1955
|
+
},
|
|
1956
|
+
description: 'Available versions of the chart'
|
|
679
1957
|
},
|
|
680
|
-
|
|
681
|
-
type: '
|
|
682
|
-
|
|
683
|
-
|
|
1958
|
+
version_channels: {
|
|
1959
|
+
type: 'array',
|
|
1960
|
+
items: {
|
|
1961
|
+
type: 'string',
|
|
1962
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
1963
|
+
description: 'Version channel pattern',
|
|
1964
|
+
example: '1.18.x-cfke.x'
|
|
1965
|
+
},
|
|
1966
|
+
description: 'Version channels for the chart'
|
|
684
1967
|
},
|
|
685
|
-
|
|
1968
|
+
latestVersion: {
|
|
686
1969
|
type: 'string',
|
|
687
|
-
description: '
|
|
688
|
-
example: '
|
|
689
|
-
},
|
|
690
|
-
vcpu: {
|
|
691
|
-
type: 'number',
|
|
692
|
-
format: 'float',
|
|
693
|
-
minimum: 1,
|
|
694
|
-
description: 'CPU count as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
|
|
695
|
-
example: 96
|
|
696
|
-
},
|
|
697
|
-
memory: {
|
|
698
|
-
type: 'number',
|
|
699
|
-
format: 'float',
|
|
700
|
-
minimum: 1,
|
|
701
|
-
description: 'Total amount of RAM in gibibytes (GiB)',
|
|
702
|
-
example: 1152
|
|
703
|
-
},
|
|
704
|
-
local_storage: {
|
|
705
|
-
type: 'number',
|
|
706
|
-
format: 'float',
|
|
707
|
-
description: 'Volume of directly attached, block-device local storage in gibibytes (GiB)',
|
|
708
|
-
example: 8000
|
|
1970
|
+
description: 'Latest version of the chart',
|
|
1971
|
+
example: '1.18.2-cfke.45'
|
|
709
1972
|
},
|
|
710
|
-
|
|
1973
|
+
metadata: {
|
|
1974
|
+
type: 'object',
|
|
1975
|
+
properties: {
|
|
1976
|
+
name: {
|
|
1977
|
+
type: 'string',
|
|
1978
|
+
description: 'Chart name from metadata',
|
|
1979
|
+
example: 'nginx-ingress'
|
|
1980
|
+
},
|
|
1981
|
+
version: {
|
|
1982
|
+
type: 'string',
|
|
1983
|
+
description: 'Chart version from metadata',
|
|
1984
|
+
example: '1.18.2-cfke.45'
|
|
1985
|
+
},
|
|
1986
|
+
description: {
|
|
1987
|
+
type: 'string',
|
|
1988
|
+
description: 'Chart description',
|
|
1989
|
+
example: 'NGINX Ingress Controller for Kubernetes'
|
|
1990
|
+
},
|
|
1991
|
+
appVersion: {
|
|
1992
|
+
type: 'string',
|
|
1993
|
+
description: 'Application version',
|
|
1994
|
+
example: '1.9.4'
|
|
1995
|
+
},
|
|
1996
|
+
apiVersion: {
|
|
1997
|
+
type: 'string',
|
|
1998
|
+
description: 'Helm API version',
|
|
1999
|
+
example: 'v2'
|
|
2000
|
+
},
|
|
2001
|
+
keywords: {
|
|
2002
|
+
type: 'array',
|
|
2003
|
+
items: {
|
|
2004
|
+
type: 'string'
|
|
2005
|
+
},
|
|
2006
|
+
description: 'Chart keywords',
|
|
2007
|
+
example: [
|
|
2008
|
+
'ingress',
|
|
2009
|
+
'nginx',
|
|
2010
|
+
'load-balancer'
|
|
2011
|
+
]
|
|
2012
|
+
},
|
|
2013
|
+
home: {
|
|
2014
|
+
type: 'string',
|
|
2015
|
+
description: 'Chart home URL',
|
|
2016
|
+
example: 'https://kubernetes.github.io/ingress-nginx/'
|
|
2017
|
+
},
|
|
2018
|
+
icon: {
|
|
2019
|
+
type: 'string',
|
|
2020
|
+
description: 'A URL to an SVG or PNG image to be used as an icon',
|
|
2021
|
+
example: 'https://cloudfleet.ai/images/marketplace/icons/ingress-nginx.png'
|
|
2022
|
+
},
|
|
2023
|
+
sources: {
|
|
2024
|
+
type: 'array',
|
|
2025
|
+
items: {
|
|
2026
|
+
type: 'string'
|
|
2027
|
+
},
|
|
2028
|
+
description: 'Chart source URLs',
|
|
2029
|
+
example: [
|
|
2030
|
+
'https://github.com/kubernetes/ingress-nginx'
|
|
2031
|
+
]
|
|
2032
|
+
},
|
|
2033
|
+
maintainers: {
|
|
2034
|
+
type: 'array',
|
|
2035
|
+
items: {
|
|
2036
|
+
type: 'object',
|
|
2037
|
+
properties: {
|
|
2038
|
+
name: {
|
|
2039
|
+
type: 'string',
|
|
2040
|
+
description: 'Maintainer name',
|
|
2041
|
+
example: 'NGINX Team'
|
|
2042
|
+
},
|
|
2043
|
+
email: {
|
|
2044
|
+
type: 'string',
|
|
2045
|
+
description: 'Maintainer email',
|
|
2046
|
+
example: 'support@nginx.org'
|
|
2047
|
+
}
|
|
2048
|
+
},
|
|
2049
|
+
required: [
|
|
2050
|
+
'name'
|
|
2051
|
+
],
|
|
2052
|
+
additionalProperties: false
|
|
2053
|
+
},
|
|
2054
|
+
description: 'Chart maintainers'
|
|
2055
|
+
}
|
|
2056
|
+
},
|
|
2057
|
+
required: [
|
|
2058
|
+
'name',
|
|
2059
|
+
'version'
|
|
2060
|
+
],
|
|
2061
|
+
additionalProperties: false,
|
|
2062
|
+
description: 'Chart metadata'
|
|
2063
|
+
}
|
|
2064
|
+
},
|
|
2065
|
+
required: [
|
|
2066
|
+
'name',
|
|
2067
|
+
'versions',
|
|
2068
|
+
'version_channels',
|
|
2069
|
+
'latestVersion'
|
|
2070
|
+
],
|
|
2071
|
+
additionalProperties: false
|
|
2072
|
+
};
|
|
2073
|
+
export const OrganizationCreateInputSchema = {
|
|
2074
|
+
type: 'object',
|
|
2075
|
+
properties: {
|
|
2076
|
+
email: {
|
|
711
2077
|
type: 'string',
|
|
712
|
-
|
|
713
|
-
|
|
2078
|
+
format: 'email',
|
|
2079
|
+
description: 'Email address used for billing as a string.',
|
|
2080
|
+
example: 'email@example.com'
|
|
714
2081
|
},
|
|
715
|
-
|
|
2082
|
+
first_name: {
|
|
716
2083
|
type: 'string',
|
|
717
|
-
description:
|
|
718
|
-
example: '
|
|
719
|
-
},
|
|
720
|
-
accelerator_count: {
|
|
721
|
-
type: 'integer',
|
|
722
|
-
description: 'Number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
723
|
-
example: 8
|
|
724
|
-
},
|
|
725
|
-
accelerator_memory: {
|
|
726
|
-
type: 'number',
|
|
727
|
-
format: 'float',
|
|
728
|
-
description: "Ammount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
|
|
729
|
-
example: 40
|
|
730
|
-
},
|
|
731
|
-
pods_capacity: {
|
|
732
|
-
type: 'number',
|
|
733
|
-
format: 'float',
|
|
734
|
-
description: 'Maximum number of pods that can be run on this instance type.',
|
|
735
|
-
example: 110
|
|
2084
|
+
description: 'First name of the billing contact person.',
|
|
2085
|
+
example: 'John'
|
|
736
2086
|
},
|
|
737
|
-
|
|
2087
|
+
last_name: {
|
|
738
2088
|
type: 'string',
|
|
739
|
-
description: '
|
|
740
|
-
example: '
|
|
2089
|
+
description: 'Last name of the billing contact person.',
|
|
2090
|
+
example: 'Doe'
|
|
741
2091
|
},
|
|
742
|
-
|
|
743
|
-
type: '
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
2092
|
+
company_name: {
|
|
2093
|
+
type: 'string',
|
|
2094
|
+
maxLength: 120,
|
|
2095
|
+
minLength: 2,
|
|
2096
|
+
pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
|
|
2097
|
+
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
2098
|
+
example: 'ACME Corp.'
|
|
747
2099
|
},
|
|
748
|
-
|
|
749
|
-
type: '
|
|
750
|
-
|
|
751
|
-
|
|
2100
|
+
password: {
|
|
2101
|
+
type: 'string',
|
|
2102
|
+
minLength: 8,
|
|
2103
|
+
description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
|
|
752
2104
|
}
|
|
753
2105
|
},
|
|
754
|
-
required: [
|
|
2106
|
+
required: [
|
|
2107
|
+
'email',
|
|
2108
|
+
'first_name',
|
|
2109
|
+
'last_name',
|
|
2110
|
+
'company_name',
|
|
2111
|
+
'password'
|
|
2112
|
+
],
|
|
755
2113
|
additionalProperties: false
|
|
756
2114
|
};
|
|
757
|
-
export const
|
|
2115
|
+
export const OrganizationSchema = {
|
|
758
2116
|
type: 'object',
|
|
759
2117
|
properties: {
|
|
760
2118
|
id: {
|
|
761
|
-
type: 'string',
|
|
762
|
-
description: 'Unique identifier of the invitation.',
|
|
763
|
-
example: '65831dd20d20165489cbb868'
|
|
764
|
-
},
|
|
765
|
-
organization_id: {
|
|
766
2119
|
type: 'string',
|
|
767
2120
|
format: 'uuid',
|
|
768
|
-
description: 'Unique identifier of the organization
|
|
2121
|
+
description: 'Unique identifier of the organization. UUID v4 string in canonical form',
|
|
769
2122
|
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
770
2123
|
},
|
|
2124
|
+
name: {
|
|
2125
|
+
type: 'string',
|
|
2126
|
+
maxLength: 120,
|
|
2127
|
+
minLength: 2,
|
|
2128
|
+
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
2129
|
+
example: 'ACME Corp.'
|
|
2130
|
+
},
|
|
771
2131
|
date_created: {
|
|
772
2132
|
type: 'string',
|
|
773
2133
|
format: 'date-time',
|
|
774
|
-
description: 'Creation date of the
|
|
2134
|
+
description: 'Creation date of the organization. ISO 8601 date string in UTC timezone',
|
|
775
2135
|
example: '2023-11-02T16:08:14.338Z'
|
|
776
2136
|
},
|
|
777
|
-
|
|
778
|
-
type: '
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
2137
|
+
quota: {
|
|
2138
|
+
type: 'object',
|
|
2139
|
+
properties: {
|
|
2140
|
+
basic_clusters_max: {
|
|
2141
|
+
type: 'integer',
|
|
2142
|
+
minimum: 0,
|
|
2143
|
+
description: 'Maximum number of Basic clusters that can be created.',
|
|
2144
|
+
example: 999
|
|
2145
|
+
},
|
|
2146
|
+
basic_clusters_available: {
|
|
2147
|
+
type: 'integer',
|
|
2148
|
+
description: 'Available number of Basic clusters that can be created.',
|
|
2149
|
+
example: 999
|
|
2150
|
+
},
|
|
2151
|
+
pro_clusters_max: {
|
|
2152
|
+
type: 'integer',
|
|
2153
|
+
minimum: 0,
|
|
2154
|
+
description: 'Maximum number of Pro clusters that can be created.',
|
|
2155
|
+
example: 999
|
|
2156
|
+
},
|
|
2157
|
+
pro_clusters_available: {
|
|
2158
|
+
type: 'integer',
|
|
2159
|
+
description: 'Available number of Pro clusters that can be created.',
|
|
2160
|
+
example: 999
|
|
2161
|
+
},
|
|
2162
|
+
fleets_max: {
|
|
2163
|
+
type: 'integer',
|
|
2164
|
+
minimum: 0,
|
|
2165
|
+
description: 'Maximum number of fleets that can be created per cluster.',
|
|
2166
|
+
example: 999
|
|
2167
|
+
},
|
|
2168
|
+
cluster_tiers: {
|
|
2169
|
+
type: 'array',
|
|
2170
|
+
items: {
|
|
2171
|
+
type: 'string',
|
|
2172
|
+
example: 'basic'
|
|
2173
|
+
},
|
|
2174
|
+
minItems: 0,
|
|
2175
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
2176
|
+
},
|
|
2177
|
+
regions: {
|
|
2178
|
+
type: 'array',
|
|
2179
|
+
items: {
|
|
2180
|
+
type: 'string',
|
|
2181
|
+
example: 'northamerica-central-1'
|
|
2182
|
+
},
|
|
2183
|
+
minItems: 1,
|
|
2184
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2185
|
+
},
|
|
2186
|
+
versions: {
|
|
2187
|
+
type: 'array',
|
|
2188
|
+
items: {
|
|
2189
|
+
type: 'object',
|
|
2190
|
+
properties: {
|
|
2191
|
+
id: {
|
|
2192
|
+
type: 'string',
|
|
2193
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2194
|
+
example: '1.33.x-cfke.x'
|
|
2195
|
+
},
|
|
2196
|
+
label: {
|
|
2197
|
+
type: 'string',
|
|
2198
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2199
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2200
|
+
}
|
|
2201
|
+
},
|
|
2202
|
+
required: [
|
|
2203
|
+
'id',
|
|
2204
|
+
'label'
|
|
2205
|
+
],
|
|
2206
|
+
additionalProperties: false
|
|
2207
|
+
},
|
|
2208
|
+
minItems: 1,
|
|
2209
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
2210
|
+
},
|
|
2211
|
+
cfcr_storage_gb: {
|
|
2212
|
+
type: 'integer',
|
|
2213
|
+
minimum: -1,
|
|
2214
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2215
|
+
example: 500
|
|
2216
|
+
}
|
|
2217
|
+
},
|
|
2218
|
+
required: [
|
|
2219
|
+
'basic_clusters_max',
|
|
2220
|
+
'basic_clusters_available',
|
|
2221
|
+
'pro_clusters_max',
|
|
2222
|
+
'pro_clusters_available',
|
|
2223
|
+
'fleets_max',
|
|
2224
|
+
'cluster_tiers',
|
|
2225
|
+
'regions',
|
|
2226
|
+
'versions',
|
|
2227
|
+
'cfcr_storage_gb'
|
|
2228
|
+
],
|
|
2229
|
+
additionalProperties: false,
|
|
2230
|
+
description: '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.'
|
|
782
2231
|
},
|
|
783
|
-
|
|
2232
|
+
status: {
|
|
784
2233
|
type: 'string',
|
|
785
|
-
description: '
|
|
786
|
-
|
|
2234
|
+
description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
|
|
2235
|
+
enum: [
|
|
2236
|
+
'active',
|
|
2237
|
+
'closed',
|
|
2238
|
+
'suspended'
|
|
2239
|
+
]
|
|
787
2240
|
}
|
|
788
2241
|
},
|
|
789
|
-
required: [
|
|
2242
|
+
required: [
|
|
2243
|
+
'id',
|
|
2244
|
+
'date_created',
|
|
2245
|
+
'quota',
|
|
2246
|
+
'status'
|
|
2247
|
+
],
|
|
790
2248
|
additionalProperties: false
|
|
791
2249
|
};
|
|
792
|
-
export const
|
|
2250
|
+
export const PaymentMethodSchema = {
|
|
793
2251
|
type: 'object',
|
|
794
2252
|
properties: {
|
|
795
2253
|
id: {
|
|
796
2254
|
type: 'string',
|
|
797
2255
|
format: 'uuid',
|
|
798
|
-
description: 'Unique identifier of the
|
|
799
|
-
example: '
|
|
2256
|
+
description: 'Unique identifier of the organization. UUID v4 string in canonical form.',
|
|
2257
|
+
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
800
2258
|
},
|
|
801
|
-
|
|
802
|
-
type: '
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
2259
|
+
setup: {
|
|
2260
|
+
type: 'boolean',
|
|
2261
|
+
description: 'Whether organization payment method was set up and ready to use for payments.',
|
|
2262
|
+
example: true
|
|
806
2263
|
},
|
|
807
|
-
|
|
2264
|
+
type: {
|
|
808
2265
|
type: 'string',
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
format: 'float',
|
|
816
|
-
description: 'Total amount of the invoice',
|
|
817
|
-
example: 100
|
|
2266
|
+
nullable: true,
|
|
2267
|
+
description: 'Payment method type type. Only `card` payments supported at the moment.',
|
|
2268
|
+
example: 'card',
|
|
2269
|
+
enum: [
|
|
2270
|
+
'card'
|
|
2271
|
+
]
|
|
818
2272
|
},
|
|
819
|
-
|
|
2273
|
+
last4: {
|
|
820
2274
|
type: 'string',
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
2275
|
+
nullable: true,
|
|
2276
|
+
description: 'Last 4 digits of the payment card number.',
|
|
2277
|
+
example: '4242'
|
|
824
2278
|
},
|
|
825
|
-
|
|
826
|
-
type: '
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
2279
|
+
exp_month: {
|
|
2280
|
+
type: 'integer',
|
|
2281
|
+
minimum: 1,
|
|
2282
|
+
maximum: 12,
|
|
2283
|
+
nullable: true,
|
|
2284
|
+
description: 'Two-digit number representing the card\'s expiration month.',
|
|
2285
|
+
example: '12'
|
|
830
2286
|
},
|
|
831
|
-
|
|
832
|
-
type: '
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
2287
|
+
exp_year: {
|
|
2288
|
+
type: 'integer',
|
|
2289
|
+
minimum: 2024,
|
|
2290
|
+
nullable: true,
|
|
2291
|
+
description: 'Four-digit number representing the card\'s expiration year.',
|
|
2292
|
+
example: '2028'
|
|
836
2293
|
},
|
|
837
|
-
|
|
2294
|
+
brand: {
|
|
838
2295
|
type: 'string',
|
|
839
|
-
|
|
840
|
-
|
|
2296
|
+
nullable: true,
|
|
2297
|
+
description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
|
|
2298
|
+
example: 'visa',
|
|
2299
|
+
enum: [
|
|
2300
|
+
'amex',
|
|
2301
|
+
'diners',
|
|
2302
|
+
'discover',
|
|
2303
|
+
'eftpos_au',
|
|
2304
|
+
'jcb',
|
|
2305
|
+
'mastercard',
|
|
2306
|
+
'unionpay',
|
|
2307
|
+
'visa',
|
|
2308
|
+
'unknown'
|
|
2309
|
+
]
|
|
2310
|
+
}
|
|
2311
|
+
},
|
|
2312
|
+
required: [
|
|
2313
|
+
'id',
|
|
2314
|
+
'setup',
|
|
2315
|
+
'type',
|
|
2316
|
+
'last4',
|
|
2317
|
+
'exp_month',
|
|
2318
|
+
'exp_year',
|
|
2319
|
+
'brand'
|
|
2320
|
+
],
|
|
2321
|
+
additionalProperties: false
|
|
2322
|
+
};
|
|
2323
|
+
export const PlatformQuotaSchema = {
|
|
2324
|
+
type: 'object',
|
|
2325
|
+
properties: {
|
|
2326
|
+
basic_clusters_max: {
|
|
2327
|
+
type: 'integer',
|
|
2328
|
+
minimum: 0,
|
|
2329
|
+
description: 'Maximum number of Basic clusters that can be created.',
|
|
2330
|
+
example: 999
|
|
841
2331
|
},
|
|
842
|
-
|
|
843
|
-
type: '
|
|
844
|
-
description: '
|
|
845
|
-
example:
|
|
2332
|
+
basic_clusters_available: {
|
|
2333
|
+
type: 'integer',
|
|
2334
|
+
description: 'Available number of Basic clusters that can be created.',
|
|
2335
|
+
example: 999
|
|
846
2336
|
},
|
|
847
|
-
|
|
848
|
-
type: '
|
|
849
|
-
|
|
850
|
-
|
|
2337
|
+
pro_clusters_max: {
|
|
2338
|
+
type: 'integer',
|
|
2339
|
+
minimum: 0,
|
|
2340
|
+
description: 'Maximum number of Pro clusters that can be created.',
|
|
2341
|
+
example: 999
|
|
851
2342
|
},
|
|
852
|
-
|
|
853
|
-
type: '
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
example: 100
|
|
2343
|
+
pro_clusters_available: {
|
|
2344
|
+
type: 'integer',
|
|
2345
|
+
description: 'Available number of Pro clusters that can be created.',
|
|
2346
|
+
example: 999
|
|
857
2347
|
},
|
|
858
|
-
|
|
859
|
-
type: '
|
|
860
|
-
|
|
861
|
-
|
|
2348
|
+
fleets_max: {
|
|
2349
|
+
type: 'integer',
|
|
2350
|
+
minimum: 0,
|
|
2351
|
+
description: 'Maximum number of fleets that can be created per cluster.',
|
|
2352
|
+
example: 999
|
|
2353
|
+
},
|
|
2354
|
+
cluster_tiers: {
|
|
2355
|
+
type: 'array',
|
|
2356
|
+
items: {
|
|
2357
|
+
type: 'string',
|
|
2358
|
+
example: 'basic'
|
|
2359
|
+
},
|
|
2360
|
+
minItems: 0,
|
|
2361
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
862
2362
|
},
|
|
863
|
-
|
|
2363
|
+
regions: {
|
|
2364
|
+
type: 'array',
|
|
2365
|
+
items: {
|
|
2366
|
+
type: 'string',
|
|
2367
|
+
example: 'northamerica-central-1'
|
|
2368
|
+
},
|
|
2369
|
+
minItems: 1,
|
|
2370
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2371
|
+
},
|
|
2372
|
+
versions: {
|
|
864
2373
|
type: 'array',
|
|
865
2374
|
items: {
|
|
866
2375
|
type: 'object',
|
|
867
2376
|
properties: {
|
|
868
2377
|
id: {
|
|
869
2378
|
type: 'string',
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
873
|
-
},
|
|
874
|
-
linkedInvoiceItemId: {
|
|
875
|
-
type: 'string',
|
|
876
|
-
format: 'uuid',
|
|
877
|
-
description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
|
|
878
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
879
|
-
},
|
|
880
|
-
productName: {
|
|
881
|
-
type: 'string',
|
|
882
|
-
description: 'Name of the product',
|
|
883
|
-
example: 'Research team'
|
|
884
|
-
},
|
|
885
|
-
planName: {
|
|
886
|
-
type: 'string',
|
|
887
|
-
description: 'Name of the plan',
|
|
888
|
-
example: 'Plan A'
|
|
889
|
-
},
|
|
890
|
-
phaseName: {
|
|
891
|
-
type: 'string',
|
|
892
|
-
description: 'Name of the phase',
|
|
893
|
-
example: 'Phase A'
|
|
894
|
-
},
|
|
895
|
-
usageName: {
|
|
896
|
-
type: 'string',
|
|
897
|
-
description: 'Name of the usage',
|
|
898
|
-
example: 'Usage A'
|
|
899
|
-
},
|
|
900
|
-
prettyProductName: {
|
|
901
|
-
type: 'string',
|
|
902
|
-
description: 'Pretty name of the product',
|
|
903
|
-
example: 'Research team'
|
|
904
|
-
},
|
|
905
|
-
prettyPlanName: {
|
|
906
|
-
type: 'string',
|
|
907
|
-
description: 'Pretty name of the plan',
|
|
908
|
-
example: 'Plan A'
|
|
909
|
-
},
|
|
910
|
-
prettyPhaseName: {
|
|
911
|
-
type: 'string',
|
|
912
|
-
description: 'Pretty name of the phase',
|
|
913
|
-
example: 'Phase A'
|
|
914
|
-
},
|
|
915
|
-
prettyUsageName: {
|
|
916
|
-
type: 'string',
|
|
917
|
-
description: 'Pretty name of the usage',
|
|
918
|
-
example: 'Usage A'
|
|
919
|
-
},
|
|
920
|
-
itemType: {
|
|
921
|
-
type: 'string',
|
|
922
|
-
description: 'Type of the invoice item',
|
|
923
|
-
example: 'EXTERNAL_CHARGE',
|
|
924
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
925
|
-
},
|
|
926
|
-
description: {
|
|
927
|
-
type: 'string',
|
|
928
|
-
description: 'Description of the invoice item',
|
|
929
|
-
example: 'Description of the invoice item'
|
|
930
|
-
},
|
|
931
|
-
startDate: {
|
|
932
|
-
type: 'string',
|
|
933
|
-
description: 'Start date of the invoice item',
|
|
934
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
935
|
-
},
|
|
936
|
-
endDate: {
|
|
937
|
-
type: 'string',
|
|
938
|
-
description: 'End date of the invoice item',
|
|
939
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
940
|
-
},
|
|
941
|
-
amount: {
|
|
942
|
-
type: 'number',
|
|
943
|
-
format: 'float',
|
|
944
|
-
description: 'Amount of the invoice item',
|
|
945
|
-
example: 100
|
|
946
|
-
},
|
|
947
|
-
rate: {
|
|
948
|
-
type: 'number',
|
|
949
|
-
format: 'float',
|
|
950
|
-
description: 'Rate of the invoice item',
|
|
951
|
-
example: 100
|
|
952
|
-
},
|
|
953
|
-
currency: {
|
|
954
|
-
type: 'string',
|
|
955
|
-
description: 'Currency of the invoice item',
|
|
956
|
-
example: 'USD',
|
|
957
|
-
enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
|
|
958
|
-
},
|
|
959
|
-
quantity: {
|
|
960
|
-
type: 'number',
|
|
961
|
-
format: 'float',
|
|
962
|
-
description: 'Quantity of the invoice item',
|
|
963
|
-
example: 1
|
|
964
|
-
},
|
|
965
|
-
itemDetails: {
|
|
966
|
-
type: 'string',
|
|
967
|
-
description: 'Details of the invoice item',
|
|
968
|
-
example: 'Details of the invoice item'
|
|
2379
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2380
|
+
example: '1.33.x-cfke.x'
|
|
969
2381
|
},
|
|
970
|
-
|
|
2382
|
+
label: {
|
|
971
2383
|
type: 'string',
|
|
972
|
-
description: '
|
|
973
|
-
example: '
|
|
974
|
-
},
|
|
975
|
-
childItems: {
|
|
976
|
-
type: 'array',
|
|
977
|
-
items: {
|
|
978
|
-
oneOf: [
|
|
979
|
-
{
|
|
980
|
-
type: 'array'
|
|
981
|
-
},
|
|
982
|
-
{
|
|
983
|
-
type: 'boolean'
|
|
984
|
-
},
|
|
985
|
-
{
|
|
986
|
-
type: 'number'
|
|
987
|
-
},
|
|
988
|
-
{
|
|
989
|
-
type: 'object',
|
|
990
|
-
additionalProperties: true
|
|
991
|
-
},
|
|
992
|
-
{
|
|
993
|
-
type: 'string'
|
|
994
|
-
}
|
|
995
|
-
]
|
|
996
|
-
},
|
|
997
|
-
description: 'Child items of the invoice item'
|
|
2384
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2385
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
998
2386
|
}
|
|
999
2387
|
},
|
|
2388
|
+
required: [
|
|
2389
|
+
'id',
|
|
2390
|
+
'label'
|
|
2391
|
+
],
|
|
1000
2392
|
additionalProperties: false
|
|
1001
2393
|
},
|
|
1002
|
-
|
|
2394
|
+
minItems: 1,
|
|
2395
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
1003
2396
|
},
|
|
1004
|
-
|
|
2397
|
+
cfcr_storage_gb: {
|
|
2398
|
+
type: 'integer',
|
|
2399
|
+
minimum: -1,
|
|
2400
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2401
|
+
example: 500
|
|
2402
|
+
}
|
|
2403
|
+
},
|
|
2404
|
+
required: [
|
|
2405
|
+
'basic_clusters_max',
|
|
2406
|
+
'basic_clusters_available',
|
|
2407
|
+
'pro_clusters_max',
|
|
2408
|
+
'pro_clusters_available',
|
|
2409
|
+
'fleets_max',
|
|
2410
|
+
'cluster_tiers',
|
|
2411
|
+
'regions',
|
|
2412
|
+
'versions',
|
|
2413
|
+
'cfcr_storage_gb'
|
|
2414
|
+
],
|
|
2415
|
+
additionalProperties: false
|
|
2416
|
+
};
|
|
2417
|
+
export const RegistryRepositorySchema = {
|
|
2418
|
+
type: 'object',
|
|
2419
|
+
properties: {
|
|
2420
|
+
name: {
|
|
2421
|
+
type: 'string',
|
|
2422
|
+
description: 'Repository name.',
|
|
2423
|
+
example: 'my-app'
|
|
2424
|
+
},
|
|
2425
|
+
region: {
|
|
2426
|
+
type: 'string',
|
|
2427
|
+
description: 'Registry region.',
|
|
2428
|
+
example: 'northamerica'
|
|
2429
|
+
},
|
|
2430
|
+
uri: {
|
|
2431
|
+
type: 'string',
|
|
2432
|
+
description: 'Full URI of the repository.',
|
|
2433
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2434
|
+
}
|
|
2435
|
+
},
|
|
2436
|
+
required: [
|
|
2437
|
+
'name',
|
|
2438
|
+
'region',
|
|
2439
|
+
'uri'
|
|
2440
|
+
],
|
|
2441
|
+
additionalProperties: false
|
|
2442
|
+
};
|
|
2443
|
+
export const RegistryRepositoryWithTagsSchema = {
|
|
2444
|
+
type: 'object',
|
|
2445
|
+
properties: {
|
|
2446
|
+
name: {
|
|
2447
|
+
type: 'string',
|
|
2448
|
+
description: 'Repository name.',
|
|
2449
|
+
example: 'my-app'
|
|
2450
|
+
},
|
|
2451
|
+
region: {
|
|
2452
|
+
type: 'string',
|
|
2453
|
+
description: 'Registry region.',
|
|
2454
|
+
example: 'northamerica'
|
|
2455
|
+
},
|
|
2456
|
+
uri: {
|
|
2457
|
+
type: 'string',
|
|
2458
|
+
description: 'Full URI of the repository.',
|
|
2459
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2460
|
+
},
|
|
2461
|
+
tags: {
|
|
1005
2462
|
type: 'array',
|
|
1006
2463
|
items: {
|
|
1007
2464
|
type: 'object',
|
|
1008
2465
|
properties: {
|
|
1009
|
-
|
|
1010
|
-
type: 'string',
|
|
1011
|
-
format: 'uuid',
|
|
1012
|
-
description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
|
|
1013
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
1014
|
-
},
|
|
1015
|
-
linkedInvoiceItemId: {
|
|
1016
|
-
type: 'string',
|
|
1017
|
-
format: 'uuid',
|
|
1018
|
-
description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
|
|
1019
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
1020
|
-
},
|
|
1021
|
-
productName: {
|
|
1022
|
-
type: 'string',
|
|
1023
|
-
description: 'Name of the product',
|
|
1024
|
-
example: 'Research team'
|
|
1025
|
-
},
|
|
1026
|
-
planName: {
|
|
1027
|
-
type: 'string',
|
|
1028
|
-
description: 'Name of the plan',
|
|
1029
|
-
example: 'Plan A'
|
|
1030
|
-
},
|
|
1031
|
-
phaseName: {
|
|
1032
|
-
type: 'string',
|
|
1033
|
-
description: 'Name of the phase',
|
|
1034
|
-
example: 'Phase A'
|
|
1035
|
-
},
|
|
1036
|
-
usageName: {
|
|
1037
|
-
type: 'string',
|
|
1038
|
-
description: 'Name of the usage',
|
|
1039
|
-
example: 'Usage A'
|
|
1040
|
-
},
|
|
1041
|
-
prettyProductName: {
|
|
1042
|
-
type: 'string',
|
|
1043
|
-
description: 'Pretty name of the product',
|
|
1044
|
-
example: 'Research team'
|
|
1045
|
-
},
|
|
1046
|
-
prettyPlanName: {
|
|
2466
|
+
name: {
|
|
1047
2467
|
type: 'string',
|
|
1048
|
-
description: '
|
|
1049
|
-
example: '
|
|
2468
|
+
description: 'Tag name.',
|
|
2469
|
+
example: 'latest'
|
|
1050
2470
|
},
|
|
1051
|
-
|
|
1052
|
-
type: 'string',
|
|
1053
|
-
description: 'Pretty name of the phase',
|
|
1054
|
-
example: 'Phase A'
|
|
1055
|
-
},
|
|
1056
|
-
prettyUsageName: {
|
|
1057
|
-
type: 'string',
|
|
1058
|
-
description: 'Pretty name of the usage',
|
|
1059
|
-
example: 'Usage A'
|
|
1060
|
-
},
|
|
1061
|
-
itemType: {
|
|
1062
|
-
type: 'string',
|
|
1063
|
-
description: 'Type of the invoice item',
|
|
1064
|
-
example: 'EXTERNAL_CHARGE',
|
|
1065
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
1066
|
-
},
|
|
1067
|
-
description: {
|
|
1068
|
-
type: 'string',
|
|
1069
|
-
description: 'Description of the invoice item',
|
|
1070
|
-
example: 'Description of the invoice item'
|
|
1071
|
-
},
|
|
1072
|
-
startDate: {
|
|
1073
|
-
type: 'string',
|
|
1074
|
-
description: 'Start date of the invoice item',
|
|
1075
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1076
|
-
},
|
|
1077
|
-
endDate: {
|
|
1078
|
-
type: 'string',
|
|
1079
|
-
description: 'End date of the invoice item',
|
|
1080
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1081
|
-
},
|
|
1082
|
-
amount: {
|
|
2471
|
+
size: {
|
|
1083
2472
|
type: 'number',
|
|
1084
2473
|
format: 'float',
|
|
1085
|
-
description: '
|
|
1086
|
-
example:
|
|
2474
|
+
description: 'Size of the tag in bytes.',
|
|
2475
|
+
example: 123456789
|
|
1087
2476
|
},
|
|
1088
|
-
|
|
1089
|
-
type: 'number',
|
|
1090
|
-
format: 'float',
|
|
1091
|
-
description: 'Rate of the invoice item',
|
|
1092
|
-
example: 100
|
|
1093
|
-
},
|
|
1094
|
-
currency: {
|
|
1095
|
-
type: 'string',
|
|
1096
|
-
description: 'Currency of the invoice item',
|
|
1097
|
-
example: 'USD',
|
|
1098
|
-
enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
|
|
1099
|
-
},
|
|
1100
|
-
quantity: {
|
|
1101
|
-
type: 'number',
|
|
1102
|
-
format: 'float',
|
|
1103
|
-
description: 'Quantity of the invoice item',
|
|
1104
|
-
example: 1
|
|
1105
|
-
},
|
|
1106
|
-
itemDetails: {
|
|
2477
|
+
mediaType: {
|
|
1107
2478
|
type: 'string',
|
|
1108
|
-
description: '
|
|
1109
|
-
example: '
|
|
2479
|
+
description: 'Media type of the manifest.',
|
|
2480
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
1110
2481
|
},
|
|
1111
|
-
|
|
1112
|
-
type: 'string',
|
|
1113
|
-
description: 'Effective date of the catalog',
|
|
1114
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1115
|
-
},
|
|
1116
|
-
childItems: {
|
|
2482
|
+
platforms: {
|
|
1117
2483
|
type: 'array',
|
|
1118
2484
|
items: {
|
|
1119
|
-
|
|
1120
|
-
{
|
|
1121
|
-
type: 'array'
|
|
1122
|
-
},
|
|
1123
|
-
{
|
|
1124
|
-
type: 'boolean'
|
|
1125
|
-
},
|
|
1126
|
-
{
|
|
1127
|
-
type: 'number'
|
|
1128
|
-
},
|
|
1129
|
-
{
|
|
1130
|
-
type: 'object',
|
|
1131
|
-
additionalProperties: true
|
|
1132
|
-
},
|
|
1133
|
-
{
|
|
1134
|
-
type: 'string'
|
|
1135
|
-
}
|
|
1136
|
-
]
|
|
2485
|
+
type: 'string'
|
|
1137
2486
|
},
|
|
1138
|
-
description: '
|
|
2487
|
+
description: 'Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).',
|
|
2488
|
+
example: [
|
|
2489
|
+
'linux/amd64',
|
|
2490
|
+
'linux/arm64'
|
|
2491
|
+
]
|
|
1139
2492
|
}
|
|
1140
2493
|
},
|
|
2494
|
+
required: [
|
|
2495
|
+
'name',
|
|
2496
|
+
'size'
|
|
2497
|
+
],
|
|
1141
2498
|
additionalProperties: false
|
|
1142
2499
|
},
|
|
1143
|
-
description: '
|
|
2500
|
+
description: 'Array of tags in the repository.'
|
|
2501
|
+
},
|
|
2502
|
+
totalSize: {
|
|
2503
|
+
type: 'number',
|
|
2504
|
+
format: 'float',
|
|
2505
|
+
description: 'Total size of all tags in the repository in bytes.',
|
|
2506
|
+
example: 987654321
|
|
1144
2507
|
}
|
|
1145
2508
|
},
|
|
2509
|
+
required: [
|
|
2510
|
+
'name',
|
|
2511
|
+
'region',
|
|
2512
|
+
'uri',
|
|
2513
|
+
'tags',
|
|
2514
|
+
'totalSize'
|
|
2515
|
+
],
|
|
1146
2516
|
additionalProperties: false
|
|
1147
2517
|
};
|
|
1148
|
-
export const
|
|
2518
|
+
export const RegistryTagSchema = {
|
|
1149
2519
|
type: 'object',
|
|
1150
2520
|
properties: {
|
|
1151
|
-
|
|
2521
|
+
name: {
|
|
1152
2522
|
type: 'string',
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
example: '123 Main St.'
|
|
2523
|
+
description: 'Tag name.',
|
|
2524
|
+
example: 'latest'
|
|
1156
2525
|
},
|
|
1157
|
-
|
|
2526
|
+
digest: {
|
|
1158
2527
|
type: 'string',
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
example: 'Suite 100'
|
|
2528
|
+
description: 'Manifest digest for pulling by digest.',
|
|
2529
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
1162
2530
|
},
|
|
1163
|
-
|
|
2531
|
+
mediaType: {
|
|
1164
2532
|
type: 'string',
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
example: '94105'
|
|
2533
|
+
description: 'Media type of the manifest.',
|
|
2534
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
1168
2535
|
},
|
|
1169
|
-
|
|
1170
|
-
type: '
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
2536
|
+
config: {
|
|
2537
|
+
type: 'object',
|
|
2538
|
+
properties: {
|
|
2539
|
+
size: {
|
|
2540
|
+
type: 'number',
|
|
2541
|
+
format: 'float',
|
|
2542
|
+
description: 'Size of the config in bytes.',
|
|
2543
|
+
example: 1234
|
|
2544
|
+
}
|
|
2545
|
+
},
|
|
2546
|
+
required: [
|
|
2547
|
+
'size'
|
|
2548
|
+
],
|
|
2549
|
+
additionalProperties: false,
|
|
2550
|
+
description: 'Manifest config metadata.'
|
|
1174
2551
|
},
|
|
1175
|
-
|
|
1176
|
-
type: '
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
2552
|
+
layers: {
|
|
2553
|
+
type: 'array',
|
|
2554
|
+
items: {
|
|
2555
|
+
type: 'object',
|
|
2556
|
+
properties: {
|
|
2557
|
+
digest: {
|
|
2558
|
+
type: 'string',
|
|
2559
|
+
description: 'Digest of the layer.',
|
|
2560
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2561
|
+
},
|
|
2562
|
+
size: {
|
|
2563
|
+
type: 'number',
|
|
2564
|
+
format: 'float',
|
|
2565
|
+
description: 'Size of the layer in bytes.',
|
|
2566
|
+
example: 5678
|
|
2567
|
+
}
|
|
2568
|
+
},
|
|
2569
|
+
required: [
|
|
2570
|
+
'size'
|
|
2571
|
+
],
|
|
2572
|
+
additionalProperties: false
|
|
2573
|
+
},
|
|
2574
|
+
description: 'Array of layer metadata.'
|
|
1180
2575
|
},
|
|
1181
|
-
|
|
1182
|
-
type: '
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
2576
|
+
manifests: {
|
|
2577
|
+
type: 'array',
|
|
2578
|
+
items: {
|
|
2579
|
+
type: 'object',
|
|
2580
|
+
properties: {
|
|
2581
|
+
digest: {
|
|
2582
|
+
type: 'string',
|
|
2583
|
+
description: 'Digest of the manifest.',
|
|
2584
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2585
|
+
},
|
|
2586
|
+
platform: {
|
|
2587
|
+
type: 'object',
|
|
2588
|
+
properties: {
|
|
2589
|
+
architecture: {
|
|
2590
|
+
type: 'string',
|
|
2591
|
+
description: 'Architecture of the platform.',
|
|
2592
|
+
example: 'amd64'
|
|
2593
|
+
},
|
|
2594
|
+
os: {
|
|
2595
|
+
type: 'string',
|
|
2596
|
+
description: 'Operating system of the platform.',
|
|
2597
|
+
example: 'linux'
|
|
2598
|
+
},
|
|
2599
|
+
variant: {
|
|
2600
|
+
type: 'string',
|
|
2601
|
+
description: 'Variant of the platform (e.g., v7, v8 for ARM).',
|
|
2602
|
+
example: 'v8'
|
|
2603
|
+
}
|
|
2604
|
+
},
|
|
2605
|
+
required: [
|
|
2606
|
+
'architecture',
|
|
2607
|
+
'os'
|
|
2608
|
+
],
|
|
2609
|
+
additionalProperties: false,
|
|
2610
|
+
description: 'Platform information for the manifest.'
|
|
2611
|
+
},
|
|
2612
|
+
layers: {
|
|
2613
|
+
type: 'array',
|
|
2614
|
+
items: {
|
|
2615
|
+
type: 'object',
|
|
2616
|
+
properties: {
|
|
2617
|
+
digest: {
|
|
2618
|
+
type: 'string',
|
|
2619
|
+
description: 'Digest of the layer.',
|
|
2620
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2621
|
+
},
|
|
2622
|
+
size: {
|
|
2623
|
+
type: 'number',
|
|
2624
|
+
format: 'float',
|
|
2625
|
+
description: 'Size of the layer in bytes.',
|
|
2626
|
+
example: 5678
|
|
2627
|
+
}
|
|
2628
|
+
},
|
|
2629
|
+
required: [
|
|
2630
|
+
'size'
|
|
2631
|
+
],
|
|
2632
|
+
additionalProperties: false
|
|
2633
|
+
},
|
|
2634
|
+
description: 'Layers for this platform.'
|
|
2635
|
+
},
|
|
2636
|
+
size: {
|
|
2637
|
+
type: 'number',
|
|
2638
|
+
format: 'float',
|
|
2639
|
+
description: 'Total size of this platform manifest in bytes.',
|
|
2640
|
+
example: 12345678
|
|
2641
|
+
}
|
|
2642
|
+
},
|
|
2643
|
+
required: [
|
|
2644
|
+
'digest'
|
|
2645
|
+
],
|
|
2646
|
+
additionalProperties: false
|
|
2647
|
+
},
|
|
2648
|
+
description: 'Array of manifests for multi-arch images.'
|
|
1186
2649
|
},
|
|
1187
|
-
|
|
1188
|
-
type: '
|
|
1189
|
-
|
|
1190
|
-
description: '
|
|
1191
|
-
example:
|
|
2650
|
+
size: {
|
|
2651
|
+
type: 'number',
|
|
2652
|
+
format: 'float',
|
|
2653
|
+
description: 'Total size of the tag in bytes.',
|
|
2654
|
+
example: 123456789
|
|
1192
2655
|
},
|
|
1193
|
-
|
|
2656
|
+
region: {
|
|
1194
2657
|
type: 'string',
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
example: 'email@example.com'
|
|
2658
|
+
description: 'Registry region.',
|
|
2659
|
+
example: 'northamerica'
|
|
1198
2660
|
},
|
|
1199
|
-
|
|
2661
|
+
repository: {
|
|
1200
2662
|
type: 'string',
|
|
1201
|
-
description: '
|
|
1202
|
-
example: '
|
|
2663
|
+
description: 'Repository name.',
|
|
2664
|
+
example: 'my-app'
|
|
1203
2665
|
},
|
|
1204
|
-
|
|
2666
|
+
uri: {
|
|
1205
2667
|
type: 'string',
|
|
1206
|
-
description: '
|
|
1207
|
-
example: '
|
|
2668
|
+
description: 'Full URI of the tag.',
|
|
2669
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
|
|
1208
2670
|
}
|
|
1209
2671
|
},
|
|
1210
|
-
required: [
|
|
2672
|
+
required: [
|
|
2673
|
+
'name',
|
|
2674
|
+
'digest',
|
|
2675
|
+
'size',
|
|
2676
|
+
'region',
|
|
2677
|
+
'repository',
|
|
2678
|
+
'uri'
|
|
2679
|
+
],
|
|
1211
2680
|
additionalProperties: false
|
|
1212
2681
|
};
|
|
1213
|
-
export const
|
|
2682
|
+
export const TicketAttachmentSchema = {
|
|
1214
2683
|
type: 'object',
|
|
1215
2684
|
properties: {
|
|
1216
|
-
|
|
2685
|
+
id: {
|
|
1217
2686
|
type: 'string',
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
|
|
1221
|
-
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
1222
|
-
example: 'ACME Corp.'
|
|
2687
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2688
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
1223
2689
|
},
|
|
1224
|
-
|
|
1225
|
-
type: '
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
type: 'string',
|
|
1229
|
-
description: 'Street address, P.O. box, c/o',
|
|
1230
|
-
example: '123 Main St.'
|
|
1231
|
-
},
|
|
1232
|
-
address2: {
|
|
1233
|
-
type: 'string',
|
|
1234
|
-
description: 'Apartment, suite, unit, building, floor, etc.',
|
|
1235
|
-
example: 'Suite 100'
|
|
1236
|
-
},
|
|
1237
|
-
postalCode: {
|
|
1238
|
-
type: 'string',
|
|
1239
|
-
description: 'Postal code as a string.',
|
|
1240
|
-
example: '94105'
|
|
1241
|
-
},
|
|
1242
|
-
city: {
|
|
1243
|
-
type: 'string',
|
|
1244
|
-
description: 'City or town name.',
|
|
1245
|
-
example: 'San Francisco'
|
|
1246
|
-
},
|
|
1247
|
-
state: {
|
|
1248
|
-
type: 'string',
|
|
1249
|
-
description: 'State, province, or region name.',
|
|
1250
|
-
example: 'CA'
|
|
1251
|
-
},
|
|
1252
|
-
country: {
|
|
1253
|
-
type: 'string',
|
|
1254
|
-
description: 'Country as a ISO 3166-1 alpha-2 country code.',
|
|
1255
|
-
example: 'US'
|
|
1256
|
-
},
|
|
1257
|
-
phone: {
|
|
1258
|
-
type: 'string',
|
|
1259
|
-
description: 'Phone number as a string.',
|
|
1260
|
-
example: '+1 555 555 5555'
|
|
1261
|
-
},
|
|
1262
|
-
email: {
|
|
1263
|
-
type: 'string',
|
|
1264
|
-
format: 'email',
|
|
1265
|
-
description: 'Email address used for billing as a string.',
|
|
1266
|
-
example: 'email@example.com'
|
|
1267
|
-
},
|
|
1268
|
-
first_name: {
|
|
1269
|
-
type: 'string',
|
|
1270
|
-
description: 'First name of the billing contact person.',
|
|
1271
|
-
example: 'John'
|
|
1272
|
-
},
|
|
1273
|
-
last_name: {
|
|
1274
|
-
type: 'string',
|
|
1275
|
-
description: 'Last name of the billing contact person.',
|
|
1276
|
-
example: 'Doe'
|
|
1277
|
-
}
|
|
1278
|
-
},
|
|
1279
|
-
required: ['email', 'first_name', 'last_name'],
|
|
1280
|
-
additionalProperties: false,
|
|
1281
|
-
description: 'Organization contact information and billing address.'
|
|
2690
|
+
filename: {
|
|
2691
|
+
type: 'string',
|
|
2692
|
+
description: 'Original filename as uploaded.',
|
|
2693
|
+
example: 'debug.log'
|
|
1282
2694
|
},
|
|
1283
|
-
|
|
2695
|
+
content_type: {
|
|
1284
2696
|
type: 'string',
|
|
1285
|
-
|
|
1286
|
-
|
|
2697
|
+
description: 'MIME content type of the attachment.',
|
|
2698
|
+
example: 'text/plain'
|
|
2699
|
+
},
|
|
2700
|
+
size: {
|
|
2701
|
+
type: 'integer',
|
|
2702
|
+
description: 'Size of the attachment in bytes.',
|
|
2703
|
+
example: 12345
|
|
1287
2704
|
}
|
|
1288
2705
|
},
|
|
1289
|
-
required: [
|
|
2706
|
+
required: [
|
|
2707
|
+
'id',
|
|
2708
|
+
'filename',
|
|
2709
|
+
'content_type',
|
|
2710
|
+
'size'
|
|
2711
|
+
],
|
|
1290
2712
|
additionalProperties: false
|
|
1291
2713
|
};
|
|
1292
|
-
export const
|
|
2714
|
+
export const TicketCreateInputSchema = {
|
|
1293
2715
|
type: 'object',
|
|
1294
2716
|
properties: {
|
|
1295
|
-
|
|
1296
|
-
type: 'string',
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
type: 'object',
|
|
1305
|
-
properties: {
|
|
1306
|
-
address1: {
|
|
1307
|
-
type: 'string',
|
|
1308
|
-
description: 'Street address, P.O. box, c/o',
|
|
1309
|
-
example: '123 Main St.'
|
|
1310
|
-
},
|
|
1311
|
-
address2: {
|
|
1312
|
-
type: 'string',
|
|
1313
|
-
description: 'Apartment, suite, unit, building, floor, etc.',
|
|
1314
|
-
example: 'Suite 100'
|
|
1315
|
-
},
|
|
1316
|
-
postalCode: {
|
|
1317
|
-
type: 'string',
|
|
1318
|
-
description: 'Postal code as a string.',
|
|
1319
|
-
example: '94105'
|
|
1320
|
-
},
|
|
1321
|
-
city: {
|
|
1322
|
-
type: 'string',
|
|
1323
|
-
description: 'City or town name.',
|
|
1324
|
-
example: 'San Francisco'
|
|
1325
|
-
},
|
|
1326
|
-
state: {
|
|
1327
|
-
type: 'string',
|
|
1328
|
-
description: 'State, province, or region name.',
|
|
1329
|
-
example: 'CA'
|
|
1330
|
-
},
|
|
1331
|
-
country: {
|
|
1332
|
-
type: 'string',
|
|
1333
|
-
description: 'Country as a ISO 3166-1 alpha-2 country code.',
|
|
1334
|
-
example: 'US'
|
|
1335
|
-
},
|
|
1336
|
-
phone: {
|
|
1337
|
-
type: 'string',
|
|
1338
|
-
description: 'Phone number as a string.',
|
|
1339
|
-
example: '+1 555 555 5555'
|
|
1340
|
-
},
|
|
1341
|
-
email: {
|
|
1342
|
-
type: 'string',
|
|
1343
|
-
format: 'email',
|
|
1344
|
-
description: 'Email address used for billing as a string.',
|
|
1345
|
-
example: 'email@example.com'
|
|
1346
|
-
},
|
|
1347
|
-
first_name: {
|
|
1348
|
-
type: 'string',
|
|
1349
|
-
description: 'First name of the billing contact person.',
|
|
1350
|
-
example: 'John'
|
|
1351
|
-
},
|
|
1352
|
-
last_name: {
|
|
1353
|
-
type: 'string',
|
|
1354
|
-
description: 'Last name of the billing contact person.',
|
|
1355
|
-
example: 'Doe'
|
|
1356
|
-
}
|
|
1357
|
-
},
|
|
1358
|
-
required: ['email', 'first_name', 'last_name'],
|
|
1359
|
-
additionalProperties: false,
|
|
1360
|
-
description: 'Organization contact information and billing address.'
|
|
2717
|
+
category: {
|
|
2718
|
+
type: 'string',
|
|
2719
|
+
description: 'Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.',
|
|
2720
|
+
example: 'technical',
|
|
2721
|
+
enum: [
|
|
2722
|
+
'billing',
|
|
2723
|
+
'technical',
|
|
2724
|
+
'general'
|
|
2725
|
+
]
|
|
1361
2726
|
},
|
|
1362
|
-
|
|
2727
|
+
body: {
|
|
1363
2728
|
type: 'string',
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
type: 'string',
|
|
1370
|
-
format: 'date-time',
|
|
1371
|
-
description: 'Creation date of the organization. ISO 8601 date string in UTC timezone',
|
|
1372
|
-
example: '2023-11-02T16:08:14.338Z'
|
|
2729
|
+
maxLength: 50000,
|
|
2730
|
+
minLength: 1,
|
|
2731
|
+
pattern: '\\S',
|
|
2732
|
+
description: 'Initial message body in markdown. There is no separate subject — the first message body is the description.',
|
|
2733
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
1373
2734
|
},
|
|
1374
|
-
|
|
2735
|
+
properties: {
|
|
1375
2736
|
type: 'object',
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
fleets_max: {
|
|
1400
|
-
type: 'integer',
|
|
1401
|
-
minimum: 0,
|
|
1402
|
-
description: 'Maximum number of fleets that can be created per cluster.',
|
|
1403
|
-
example: 999
|
|
1404
|
-
},
|
|
1405
|
-
managed_fleets_cpu_max: {
|
|
1406
|
-
type: 'integer',
|
|
1407
|
-
minimum: 0,
|
|
1408
|
-
description: 'Maximum number of CPU cores per managed fleet.',
|
|
1409
|
-
example: 999
|
|
1410
|
-
},
|
|
1411
|
-
cluster_tiers: {
|
|
1412
|
-
type: 'array',
|
|
1413
|
-
items: {
|
|
2737
|
+
additionalProperties: true,
|
|
2738
|
+
description: 'Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).',
|
|
2739
|
+
example: {
|
|
2740
|
+
subcategory: 'cluster-question',
|
|
2741
|
+
cluster_id: '60c72b2f9f1b2c001f8e4d3a'
|
|
2742
|
+
}
|
|
2743
|
+
}
|
|
2744
|
+
},
|
|
2745
|
+
required: [
|
|
2746
|
+
'category',
|
|
2747
|
+
'body'
|
|
2748
|
+
],
|
|
2749
|
+
additionalProperties: false
|
|
2750
|
+
};
|
|
2751
|
+
export const TicketListResponseSchema = {
|
|
2752
|
+
type: 'object',
|
|
2753
|
+
properties: {
|
|
2754
|
+
items: {
|
|
2755
|
+
type: 'array',
|
|
2756
|
+
items: {
|
|
2757
|
+
type: 'object',
|
|
2758
|
+
properties: {
|
|
2759
|
+
id: {
|
|
1414
2760
|
type: 'string',
|
|
1415
|
-
|
|
2761
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
2762
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
1416
2763
|
},
|
|
1417
|
-
|
|
1418
|
-
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
1419
|
-
},
|
|
1420
|
-
regions: {
|
|
1421
|
-
type: 'array',
|
|
1422
|
-
items: {
|
|
2764
|
+
status: {
|
|
1423
2765
|
type: 'string',
|
|
1424
|
-
|
|
2766
|
+
description: 'Current state of the ticket.',
|
|
2767
|
+
example: 'waiting_on_us',
|
|
2768
|
+
enum: [
|
|
2769
|
+
'waiting_on_us',
|
|
2770
|
+
'waiting_on_user',
|
|
2771
|
+
'closed'
|
|
2772
|
+
]
|
|
1425
2773
|
},
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
2774
|
+
category: {
|
|
2775
|
+
type: 'string',
|
|
2776
|
+
description: 'Ticket category.',
|
|
2777
|
+
example: 'technical',
|
|
2778
|
+
enum: [
|
|
2779
|
+
'billing',
|
|
2780
|
+
'technical',
|
|
2781
|
+
'general'
|
|
2782
|
+
]
|
|
2783
|
+
},
|
|
2784
|
+
summary: {
|
|
2785
|
+
type: 'string',
|
|
2786
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
2787
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
2788
|
+
},
|
|
2789
|
+
closed_at: {
|
|
2790
|
+
type: 'string',
|
|
2791
|
+
format: 'date-time',
|
|
2792
|
+
nullable: true,
|
|
2793
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
2794
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
2795
|
+
},
|
|
2796
|
+
date_created: {
|
|
2797
|
+
type: 'string',
|
|
2798
|
+
format: 'date-time',
|
|
2799
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
2800
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2801
|
+
},
|
|
2802
|
+
date_updated: {
|
|
2803
|
+
type: 'string',
|
|
2804
|
+
format: 'date-time',
|
|
2805
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
2806
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2807
|
+
},
|
|
2808
|
+
messages: {
|
|
2809
|
+
type: 'array',
|
|
2810
|
+
items: {
|
|
2811
|
+
type: 'object',
|
|
2812
|
+
properties: {
|
|
2813
|
+
id: {
|
|
2814
|
+
type: 'string',
|
|
2815
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
2816
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
2817
|
+
},
|
|
2818
|
+
type: {
|
|
2819
|
+
type: 'string',
|
|
2820
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
2821
|
+
example: 'customer_reply',
|
|
2822
|
+
enum: [
|
|
2823
|
+
'customer_reply',
|
|
2824
|
+
'agent_reply'
|
|
2825
|
+
]
|
|
2826
|
+
},
|
|
2827
|
+
body: {
|
|
2828
|
+
type: 'string',
|
|
2829
|
+
description: 'Message body in markdown.',
|
|
2830
|
+
example: 'Thanks — that resolved it on my side.'
|
|
2831
|
+
},
|
|
2832
|
+
author_first_name: {
|
|
2833
|
+
type: 'string',
|
|
2834
|
+
nullable: true,
|
|
2835
|
+
description: 'First name of the author. Null when not provided.',
|
|
2836
|
+
example: 'Jane'
|
|
2837
|
+
},
|
|
2838
|
+
author_last_name: {
|
|
2839
|
+
type: 'string',
|
|
2840
|
+
nullable: true,
|
|
2841
|
+
description: 'Last name of the author. Null when not provided.',
|
|
2842
|
+
example: 'Doe'
|
|
2843
|
+
},
|
|
2844
|
+
attachments: {
|
|
2845
|
+
type: 'array',
|
|
2846
|
+
items: {
|
|
2847
|
+
type: 'object',
|
|
2848
|
+
properties: {
|
|
2849
|
+
id: {
|
|
2850
|
+
type: 'string',
|
|
2851
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2852
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
2853
|
+
},
|
|
2854
|
+
filename: {
|
|
2855
|
+
type: 'string',
|
|
2856
|
+
description: 'Original filename as uploaded.',
|
|
2857
|
+
example: 'debug.log'
|
|
2858
|
+
},
|
|
2859
|
+
content_type: {
|
|
2860
|
+
type: 'string',
|
|
2861
|
+
description: 'MIME content type of the attachment.',
|
|
2862
|
+
example: 'text/plain'
|
|
2863
|
+
},
|
|
2864
|
+
size: {
|
|
2865
|
+
type: 'integer',
|
|
2866
|
+
description: 'Size of the attachment in bytes.',
|
|
2867
|
+
example: 12345
|
|
2868
|
+
}
|
|
2869
|
+
},
|
|
2870
|
+
required: [
|
|
2871
|
+
'id',
|
|
2872
|
+
'filename',
|
|
2873
|
+
'content_type',
|
|
2874
|
+
'size'
|
|
2875
|
+
],
|
|
2876
|
+
additionalProperties: false
|
|
2877
|
+
},
|
|
2878
|
+
description: 'Attachments associated with this message.',
|
|
2879
|
+
example: []
|
|
2880
|
+
},
|
|
2881
|
+
date_created: {
|
|
2882
|
+
type: 'string',
|
|
2883
|
+
format: 'date-time',
|
|
2884
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
2885
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2886
|
+
}
|
|
1438
2887
|
},
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
2888
|
+
required: [
|
|
2889
|
+
'id',
|
|
2890
|
+
'type',
|
|
2891
|
+
'body',
|
|
2892
|
+
'date_created'
|
|
2893
|
+
],
|
|
2894
|
+
additionalProperties: false
|
|
1444
2895
|
},
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
type: 'array',
|
|
1458
|
-
items: {
|
|
1459
|
-
type: 'string',
|
|
1460
|
-
example: 'signup-payment-method',
|
|
1461
|
-
enum: ['signup-billing-address', 'signup-payment-method', 'signup-invite-team', 'signup-create-cluster']
|
|
2896
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
2897
|
+
}
|
|
2898
|
+
},
|
|
2899
|
+
required: [
|
|
2900
|
+
'id',
|
|
2901
|
+
'status',
|
|
2902
|
+
'category',
|
|
2903
|
+
'summary',
|
|
2904
|
+
'date_created',
|
|
2905
|
+
'date_updated'
|
|
2906
|
+
],
|
|
2907
|
+
additionalProperties: false
|
|
1462
2908
|
},
|
|
1463
|
-
description: '
|
|
1464
|
-
}
|
|
1465
|
-
|
|
2909
|
+
description: 'Tickets for the organization, ordered newest first. Messages are omitted from list responses.'
|
|
2910
|
+
}
|
|
2911
|
+
},
|
|
2912
|
+
required: [
|
|
2913
|
+
'items'
|
|
2914
|
+
],
|
|
2915
|
+
additionalProperties: false
|
|
2916
|
+
};
|
|
2917
|
+
export const TicketMessageInputSchema = {
|
|
2918
|
+
type: 'object',
|
|
2919
|
+
properties: {
|
|
2920
|
+
body: {
|
|
1466
2921
|
type: 'string',
|
|
1467
|
-
|
|
1468
|
-
|
|
2922
|
+
maxLength: 50000,
|
|
2923
|
+
minLength: 1,
|
|
2924
|
+
pattern: '\\S',
|
|
2925
|
+
description: 'Reply body in markdown.',
|
|
2926
|
+
example: 'Thanks — that resolved it on my side.'
|
|
1469
2927
|
}
|
|
1470
2928
|
},
|
|
1471
|
-
required: [
|
|
2929
|
+
required: [
|
|
2930
|
+
'body'
|
|
2931
|
+
],
|
|
1472
2932
|
additionalProperties: false
|
|
1473
2933
|
};
|
|
1474
|
-
export const
|
|
2934
|
+
export const TicketMessageSchema = {
|
|
1475
2935
|
type: 'object',
|
|
1476
2936
|
properties: {
|
|
1477
|
-
|
|
2937
|
+
id: {
|
|
2938
|
+
type: 'string',
|
|
2939
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
2940
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
2941
|
+
},
|
|
2942
|
+
type: {
|
|
2943
|
+
type: 'string',
|
|
2944
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
2945
|
+
example: 'customer_reply',
|
|
2946
|
+
enum: [
|
|
2947
|
+
'customer_reply',
|
|
2948
|
+
'agent_reply'
|
|
2949
|
+
]
|
|
2950
|
+
},
|
|
2951
|
+
body: {
|
|
2952
|
+
type: 'string',
|
|
2953
|
+
description: 'Message body in markdown.',
|
|
2954
|
+
example: 'Thanks — that resolved it on my side.'
|
|
2955
|
+
},
|
|
2956
|
+
author_first_name: {
|
|
1478
2957
|
type: 'string',
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
pattern: '^(?!\\s)(?!.*\\s$)(?=.*[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9])[a-zA-ZÆÐƎƏƐƔIJŊŒẞÞǷȜæðǝəɛɣijŋœĸſßþƿȝĄƁÇĐƊĘĦĮƘŁØƠŞȘŢȚŦŲƯY̨Ƴąɓçđɗęħįƙłøơşșţțŧųưy̨ƴÁÀÂÄǍĂĀÃÅǺĄÆǼǢƁĆĊĈČÇĎḌĐƊÐÉÈĖÊËĚĔĒĘẸƎƏƐĠĜǦĞĢƔáàâäǎăāãåǻąæǽǣɓćċĉčçďḍđɗðéèėêëěĕēęẹǝəɛġĝǧğģɣĤḤĦIÍÌİÎÏǏĬĪĨĮỊIJĴĶƘĹĻŁĽĿʼNŃN̈ŇÑŅŊÓÒÔÖǑŎŌÕŐỌØǾƠŒĥḥħıíìiîïǐĭīĩįịijĵķƙĸĺļłľŀʼnńn̈ňñņŋóòôöǒŏōõőọøǿơœŔŘŖŚŜŠŞȘṢẞŤŢṬŦÞÚÙÛÜǓŬŪŨŰŮŲỤƯẂẀŴẄǷÝỲŶŸȲỸƳŹŻŽẒŕřŗſśŝšşșṣßťţṭŧþúùûüǔŭūũűůųụưẃẁŵẅƿýỳŷÿȳỹƴźżžẓ0-9 -.]{2,}$',
|
|
1482
|
-
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
1483
|
-
example: 'ACME Corp.'
|
|
2958
|
+
description: 'First name of the author. Null when not provided.',
|
|
2959
|
+
example: 'Jane'
|
|
1484
2960
|
},
|
|
1485
|
-
|
|
1486
|
-
type: '
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
description: 'Country as a ISO 3166-1 alpha-2 country code.',
|
|
1516
|
-
example: 'US'
|
|
1517
|
-
},
|
|
1518
|
-
phone: {
|
|
1519
|
-
type: 'string',
|
|
1520
|
-
description: 'Phone number as a string.',
|
|
1521
|
-
example: '+1 555 555 5555'
|
|
1522
|
-
},
|
|
1523
|
-
email: {
|
|
1524
|
-
type: 'string',
|
|
1525
|
-
format: 'email',
|
|
1526
|
-
description: 'Email address used for billing as a string.',
|
|
1527
|
-
example: 'email@example.com'
|
|
1528
|
-
},
|
|
1529
|
-
first_name: {
|
|
1530
|
-
type: 'string',
|
|
1531
|
-
description: 'First name of the billing contact person.',
|
|
1532
|
-
example: 'John'
|
|
2961
|
+
author_last_name: {
|
|
2962
|
+
type: 'string',
|
|
2963
|
+
description: 'Last name of the author. Null when not provided.',
|
|
2964
|
+
example: 'Doe'
|
|
2965
|
+
},
|
|
2966
|
+
attachments: {
|
|
2967
|
+
type: 'array',
|
|
2968
|
+
items: {
|
|
2969
|
+
type: 'object',
|
|
2970
|
+
properties: {
|
|
2971
|
+
id: {
|
|
2972
|
+
type: 'string',
|
|
2973
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2974
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
2975
|
+
},
|
|
2976
|
+
filename: {
|
|
2977
|
+
type: 'string',
|
|
2978
|
+
description: 'Original filename as uploaded.',
|
|
2979
|
+
example: 'debug.log'
|
|
2980
|
+
},
|
|
2981
|
+
content_type: {
|
|
2982
|
+
type: 'string',
|
|
2983
|
+
description: 'MIME content type of the attachment.',
|
|
2984
|
+
example: 'text/plain'
|
|
2985
|
+
},
|
|
2986
|
+
size: {
|
|
2987
|
+
type: 'integer',
|
|
2988
|
+
description: 'Size of the attachment in bytes.',
|
|
2989
|
+
example: 12345
|
|
2990
|
+
}
|
|
1533
2991
|
},
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
2992
|
+
required: [
|
|
2993
|
+
'id',
|
|
2994
|
+
'filename',
|
|
2995
|
+
'content_type',
|
|
2996
|
+
'size'
|
|
2997
|
+
],
|
|
2998
|
+
additionalProperties: false
|
|
1539
2999
|
},
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
3000
|
+
description: 'Attachments associated with this message.',
|
|
3001
|
+
example: []
|
|
3002
|
+
},
|
|
3003
|
+
date_created: {
|
|
3004
|
+
type: 'string',
|
|
3005
|
+
format: 'date-time',
|
|
3006
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3007
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
1543
3008
|
}
|
|
1544
3009
|
},
|
|
1545
|
-
required: [
|
|
3010
|
+
required: [
|
|
3011
|
+
'id',
|
|
3012
|
+
'type',
|
|
3013
|
+
'body',
|
|
3014
|
+
'date_created'
|
|
3015
|
+
],
|
|
1546
3016
|
additionalProperties: false
|
|
1547
3017
|
};
|
|
1548
|
-
export const
|
|
3018
|
+
export const TicketSchema = {
|
|
1549
3019
|
type: 'object',
|
|
1550
3020
|
properties: {
|
|
1551
3021
|
id: {
|
|
1552
3022
|
type: 'string',
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
3023
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
3024
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
1556
3025
|
},
|
|
1557
|
-
|
|
1558
|
-
type: '
|
|
1559
|
-
description: '
|
|
1560
|
-
example:
|
|
3026
|
+
status: {
|
|
3027
|
+
type: 'string',
|
|
3028
|
+
description: 'Current state of the ticket.',
|
|
3029
|
+
example: 'waiting_on_us',
|
|
3030
|
+
enum: [
|
|
3031
|
+
'waiting_on_us',
|
|
3032
|
+
'waiting_on_user',
|
|
3033
|
+
'closed'
|
|
3034
|
+
]
|
|
1561
3035
|
},
|
|
1562
|
-
|
|
3036
|
+
category: {
|
|
1563
3037
|
type: 'string',
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
3038
|
+
description: 'Ticket category.',
|
|
3039
|
+
example: 'technical',
|
|
3040
|
+
enum: [
|
|
3041
|
+
'billing',
|
|
3042
|
+
'technical',
|
|
3043
|
+
'general'
|
|
3044
|
+
]
|
|
1568
3045
|
},
|
|
1569
|
-
|
|
3046
|
+
summary: {
|
|
1570
3047
|
type: 'string',
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
example: '4242'
|
|
3048
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
3049
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
1574
3050
|
},
|
|
1575
|
-
|
|
1576
|
-
type: '
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
description: "Two-digit number representing the card's expiration month.",
|
|
1581
|
-
example: '12'
|
|
3051
|
+
closed_at: {
|
|
3052
|
+
type: 'string',
|
|
3053
|
+
format: 'date-time',
|
|
3054
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
3055
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
1582
3056
|
},
|
|
1583
|
-
|
|
1584
|
-
type: '
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
example: '2028'
|
|
3057
|
+
date_created: {
|
|
3058
|
+
type: 'string',
|
|
3059
|
+
format: 'date-time',
|
|
3060
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
3061
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
1589
3062
|
},
|
|
1590
|
-
|
|
3063
|
+
date_updated: {
|
|
1591
3064
|
type: 'string',
|
|
1592
|
-
|
|
1593
|
-
description: '
|
|
1594
|
-
example: '
|
|
1595
|
-
|
|
3065
|
+
format: 'date-time',
|
|
3066
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
3067
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3068
|
+
},
|
|
3069
|
+
messages: {
|
|
3070
|
+
type: 'array',
|
|
3071
|
+
items: {
|
|
3072
|
+
type: 'object',
|
|
3073
|
+
properties: {
|
|
3074
|
+
id: {
|
|
3075
|
+
type: 'string',
|
|
3076
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3077
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3078
|
+
},
|
|
3079
|
+
type: {
|
|
3080
|
+
type: 'string',
|
|
3081
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3082
|
+
example: 'customer_reply',
|
|
3083
|
+
enum: [
|
|
3084
|
+
'customer_reply',
|
|
3085
|
+
'agent_reply'
|
|
3086
|
+
]
|
|
3087
|
+
},
|
|
3088
|
+
body: {
|
|
3089
|
+
type: 'string',
|
|
3090
|
+
description: 'Message body in markdown.',
|
|
3091
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3092
|
+
},
|
|
3093
|
+
author_first_name: {
|
|
3094
|
+
type: 'string',
|
|
3095
|
+
description: 'First name of the author. Null when not provided.',
|
|
3096
|
+
example: 'Jane'
|
|
3097
|
+
},
|
|
3098
|
+
author_last_name: {
|
|
3099
|
+
type: 'string',
|
|
3100
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3101
|
+
example: 'Doe'
|
|
3102
|
+
},
|
|
3103
|
+
attachments: {
|
|
3104
|
+
type: 'array',
|
|
3105
|
+
items: {
|
|
3106
|
+
type: 'object',
|
|
3107
|
+
properties: {
|
|
3108
|
+
id: {
|
|
3109
|
+
type: 'string',
|
|
3110
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3111
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3112
|
+
},
|
|
3113
|
+
filename: {
|
|
3114
|
+
type: 'string',
|
|
3115
|
+
description: 'Original filename as uploaded.',
|
|
3116
|
+
example: 'debug.log'
|
|
3117
|
+
},
|
|
3118
|
+
content_type: {
|
|
3119
|
+
type: 'string',
|
|
3120
|
+
description: 'MIME content type of the attachment.',
|
|
3121
|
+
example: 'text/plain'
|
|
3122
|
+
},
|
|
3123
|
+
size: {
|
|
3124
|
+
type: 'integer',
|
|
3125
|
+
description: 'Size of the attachment in bytes.',
|
|
3126
|
+
example: 12345
|
|
3127
|
+
}
|
|
3128
|
+
},
|
|
3129
|
+
required: [
|
|
3130
|
+
'id',
|
|
3131
|
+
'filename',
|
|
3132
|
+
'content_type',
|
|
3133
|
+
'size'
|
|
3134
|
+
],
|
|
3135
|
+
additionalProperties: false
|
|
3136
|
+
},
|
|
3137
|
+
description: 'Attachments associated with this message.',
|
|
3138
|
+
example: []
|
|
3139
|
+
},
|
|
3140
|
+
date_created: {
|
|
3141
|
+
type: 'string',
|
|
3142
|
+
format: 'date-time',
|
|
3143
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3144
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3145
|
+
}
|
|
3146
|
+
},
|
|
3147
|
+
required: [
|
|
3148
|
+
'id',
|
|
3149
|
+
'type',
|
|
3150
|
+
'body',
|
|
3151
|
+
'date_created'
|
|
3152
|
+
],
|
|
3153
|
+
additionalProperties: false
|
|
3154
|
+
},
|
|
3155
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
1596
3156
|
}
|
|
1597
3157
|
},
|
|
1598
|
-
required: [
|
|
3158
|
+
required: [
|
|
3159
|
+
'id',
|
|
3160
|
+
'status',
|
|
3161
|
+
'category',
|
|
3162
|
+
'summary',
|
|
3163
|
+
'date_created',
|
|
3164
|
+
'date_updated'
|
|
3165
|
+
],
|
|
1599
3166
|
additionalProperties: false
|
|
1600
3167
|
};
|
|
1601
3168
|
export const TokenCreateInputSchema = {
|
|
@@ -1613,10 +3180,16 @@ export const TokenCreateInputSchema = {
|
|
|
1613
3180
|
type: 'string',
|
|
1614
3181
|
description: 'Role assumed by the token.',
|
|
1615
3182
|
example: 'User',
|
|
1616
|
-
enum: [
|
|
3183
|
+
enum: [
|
|
3184
|
+
'Administrator',
|
|
3185
|
+
'User'
|
|
3186
|
+
]
|
|
1617
3187
|
}
|
|
1618
3188
|
},
|
|
1619
|
-
required: [
|
|
3189
|
+
required: [
|
|
3190
|
+
'name',
|
|
3191
|
+
'role'
|
|
3192
|
+
],
|
|
1620
3193
|
additionalProperties: false
|
|
1621
3194
|
};
|
|
1622
3195
|
export const TokenSchema = {
|
|
@@ -1634,7 +3207,10 @@ export const TokenSchema = {
|
|
|
1634
3207
|
type: 'string',
|
|
1635
3208
|
description: 'Role assumed by the token.',
|
|
1636
3209
|
example: 'User',
|
|
1637
|
-
enum: [
|
|
3210
|
+
enum: [
|
|
3211
|
+
'Administrator',
|
|
3212
|
+
'User'
|
|
3213
|
+
]
|
|
1638
3214
|
},
|
|
1639
3215
|
id: {
|
|
1640
3216
|
type: 'string',
|
|
@@ -1653,7 +3229,11 @@ export const TokenSchema = {
|
|
|
1653
3229
|
example: '2023-12-20T13:53:32.000Z'
|
|
1654
3230
|
}
|
|
1655
3231
|
},
|
|
1656
|
-
required: [
|
|
3232
|
+
required: [
|
|
3233
|
+
'name',
|
|
3234
|
+
'role',
|
|
3235
|
+
'date_created'
|
|
3236
|
+
],
|
|
1657
3237
|
additionalProperties: false
|
|
1658
3238
|
};
|
|
1659
3239
|
export const TokenUpdateInputSchema = {
|
|
@@ -1671,9 +3251,127 @@ export const TokenUpdateInputSchema = {
|
|
|
1671
3251
|
type: 'string',
|
|
1672
3252
|
description: 'Role assumed by the token.',
|
|
1673
3253
|
example: 'User',
|
|
1674
|
-
enum: [
|
|
3254
|
+
enum: [
|
|
3255
|
+
'Administrator',
|
|
3256
|
+
'User'
|
|
3257
|
+
]
|
|
3258
|
+
}
|
|
3259
|
+
},
|
|
3260
|
+
additionalProperties: false
|
|
3261
|
+
};
|
|
3262
|
+
export const UsageFacetsSchema = {
|
|
3263
|
+
type: 'object',
|
|
3264
|
+
properties: {
|
|
3265
|
+
cluster_id: {
|
|
3266
|
+
type: 'array',
|
|
3267
|
+
items: {
|
|
3268
|
+
type: 'string'
|
|
3269
|
+
},
|
|
3270
|
+
description: 'List of unique cluster IDs',
|
|
3271
|
+
example: [
|
|
3272
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3273
|
+
]
|
|
3274
|
+
},
|
|
3275
|
+
product: {
|
|
3276
|
+
type: 'array',
|
|
3277
|
+
items: {
|
|
3278
|
+
type: 'string'
|
|
3279
|
+
},
|
|
3280
|
+
description: 'List of unique products',
|
|
3281
|
+
example: [
|
|
3282
|
+
'cfke_controlplane',
|
|
3283
|
+
'cfke_connected_nodes'
|
|
3284
|
+
]
|
|
3285
|
+
}
|
|
3286
|
+
},
|
|
3287
|
+
additionalProperties: false
|
|
3288
|
+
};
|
|
3289
|
+
export const UsageResponseSchema = {
|
|
3290
|
+
type: 'object',
|
|
3291
|
+
properties: {
|
|
3292
|
+
data: {
|
|
3293
|
+
type: 'array',
|
|
3294
|
+
items: {
|
|
3295
|
+
type: 'object',
|
|
3296
|
+
properties: {
|
|
3297
|
+
hour: {
|
|
3298
|
+
type: 'string',
|
|
3299
|
+
description: 'Hour of the usage',
|
|
3300
|
+
example: '2019-01-01T00:00:00.000Z'
|
|
3301
|
+
},
|
|
3302
|
+
cluster_id: {
|
|
3303
|
+
type: 'string',
|
|
3304
|
+
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
3305
|
+
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3306
|
+
},
|
|
3307
|
+
product: {
|
|
3308
|
+
type: 'string',
|
|
3309
|
+
description: 'The product the usage is associated with',
|
|
3310
|
+
example: 'cfke_controlplane'
|
|
3311
|
+
},
|
|
3312
|
+
value: {
|
|
3313
|
+
type: 'number',
|
|
3314
|
+
format: 'float',
|
|
3315
|
+
description: 'Consumption',
|
|
3316
|
+
example: 4
|
|
3317
|
+
},
|
|
3318
|
+
price: {
|
|
3319
|
+
type: 'number',
|
|
3320
|
+
format: 'float',
|
|
3321
|
+
description: 'Price per unit',
|
|
3322
|
+
example: 0.01
|
|
3323
|
+
},
|
|
3324
|
+
total: {
|
|
3325
|
+
type: 'number',
|
|
3326
|
+
format: 'float',
|
|
3327
|
+
description: 'Total cost'
|
|
3328
|
+
}
|
|
3329
|
+
},
|
|
3330
|
+
required: [
|
|
3331
|
+
'hour',
|
|
3332
|
+
'cluster_id',
|
|
3333
|
+
'product',
|
|
3334
|
+
'value',
|
|
3335
|
+
'price',
|
|
3336
|
+
'total'
|
|
3337
|
+
],
|
|
3338
|
+
additionalProperties: false
|
|
3339
|
+
},
|
|
3340
|
+
description: 'Usage data'
|
|
3341
|
+
},
|
|
3342
|
+
facets: {
|
|
3343
|
+
type: 'object',
|
|
3344
|
+
properties: {
|
|
3345
|
+
cluster_id: {
|
|
3346
|
+
type: 'array',
|
|
3347
|
+
items: {
|
|
3348
|
+
type: 'string'
|
|
3349
|
+
},
|
|
3350
|
+
description: 'List of unique cluster IDs',
|
|
3351
|
+
example: [
|
|
3352
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3353
|
+
]
|
|
3354
|
+
},
|
|
3355
|
+
product: {
|
|
3356
|
+
type: 'array',
|
|
3357
|
+
items: {
|
|
3358
|
+
type: 'string'
|
|
3359
|
+
},
|
|
3360
|
+
description: 'List of unique products',
|
|
3361
|
+
example: [
|
|
3362
|
+
'cfke_controlplane',
|
|
3363
|
+
'cfke_connected_nodes'
|
|
3364
|
+
]
|
|
3365
|
+
}
|
|
3366
|
+
},
|
|
3367
|
+
additionalProperties: false,
|
|
3368
|
+
description: 'Facets for filtering'
|
|
1675
3369
|
}
|
|
1676
3370
|
},
|
|
3371
|
+
required: [
|
|
3372
|
+
'data',
|
|
3373
|
+
'facets'
|
|
3374
|
+
],
|
|
1677
3375
|
additionalProperties: false
|
|
1678
3376
|
};
|
|
1679
3377
|
export const UsageSchema = {
|
|
@@ -1686,90 +3384,40 @@ export const UsageSchema = {
|
|
|
1686
3384
|
},
|
|
1687
3385
|
cluster_id: {
|
|
1688
3386
|
type: 'string',
|
|
1689
|
-
format: 'uuid',
|
|
1690
3387
|
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
1691
3388
|
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
1692
3389
|
},
|
|
1693
|
-
cluster_tier: {
|
|
1694
|
-
type: 'string',
|
|
1695
|
-
description: 'Tier of the cluster.',
|
|
1696
|
-
example: 'pro',
|
|
1697
|
-
enum: ['']
|
|
1698
|
-
},
|
|
1699
3390
|
product: {
|
|
1700
3391
|
type: 'string',
|
|
1701
3392
|
description: 'The product the usage is associated with',
|
|
1702
|
-
example: '
|
|
1703
|
-
enum: ['cfke_infra_compute', 'cfke_nodes', 'cfke_controlplane']
|
|
1704
|
-
},
|
|
1705
|
-
node_name: {
|
|
1706
|
-
type: 'string',
|
|
1707
|
-
description: 'Name of the Kubernetes node',
|
|
1708
|
-
example: 'flexible-moth-956037384'
|
|
1709
|
-
},
|
|
1710
|
-
sku: {
|
|
1711
|
-
type: 'string',
|
|
1712
|
-
description: 'SKU of the Kubernetes node',
|
|
1713
|
-
example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
|
|
3393
|
+
example: 'cfke_controlplane'
|
|
1714
3394
|
},
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
description: 'CPU core count of the node',
|
|
1721
|
-
example: 4
|
|
1722
|
-
},
|
|
1723
|
-
{
|
|
1724
|
-
type: 'string',
|
|
1725
|
-
enum: ['']
|
|
1726
|
-
}
|
|
1727
|
-
]
|
|
3395
|
+
value: {
|
|
3396
|
+
type: 'number',
|
|
3397
|
+
format: 'float',
|
|
3398
|
+
description: 'Consumption',
|
|
3399
|
+
example: 4
|
|
1728
3400
|
},
|
|
1729
3401
|
price: {
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
description: 'Price',
|
|
1735
|
-
example: 4
|
|
1736
|
-
},
|
|
1737
|
-
{
|
|
1738
|
-
type: 'string',
|
|
1739
|
-
enum: ['']
|
|
1740
|
-
}
|
|
1741
|
-
]
|
|
1742
|
-
},
|
|
1743
|
-
value: {
|
|
1744
|
-
anyOf: [
|
|
1745
|
-
{
|
|
1746
|
-
type: 'number',
|
|
1747
|
-
format: 'float',
|
|
1748
|
-
description: 'Value',
|
|
1749
|
-
example: 4
|
|
1750
|
-
},
|
|
1751
|
-
{
|
|
1752
|
-
type: 'string',
|
|
1753
|
-
enum: ['']
|
|
1754
|
-
}
|
|
1755
|
-
]
|
|
3402
|
+
type: 'number',
|
|
3403
|
+
format: 'float',
|
|
3404
|
+
description: 'Price per unit',
|
|
3405
|
+
example: 0.01
|
|
1756
3406
|
},
|
|
1757
3407
|
total: {
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
format: 'float',
|
|
1762
|
-
description: 'Total',
|
|
1763
|
-
example: 4
|
|
1764
|
-
},
|
|
1765
|
-
{
|
|
1766
|
-
type: 'string',
|
|
1767
|
-
enum: ['']
|
|
1768
|
-
}
|
|
1769
|
-
]
|
|
3408
|
+
type: 'number',
|
|
3409
|
+
format: 'float',
|
|
3410
|
+
description: 'Total cost'
|
|
1770
3411
|
}
|
|
1771
3412
|
},
|
|
1772
|
-
required: [
|
|
3413
|
+
required: [
|
|
3414
|
+
'hour',
|
|
3415
|
+
'cluster_id',
|
|
3416
|
+
'product',
|
|
3417
|
+
'value',
|
|
3418
|
+
'price',
|
|
3419
|
+
'total'
|
|
3420
|
+
],
|
|
1773
3421
|
additionalProperties: false
|
|
1774
3422
|
};
|
|
1775
3423
|
export const UserCreateInputSchema = {
|
|
@@ -1804,22 +3452,34 @@ export const UserCreateInputSchema = {
|
|
|
1804
3452
|
password: {
|
|
1805
3453
|
type: 'string',
|
|
1806
3454
|
minLength: 8,
|
|
1807
|
-
description: 'User password. Must be at least 8 characters long
|
|
3455
|
+
description: 'User password. Must be at least 8 characters long.'
|
|
1808
3456
|
},
|
|
1809
3457
|
status: {
|
|
1810
3458
|
type: 'string',
|
|
1811
3459
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1812
3460
|
example: 'active',
|
|
1813
|
-
enum: [
|
|
3461
|
+
enum: [
|
|
3462
|
+
'active',
|
|
3463
|
+
'inactive'
|
|
3464
|
+
]
|
|
1814
3465
|
},
|
|
1815
3466
|
role: {
|
|
1816
3467
|
type: 'string',
|
|
1817
|
-
description:
|
|
3468
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1818
3469
|
example: 'User',
|
|
1819
|
-
enum: [
|
|
3470
|
+
enum: [
|
|
3471
|
+
'Administrator',
|
|
3472
|
+
'User'
|
|
3473
|
+
]
|
|
1820
3474
|
}
|
|
1821
3475
|
},
|
|
1822
|
-
required: [
|
|
3476
|
+
required: [
|
|
3477
|
+
'email',
|
|
3478
|
+
'first_name',
|
|
3479
|
+
'last_name',
|
|
3480
|
+
'code',
|
|
3481
|
+
'password'
|
|
3482
|
+
],
|
|
1823
3483
|
additionalProperties: false
|
|
1824
3484
|
};
|
|
1825
3485
|
export const UserSchema = {
|
|
@@ -1847,15 +3507,21 @@ export const UserSchema = {
|
|
|
1847
3507
|
},
|
|
1848
3508
|
role: {
|
|
1849
3509
|
type: 'string',
|
|
1850
|
-
description:
|
|
3510
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1851
3511
|
example: 'User',
|
|
1852
|
-
enum: [
|
|
3512
|
+
enum: [
|
|
3513
|
+
'Administrator',
|
|
3514
|
+
'User'
|
|
3515
|
+
]
|
|
1853
3516
|
},
|
|
1854
3517
|
status: {
|
|
1855
3518
|
type: 'string',
|
|
1856
3519
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1857
3520
|
example: 'active',
|
|
1858
|
-
enum: [
|
|
3521
|
+
enum: [
|
|
3522
|
+
'active',
|
|
3523
|
+
'inactive'
|
|
3524
|
+
]
|
|
1859
3525
|
},
|
|
1860
3526
|
id: {
|
|
1861
3527
|
type: 'string',
|
|
@@ -1868,31 +3534,17 @@ export const UserSchema = {
|
|
|
1868
3534
|
format: 'date-time',
|
|
1869
3535
|
description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
|
|
1870
3536
|
example: '2023-11-02T16:08:14.338Z'
|
|
1871
|
-
},
|
|
1872
|
-
cluster_permissions: {
|
|
1873
|
-
type: 'array',
|
|
1874
|
-
items: {
|
|
1875
|
-
type: 'object',
|
|
1876
|
-
properties: {
|
|
1877
|
-
cluster_id: {
|
|
1878
|
-
type: 'string',
|
|
1879
|
-
format: 'uuid',
|
|
1880
|
-
description: 'Unique identifier of the cluster. UUID v4 string in canonical form',
|
|
1881
|
-
example: '035ce46d-44d8-4e58-a8a2-b0192d1c27df'
|
|
1882
|
-
},
|
|
1883
|
-
permissions: {
|
|
1884
|
-
type: 'string',
|
|
1885
|
-
description: 'User permissions to access the cluster. Can be `readwrite` or `readonly`.',
|
|
1886
|
-
example: 'readwrite',
|
|
1887
|
-
enum: ['readwrite', 'readonly']
|
|
1888
|
-
}
|
|
1889
|
-
},
|
|
1890
|
-
required: ['cluster_id', 'permissions'],
|
|
1891
|
-
additionalProperties: false
|
|
1892
|
-
}
|
|
1893
3537
|
}
|
|
1894
3538
|
},
|
|
1895
|
-
required: [
|
|
3539
|
+
required: [
|
|
3540
|
+
'email',
|
|
3541
|
+
'first_name',
|
|
3542
|
+
'last_name',
|
|
3543
|
+
'role',
|
|
3544
|
+
'status',
|
|
3545
|
+
'id',
|
|
3546
|
+
'date_created'
|
|
3547
|
+
],
|
|
1896
3548
|
additionalProperties: false
|
|
1897
3549
|
};
|
|
1898
3550
|
export const UserUpdateInputSchema = {
|
|
@@ -1920,15 +3572,21 @@ export const UserUpdateInputSchema = {
|
|
|
1920
3572
|
},
|
|
1921
3573
|
role: {
|
|
1922
3574
|
type: 'string',
|
|
1923
|
-
description:
|
|
3575
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1924
3576
|
example: 'User',
|
|
1925
|
-
enum: [
|
|
3577
|
+
enum: [
|
|
3578
|
+
'Administrator',
|
|
3579
|
+
'User'
|
|
3580
|
+
]
|
|
1926
3581
|
},
|
|
1927
3582
|
status: {
|
|
1928
3583
|
type: 'string',
|
|
1929
3584
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1930
3585
|
example: 'active',
|
|
1931
|
-
enum: [
|
|
3586
|
+
enum: [
|
|
3587
|
+
'active',
|
|
3588
|
+
'inactive'
|
|
3589
|
+
]
|
|
1932
3590
|
}
|
|
1933
3591
|
},
|
|
1934
3592
|
additionalProperties: false
|