@cloudfleet/sdk 0.0.1-bd28e81 → 0.0.1-bd6cd33
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 +1600 -1093
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +2873 -1147
- 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 +1431 -996
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +3711 -2872
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1539 -882
- 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: {
|
|
651
|
-
type: 'string',
|
|
652
|
-
description: 'Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
|
|
653
|
-
example: 'AWS'
|
|
654
|
-
},
|
|
655
|
-
region: {
|
|
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: {
|
|
1922
|
+
chartYaml: {
|
|
661
1923
|
type: 'string',
|
|
662
|
-
description: '
|
|
663
|
-
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'
|
|
664
1926
|
},
|
|
665
|
-
|
|
1927
|
+
valuesYaml: {
|
|
666
1928
|
type: 'string',
|
|
667
|
-
description: '
|
|
668
|
-
example: '
|
|
1929
|
+
description: 'Raw values.yaml content from the Helm chart',
|
|
1930
|
+
example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
|
|
669
1931
|
},
|
|
670
|
-
|
|
1932
|
+
valuesSchemaJson: {
|
|
671
1933
|
type: 'string',
|
|
672
|
-
description: '
|
|
673
|
-
example: '
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
description: 'Instance CPU architecture',
|
|
683
|
-
example: 'amd64'
|
|
684
|
-
},
|
|
685
|
-
os: {
|
|
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: {
|
|
686
1944
|
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
|
|
1945
|
+
description: 'Name of the chart',
|
|
1946
|
+
example: 'nginx-ingress'
|
|
696
1947
|
},
|
|
697
|
-
|
|
698
|
-
type: '
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
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'
|
|
703
1957
|
},
|
|
704
|
-
|
|
705
|
-
type: '
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
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'
|
|
709
1967
|
},
|
|
710
|
-
|
|
1968
|
+
latestVersion: {
|
|
711
1969
|
type: 'string',
|
|
712
|
-
description:
|
|
713
|
-
example: '
|
|
1970
|
+
description: 'Latest version of the chart',
|
|
1971
|
+
example: '1.18.2-cfke.45'
|
|
714
1972
|
},
|
|
715
|
-
|
|
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: {
|
|
716
2077
|
type: 'string',
|
|
717
|
-
|
|
718
|
-
|
|
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
|
|
2078
|
+
format: 'email',
|
|
2079
|
+
description: 'Email address used for billing as a string.',
|
|
2080
|
+
example: 'email@example.com'
|
|
730
2081
|
},
|
|
731
|
-
|
|
732
|
-
type: '
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
example: 110
|
|
2082
|
+
first_name: {
|
|
2083
|
+
type: 'string',
|
|
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
|
-
|
|
2259
|
+
setup: {
|
|
2260
|
+
type: 'boolean',
|
|
2261
|
+
description: 'Whether organization payment method was set up and ready to use for payments.',
|
|
2262
|
+
example: true
|
|
2263
|
+
},
|
|
2264
|
+
type: {
|
|
802
2265
|
type: 'string',
|
|
803
|
-
|
|
804
|
-
description: '
|
|
805
|
-
example: '
|
|
2266
|
+
nullable: true,
|
|
2267
|
+
description: 'Payment method type type. Only `card` payments supported at the moment.',
|
|
2268
|
+
example: 'card',
|
|
2269
|
+
enum: [
|
|
2270
|
+
'card'
|
|
2271
|
+
]
|
|
806
2272
|
},
|
|
807
|
-
|
|
2273
|
+
last4: {
|
|
808
2274
|
type: 'string',
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
2275
|
+
nullable: true,
|
|
2276
|
+
description: 'Last 4 digits of the payment card number.',
|
|
2277
|
+
example: '4242'
|
|
812
2278
|
},
|
|
813
|
-
|
|
814
|
-
type: '
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
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'
|
|
818
2286
|
},
|
|
819
|
-
|
|
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'
|
|
2293
|
+
},
|
|
2294
|
+
brand: {
|
|
820
2295
|
type: 'string',
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
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
|
|
824
2331
|
},
|
|
825
|
-
|
|
826
|
-
type: '
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
example: 0
|
|
2332
|
+
basic_clusters_available: {
|
|
2333
|
+
type: 'integer',
|
|
2334
|
+
description: 'Available number of Basic clusters that can be created.',
|
|
2335
|
+
example: 999
|
|
830
2336
|
},
|
|
831
|
-
|
|
832
|
-
type: '
|
|
833
|
-
|
|
834
|
-
description: '
|
|
835
|
-
example:
|
|
2337
|
+
pro_clusters_max: {
|
|
2338
|
+
type: 'integer',
|
|
2339
|
+
minimum: 0,
|
|
2340
|
+
description: 'Maximum number of Pro clusters that can be created.',
|
|
2341
|
+
example: 999
|
|
2342
|
+
},
|
|
2343
|
+
pro_clusters_available: {
|
|
2344
|
+
type: 'integer',
|
|
2345
|
+
description: 'Available number of Pro clusters that can be created.',
|
|
2346
|
+
example: 999
|
|
836
2347
|
},
|
|
837
|
-
|
|
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.'
|
|
2362
|
+
},
|
|
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: {
|
|
2373
|
+
type: 'array',
|
|
2374
|
+
items: {
|
|
2375
|
+
type: 'object',
|
|
2376
|
+
properties: {
|
|
2377
|
+
id: {
|
|
2378
|
+
type: 'string',
|
|
2379
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2380
|
+
example: '1.33.x-cfke.x'
|
|
2381
|
+
},
|
|
2382
|
+
label: {
|
|
2383
|
+
type: 'string',
|
|
2384
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2385
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2386
|
+
}
|
|
2387
|
+
},
|
|
2388
|
+
required: [
|
|
2389
|
+
'id',
|
|
2390
|
+
'label'
|
|
2391
|
+
],
|
|
2392
|
+
additionalProperties: false
|
|
2393
|
+
},
|
|
2394
|
+
minItems: 1,
|
|
2395
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
2396
|
+
},
|
|
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: {
|
|
838
2421
|
type: 'string',
|
|
839
|
-
description: '
|
|
840
|
-
example: '
|
|
2422
|
+
description: 'Repository name.',
|
|
2423
|
+
example: 'my-app'
|
|
841
2424
|
},
|
|
842
|
-
|
|
2425
|
+
region: {
|
|
843
2426
|
type: 'string',
|
|
844
|
-
description: '
|
|
845
|
-
example: '
|
|
2427
|
+
description: 'Registry region.',
|
|
2428
|
+
example: 'northamerica'
|
|
846
2429
|
},
|
|
847
|
-
|
|
2430
|
+
uri: {
|
|
848
2431
|
type: 'string',
|
|
849
|
-
description: '
|
|
850
|
-
example: '
|
|
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'
|
|
851
2450
|
},
|
|
852
|
-
|
|
853
|
-
type: '
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
example: 100
|
|
2451
|
+
region: {
|
|
2452
|
+
type: 'string',
|
|
2453
|
+
description: 'Registry region.',
|
|
2454
|
+
example: 'northamerica'
|
|
857
2455
|
},
|
|
858
|
-
|
|
2456
|
+
uri: {
|
|
859
2457
|
type: 'string',
|
|
860
|
-
description: '
|
|
861
|
-
example: '
|
|
2458
|
+
description: 'Full URI of the repository.',
|
|
2459
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
862
2460
|
},
|
|
863
|
-
|
|
2461
|
+
tags: {
|
|
864
2462
|
type: 'array',
|
|
865
2463
|
items: {
|
|
866
2464
|
type: 'object',
|
|
867
2465
|
properties: {
|
|
868
|
-
|
|
2466
|
+
name: {
|
|
869
2467
|
type: 'string',
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
2468
|
+
description: 'Tag name.',
|
|
2469
|
+
example: 'latest'
|
|
873
2470
|
},
|
|
874
|
-
|
|
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: {
|
|
2471
|
+
size: {
|
|
960
2472
|
type: 'number',
|
|
961
2473
|
format: 'float',
|
|
962
|
-
description: '
|
|
963
|
-
example:
|
|
2474
|
+
description: 'Size of the tag in bytes.',
|
|
2475
|
+
example: 123456789
|
|
964
2476
|
},
|
|
965
|
-
|
|
2477
|
+
mediaType: {
|
|
966
2478
|
type: 'string',
|
|
967
|
-
description: '
|
|
968
|
-
example: '
|
|
2479
|
+
description: 'Media type of the manifest.',
|
|
2480
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
969
2481
|
},
|
|
970
|
-
|
|
971
|
-
type: 'string',
|
|
972
|
-
description: 'Effective date of the catalog',
|
|
973
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
974
|
-
},
|
|
975
|
-
childItems: {
|
|
2482
|
+
platforms: {
|
|
976
2483
|
type: 'array',
|
|
977
2484
|
items: {
|
|
978
|
-
|
|
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
|
-
]
|
|
2485
|
+
type: 'string'
|
|
996
2486
|
},
|
|
997
|
-
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
|
+
]
|
|
998
2492
|
}
|
|
999
2493
|
},
|
|
2494
|
+
required: [
|
|
2495
|
+
'name',
|
|
2496
|
+
'size'
|
|
2497
|
+
],
|
|
1000
2498
|
additionalProperties: false
|
|
1001
2499
|
},
|
|
1002
|
-
description: '
|
|
2500
|
+
description: 'Array of tags in the repository.'
|
|
1003
2501
|
},
|
|
1004
|
-
|
|
2502
|
+
totalSize: {
|
|
2503
|
+
type: 'number',
|
|
2504
|
+
format: 'float',
|
|
2505
|
+
description: 'Total size of all tags in the repository in bytes.',
|
|
2506
|
+
example: 987654321
|
|
2507
|
+
}
|
|
2508
|
+
},
|
|
2509
|
+
required: [
|
|
2510
|
+
'name',
|
|
2511
|
+
'region',
|
|
2512
|
+
'uri',
|
|
2513
|
+
'tags',
|
|
2514
|
+
'totalSize'
|
|
2515
|
+
],
|
|
2516
|
+
additionalProperties: false
|
|
2517
|
+
};
|
|
2518
|
+
export const RegistryTagSchema = {
|
|
2519
|
+
type: 'object',
|
|
2520
|
+
properties: {
|
|
2521
|
+
name: {
|
|
2522
|
+
type: 'string',
|
|
2523
|
+
description: 'Tag name.',
|
|
2524
|
+
example: 'latest'
|
|
2525
|
+
},
|
|
2526
|
+
digest: {
|
|
2527
|
+
type: 'string',
|
|
2528
|
+
description: 'Manifest digest for pulling by digest.',
|
|
2529
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2530
|
+
},
|
|
2531
|
+
mediaType: {
|
|
2532
|
+
type: 'string',
|
|
2533
|
+
description: 'Media type of the manifest.',
|
|
2534
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
2535
|
+
},
|
|
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.'
|
|
2551
|
+
},
|
|
2552
|
+
layers: {
|
|
1005
2553
|
type: 'array',
|
|
1006
2554
|
items: {
|
|
1007
|
-
type: 'object',
|
|
1008
|
-
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: {
|
|
1047
|
-
type: 'string',
|
|
1048
|
-
description: 'Pretty name of the plan',
|
|
1049
|
-
example: 'Plan A'
|
|
1050
|
-
},
|
|
1051
|
-
prettyPhaseName: {
|
|
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: {
|
|
1083
|
-
type: 'number',
|
|
1084
|
-
format: 'float',
|
|
1085
|
-
description: 'Amount of the invoice item',
|
|
1086
|
-
example: 100
|
|
1087
|
-
},
|
|
1088
|
-
rate: {
|
|
1089
|
-
type: 'number',
|
|
1090
|
-
format: 'float',
|
|
1091
|
-
description: 'Rate of the invoice item',
|
|
1092
|
-
example: 100
|
|
1093
|
-
},
|
|
1094
|
-
currency: {
|
|
2555
|
+
type: 'object',
|
|
2556
|
+
properties: {
|
|
2557
|
+
digest: {
|
|
1095
2558
|
type: 'string',
|
|
1096
|
-
description: '
|
|
1097
|
-
example: '
|
|
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']
|
|
2559
|
+
description: 'Digest of the layer.',
|
|
2560
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
1099
2561
|
},
|
|
1100
|
-
|
|
2562
|
+
size: {
|
|
1101
2563
|
type: 'number',
|
|
1102
2564
|
format: 'float',
|
|
1103
|
-
description: '
|
|
1104
|
-
example:
|
|
1105
|
-
}
|
|
1106
|
-
|
|
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.'
|
|
2575
|
+
},
|
|
2576
|
+
manifests: {
|
|
2577
|
+
type: 'array',
|
|
2578
|
+
items: {
|
|
2579
|
+
type: 'object',
|
|
2580
|
+
properties: {
|
|
2581
|
+
digest: {
|
|
1107
2582
|
type: 'string',
|
|
1108
|
-
description: '
|
|
1109
|
-
example: '
|
|
2583
|
+
description: 'Digest of the manifest.',
|
|
2584
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
1110
2585
|
},
|
|
1111
|
-
|
|
1112
|
-
type: '
|
|
1113
|
-
|
|
1114
|
-
|
|
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.'
|
|
1115
2611
|
},
|
|
1116
|
-
|
|
2612
|
+
layers: {
|
|
1117
2613
|
type: 'array',
|
|
1118
2614
|
items: {
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
2615
|
+
type: 'object',
|
|
2616
|
+
properties: {
|
|
2617
|
+
digest: {
|
|
2618
|
+
type: 'string',
|
|
2619
|
+
description: 'Digest of the layer.',
|
|
2620
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
1125
2621
|
},
|
|
1126
|
-
{
|
|
1127
|
-
type: 'number'
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
additionalProperties: true
|
|
1132
|
-
},
|
|
1133
|
-
{
|
|
1134
|
-
type: 'string'
|
|
2622
|
+
size: {
|
|
2623
|
+
type: 'number',
|
|
2624
|
+
format: 'float',
|
|
2625
|
+
description: 'Size of the layer in bytes.',
|
|
2626
|
+
example: 5678
|
|
1135
2627
|
}
|
|
1136
|
-
|
|
2628
|
+
},
|
|
2629
|
+
required: [
|
|
2630
|
+
'size'
|
|
2631
|
+
],
|
|
2632
|
+
additionalProperties: false
|
|
1137
2633
|
},
|
|
1138
|
-
description: '
|
|
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
|
|
1139
2641
|
}
|
|
1140
2642
|
},
|
|
2643
|
+
required: [
|
|
2644
|
+
'digest'
|
|
2645
|
+
],
|
|
1141
2646
|
additionalProperties: false
|
|
1142
2647
|
},
|
|
1143
|
-
description: '
|
|
1144
|
-
}
|
|
1145
|
-
},
|
|
1146
|
-
additionalProperties: false
|
|
1147
|
-
};
|
|
1148
|
-
export const OrganizationContactInfoSchema = {
|
|
1149
|
-
type: 'object',
|
|
1150
|
-
properties: {
|
|
1151
|
-
address1: {
|
|
1152
|
-
type: 'string',
|
|
1153
|
-
nullable: true,
|
|
1154
|
-
description: 'Street address, P.O. box, c/o',
|
|
1155
|
-
example: '123 Main St.'
|
|
1156
|
-
},
|
|
1157
|
-
address2: {
|
|
1158
|
-
type: 'string',
|
|
1159
|
-
nullable: true,
|
|
1160
|
-
description: 'Apartment, suite, unit, building, floor, etc.',
|
|
1161
|
-
example: 'Suite 100'
|
|
2648
|
+
description: 'Array of manifests for multi-arch images.'
|
|
1162
2649
|
},
|
|
1163
|
-
|
|
1164
|
-
type: '
|
|
1165
|
-
|
|
1166
|
-
description: '
|
|
1167
|
-
example:
|
|
2650
|
+
size: {
|
|
2651
|
+
type: 'number',
|
|
2652
|
+
format: 'float',
|
|
2653
|
+
description: 'Total size of the tag in bytes.',
|
|
2654
|
+
example: 123456789
|
|
1168
2655
|
},
|
|
1169
|
-
|
|
2656
|
+
region: {
|
|
1170
2657
|
type: 'string',
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
example: 'San Francisco'
|
|
2658
|
+
description: 'Registry region.',
|
|
2659
|
+
example: 'northamerica'
|
|
1174
2660
|
},
|
|
1175
|
-
|
|
2661
|
+
repository: {
|
|
1176
2662
|
type: 'string',
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
example: 'CA'
|
|
2663
|
+
description: 'Repository name.',
|
|
2664
|
+
example: 'my-app'
|
|
1180
2665
|
},
|
|
1181
|
-
|
|
2666
|
+
uri: {
|
|
1182
2667
|
type: 'string',
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
2668
|
+
description: 'Full URI of the tag.',
|
|
2669
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
|
|
2670
|
+
}
|
|
2671
|
+
},
|
|
2672
|
+
required: [
|
|
2673
|
+
'name',
|
|
2674
|
+
'digest',
|
|
2675
|
+
'size',
|
|
2676
|
+
'region',
|
|
2677
|
+
'repository',
|
|
2678
|
+
'uri'
|
|
2679
|
+
],
|
|
2680
|
+
additionalProperties: false
|
|
2681
|
+
};
|
|
2682
|
+
export const TicketAttachmentSchema = {
|
|
2683
|
+
type: 'object',
|
|
2684
|
+
properties: {
|
|
2685
|
+
id: {
|
|
1188
2686
|
type: 'string',
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
example: '+1 555 555 5555'
|
|
2687
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2688
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
1192
2689
|
},
|
|
1193
|
-
|
|
2690
|
+
filename: {
|
|
1194
2691
|
type: 'string',
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
example: 'email@example.com'
|
|
2692
|
+
description: 'Original filename as uploaded.',
|
|
2693
|
+
example: 'debug.log'
|
|
1198
2694
|
},
|
|
1199
|
-
|
|
2695
|
+
content_type: {
|
|
1200
2696
|
type: 'string',
|
|
1201
|
-
description: '
|
|
1202
|
-
example: '
|
|
2697
|
+
description: 'MIME content type of the attachment.',
|
|
2698
|
+
example: 'text/plain'
|
|
1203
2699
|
},
|
|
1204
|
-
|
|
1205
|
-
type: '
|
|
1206
|
-
description: '
|
|
1207
|
-
example:
|
|
2700
|
+
size: {
|
|
2701
|
+
type: 'integer',
|
|
2702
|
+
description: 'Size of the attachment in bytes.',
|
|
2703
|
+
example: 12345
|
|
1208
2704
|
}
|
|
1209
2705
|
},
|
|
1210
|
-
required: [
|
|
2706
|
+
required: [
|
|
2707
|
+
'id',
|
|
2708
|
+
'filename',
|
|
2709
|
+
'content_type',
|
|
2710
|
+
'size'
|
|
2711
|
+
],
|
|
1211
2712
|
additionalProperties: false
|
|
1212
2713
|
};
|
|
1213
|
-
export const
|
|
2714
|
+
export const TicketCreateInputSchema = {
|
|
1214
2715
|
type: 'object',
|
|
1215
2716
|
properties: {
|
|
1216
|
-
|
|
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
|
+
]
|
|
2726
|
+
},
|
|
2727
|
+
body: {
|
|
1217
2728
|
type: 'string',
|
|
1218
|
-
maxLength:
|
|
1219
|
-
minLength:
|
|
1220
|
-
pattern: '
|
|
1221
|
-
description: '
|
|
1222
|
-
example: '
|
|
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.'
|
|
1223
2734
|
},
|
|
1224
|
-
|
|
2735
|
+
properties: {
|
|
1225
2736
|
type: 'object',
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
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.'
|
|
1282
|
-
},
|
|
1283
|
-
password: {
|
|
1284
|
-
type: 'string',
|
|
1285
|
-
minLength: 8,
|
|
1286
|
-
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.'
|
|
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
|
+
}
|
|
1287
2743
|
}
|
|
1288
2744
|
},
|
|
1289
|
-
required: [
|
|
2745
|
+
required: [
|
|
2746
|
+
'category',
|
|
2747
|
+
'body'
|
|
2748
|
+
],
|
|
1290
2749
|
additionalProperties: false
|
|
1291
2750
|
};
|
|
1292
|
-
export const
|
|
2751
|
+
export const TicketListResponseSchema = {
|
|
1293
2752
|
type: 'object',
|
|
1294
2753
|
properties: {
|
|
1295
|
-
|
|
1296
|
-
type: '
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
example: 'ACME Corp.'
|
|
1302
|
-
},
|
|
1303
|
-
contactInfo: {
|
|
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.'
|
|
1361
|
-
},
|
|
1362
|
-
id: {
|
|
1363
|
-
type: 'string',
|
|
1364
|
-
format: 'uuid',
|
|
1365
|
-
description: 'Unique identifier of the organization. UUID v4 string in canonical form',
|
|
1366
|
-
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
1367
|
-
},
|
|
1368
|
-
date_created: {
|
|
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'
|
|
1373
|
-
},
|
|
1374
|
-
quota: {
|
|
1375
|
-
type: 'object',
|
|
1376
|
-
properties: {
|
|
1377
|
-
basic_clusters_max: {
|
|
1378
|
-
type: 'integer',
|
|
1379
|
-
minimum: 0,
|
|
1380
|
-
description: 'Maximum number of Basic clusters that can be created.',
|
|
1381
|
-
example: 999
|
|
1382
|
-
},
|
|
1383
|
-
basic_clusters_available: {
|
|
1384
|
-
type: 'integer',
|
|
1385
|
-
description: 'Available number of Basic clusters that can be created.',
|
|
1386
|
-
example: 999
|
|
1387
|
-
},
|
|
1388
|
-
pro_clusters_max: {
|
|
1389
|
-
type: 'integer',
|
|
1390
|
-
minimum: 0,
|
|
1391
|
-
description: 'Maximum number of Pro clusters that can be created.',
|
|
1392
|
-
example: 999
|
|
1393
|
-
},
|
|
1394
|
-
pro_clusters_available: {
|
|
1395
|
-
type: 'integer',
|
|
1396
|
-
description: 'Available number of Pro clusters that can be created.',
|
|
1397
|
-
example: 999
|
|
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: {
|
|
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: {
|
|
1478
2938
|
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.'
|
|
2939
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
2940
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
1484
2941
|
},
|
|
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
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
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: {
|
|
2957
|
+
type: 'string',
|
|
2958
|
+
description: 'First name of the author. Null when not provided.',
|
|
2959
|
+
example: 'Jane'
|
|
2960
|
+
},
|
|
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,37 +3251,173 @@ 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 = {
|
|
1680
3378
|
type: 'object',
|
|
1681
3379
|
properties: {
|
|
1682
|
-
|
|
3380
|
+
hour: {
|
|
1683
3381
|
type: 'string',
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
example: '8897e84c-2ba1-42fa-9d35-964c80a4ff0f'
|
|
3382
|
+
description: 'Hour of the usage',
|
|
3383
|
+
example: '2019-01-01T00:00:00.000Z'
|
|
1687
3384
|
},
|
|
1688
|
-
|
|
3385
|
+
cluster_id: {
|
|
1689
3386
|
type: 'string',
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
3387
|
+
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
3388
|
+
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
1693
3389
|
},
|
|
1694
|
-
|
|
3390
|
+
product: {
|
|
1695
3391
|
type: 'string',
|
|
1696
|
-
description: '
|
|
1697
|
-
example: '
|
|
3392
|
+
description: 'The product the usage is associated with',
|
|
3393
|
+
example: 'cfke_controlplane'
|
|
3394
|
+
},
|
|
3395
|
+
value: {
|
|
3396
|
+
type: 'number',
|
|
3397
|
+
format: 'float',
|
|
3398
|
+
description: 'Consumption',
|
|
3399
|
+
example: 4
|
|
1698
3400
|
},
|
|
1699
|
-
|
|
3401
|
+
price: {
|
|
3402
|
+
type: 'number',
|
|
3403
|
+
format: 'float',
|
|
3404
|
+
description: 'Price per unit',
|
|
3405
|
+
example: 0.01
|
|
3406
|
+
},
|
|
3407
|
+
total: {
|
|
1700
3408
|
type: 'number',
|
|
1701
|
-
format: 'float'
|
|
3409
|
+
format: 'float',
|
|
3410
|
+
description: 'Total cost'
|
|
1702
3411
|
}
|
|
1703
3412
|
},
|
|
1704
|
-
required: [
|
|
3413
|
+
required: [
|
|
3414
|
+
'hour',
|
|
3415
|
+
'cluster_id',
|
|
3416
|
+
'product',
|
|
3417
|
+
'value',
|
|
3418
|
+
'price',
|
|
3419
|
+
'total'
|
|
3420
|
+
],
|
|
1705
3421
|
additionalProperties: false
|
|
1706
3422
|
};
|
|
1707
3423
|
export const UserCreateInputSchema = {
|
|
@@ -1736,22 +3452,34 @@ export const UserCreateInputSchema = {
|
|
|
1736
3452
|
password: {
|
|
1737
3453
|
type: 'string',
|
|
1738
3454
|
minLength: 8,
|
|
1739
|
-
description: 'User password. Must be at least 8 characters long
|
|
3455
|
+
description: 'User password. Must be at least 8 characters long.'
|
|
1740
3456
|
},
|
|
1741
3457
|
status: {
|
|
1742
3458
|
type: 'string',
|
|
1743
3459
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1744
3460
|
example: 'active',
|
|
1745
|
-
enum: [
|
|
3461
|
+
enum: [
|
|
3462
|
+
'active',
|
|
3463
|
+
'inactive'
|
|
3464
|
+
]
|
|
1746
3465
|
},
|
|
1747
3466
|
role: {
|
|
1748
3467
|
type: 'string',
|
|
1749
|
-
description:
|
|
3468
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1750
3469
|
example: 'User',
|
|
1751
|
-
enum: [
|
|
3470
|
+
enum: [
|
|
3471
|
+
'Administrator',
|
|
3472
|
+
'User'
|
|
3473
|
+
]
|
|
1752
3474
|
}
|
|
1753
3475
|
},
|
|
1754
|
-
required: [
|
|
3476
|
+
required: [
|
|
3477
|
+
'email',
|
|
3478
|
+
'first_name',
|
|
3479
|
+
'last_name',
|
|
3480
|
+
'code',
|
|
3481
|
+
'password'
|
|
3482
|
+
],
|
|
1755
3483
|
additionalProperties: false
|
|
1756
3484
|
};
|
|
1757
3485
|
export const UserSchema = {
|
|
@@ -1779,15 +3507,21 @@ export const UserSchema = {
|
|
|
1779
3507
|
},
|
|
1780
3508
|
role: {
|
|
1781
3509
|
type: 'string',
|
|
1782
|
-
description:
|
|
3510
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1783
3511
|
example: 'User',
|
|
1784
|
-
enum: [
|
|
3512
|
+
enum: [
|
|
3513
|
+
'Administrator',
|
|
3514
|
+
'User'
|
|
3515
|
+
]
|
|
1785
3516
|
},
|
|
1786
3517
|
status: {
|
|
1787
3518
|
type: 'string',
|
|
1788
3519
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1789
3520
|
example: 'active',
|
|
1790
|
-
enum: [
|
|
3521
|
+
enum: [
|
|
3522
|
+
'active',
|
|
3523
|
+
'inactive'
|
|
3524
|
+
]
|
|
1791
3525
|
},
|
|
1792
3526
|
id: {
|
|
1793
3527
|
type: 'string',
|
|
@@ -1800,31 +3534,17 @@ export const UserSchema = {
|
|
|
1800
3534
|
format: 'date-time',
|
|
1801
3535
|
description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
|
|
1802
3536
|
example: '2023-11-02T16:08:14.338Z'
|
|
1803
|
-
},
|
|
1804
|
-
cluster_permissions: {
|
|
1805
|
-
type: 'array',
|
|
1806
|
-
items: {
|
|
1807
|
-
type: 'object',
|
|
1808
|
-
properties: {
|
|
1809
|
-
cluster_id: {
|
|
1810
|
-
type: 'string',
|
|
1811
|
-
format: 'uuid',
|
|
1812
|
-
description: 'Unique identifier of the cluster. UUID v4 string in canonical form',
|
|
1813
|
-
example: '035ce46d-44d8-4e58-a8a2-b0192d1c27df'
|
|
1814
|
-
},
|
|
1815
|
-
permissions: {
|
|
1816
|
-
type: 'string',
|
|
1817
|
-
description: 'User permissions to access the cluster. Can be `readwrite` or `readonly`.',
|
|
1818
|
-
example: 'readwrite',
|
|
1819
|
-
enum: ['readwrite', 'readonly']
|
|
1820
|
-
}
|
|
1821
|
-
},
|
|
1822
|
-
required: ['cluster_id', 'permissions'],
|
|
1823
|
-
additionalProperties: false
|
|
1824
|
-
}
|
|
1825
3537
|
}
|
|
1826
3538
|
},
|
|
1827
|
-
required: [
|
|
3539
|
+
required: [
|
|
3540
|
+
'email',
|
|
3541
|
+
'first_name',
|
|
3542
|
+
'last_name',
|
|
3543
|
+
'role',
|
|
3544
|
+
'status',
|
|
3545
|
+
'id',
|
|
3546
|
+
'date_created'
|
|
3547
|
+
],
|
|
1828
3548
|
additionalProperties: false
|
|
1829
3549
|
};
|
|
1830
3550
|
export const UserUpdateInputSchema = {
|
|
@@ -1852,15 +3572,21 @@ export const UserUpdateInputSchema = {
|
|
|
1852
3572
|
},
|
|
1853
3573
|
role: {
|
|
1854
3574
|
type: 'string',
|
|
1855
|
-
description:
|
|
3575
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1856
3576
|
example: 'User',
|
|
1857
|
-
enum: [
|
|
3577
|
+
enum: [
|
|
3578
|
+
'Administrator',
|
|
3579
|
+
'User'
|
|
3580
|
+
]
|
|
1858
3581
|
},
|
|
1859
3582
|
status: {
|
|
1860
3583
|
type: 'string',
|
|
1861
3584
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1862
3585
|
example: 'active',
|
|
1863
|
-
enum: [
|
|
3586
|
+
enum: [
|
|
3587
|
+
'active',
|
|
3588
|
+
'inactive'
|
|
3589
|
+
]
|
|
1864
3590
|
}
|
|
1865
3591
|
},
|
|
1866
3592
|
additionalProperties: false
|