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