@cloudfleet/sdk 0.0.1-3c16772 → 0.0.1-3d290f0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/client/client.gen.d.ts +3 -0
  2. package/dist/client/client.gen.d.ts.map +1 -0
  3. package/dist/client/client.gen.js +205 -0
  4. package/dist/client/client.gen.js.map +1 -0
  5. package/dist/client/index.d.ts +9 -0
  6. package/dist/client/index.d.ts.map +1 -0
  7. package/dist/client/index.js +7 -0
  8. package/dist/client/index.js.map +1 -0
  9. package/dist/client/types.gen.d.ts +125 -0
  10. package/dist/client/types.gen.d.ts.map +1 -0
  11. package/dist/client/types.gen.js +3 -0
  12. package/dist/client/types.gen.js.map +1 -0
  13. package/dist/client/utils.gen.d.ts +34 -0
  14. package/dist/client/utils.gen.d.ts.map +1 -0
  15. package/dist/client/utils.gen.js +231 -0
  16. package/dist/client/utils.gen.js.map +1 -0
  17. package/dist/client.gen.d.ts +13 -0
  18. package/dist/client.gen.d.ts.map +1 -0
  19. package/dist/client.gen.js +6 -0
  20. package/dist/client.gen.js.map +1 -0
  21. package/dist/core/auth.gen.d.ts +19 -0
  22. package/dist/core/auth.gen.d.ts.map +1 -0
  23. package/dist/core/auth.gen.js +15 -0
  24. package/dist/core/auth.gen.js.map +1 -0
  25. package/dist/core/bodySerializer.gen.d.ts +18 -0
  26. package/dist/core/bodySerializer.gen.d.ts.map +1 -0
  27. package/dist/core/bodySerializer.gen.js +58 -0
  28. package/dist/core/bodySerializer.gen.js.map +1 -0
  29. package/dist/core/params.gen.d.ts +34 -0
  30. package/dist/core/params.gen.d.ts.map +1 -0
  31. package/dist/core/params.gen.js +89 -0
  32. package/dist/core/params.gen.js.map +1 -0
  33. package/dist/core/pathSerializer.gen.d.ts +34 -0
  34. package/dist/core/pathSerializer.gen.d.ts.map +1 -0
  35. package/dist/core/pathSerializer.gen.js +115 -0
  36. package/dist/core/pathSerializer.gen.js.map +1 -0
  37. package/dist/core/queryKeySerializer.gen.d.ts +19 -0
  38. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
  39. package/dist/core/queryKeySerializer.gen.js +100 -0
  40. package/dist/core/queryKeySerializer.gen.js.map +1 -0
  41. package/dist/core/serverSentEvents.gen.d.ts +72 -0
  42. package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
  43. package/dist/core/serverSentEvents.gen.js +136 -0
  44. package/dist/core/serverSentEvents.gen.js.map +1 -0
  45. package/dist/core/types.gen.d.ts +79 -0
  46. package/dist/core/types.gen.d.ts.map +1 -0
  47. package/dist/core/types.gen.js +3 -0
  48. package/dist/core/types.gen.js.map +1 -0
  49. package/dist/core/utils.gen.d.ts +20 -0
  50. package/dist/core/utils.gen.d.ts.map +1 -0
  51. package/dist/core/utils.gen.js +88 -0
  52. package/dist/core/utils.gen.js.map +1 -0
  53. package/dist/index.d.ts +3 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +3 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/schemas.gen.d.ts +899 -1054
  58. package/dist/schemas.gen.d.ts.map +1 -1
  59. package/dist/schemas.gen.js +915 -1097
  60. package/dist/schemas.gen.js.map +1 -1
  61. package/dist/sdk.gen.d.ts +220 -142
  62. package/dist/sdk.gen.d.ts.map +1 -1
  63. package/dist/sdk.gen.js +302 -145
  64. package/dist/sdk.gen.js.map +1 -1
  65. package/dist/services/kubernetes/api.d.ts +196 -0
  66. package/dist/services/kubernetes/api.d.ts.map +1 -0
  67. package/dist/services/kubernetes/api.js +140 -0
  68. package/dist/services/kubernetes/api.js.map +1 -0
  69. package/dist/services/kubernetes/index.d.ts +44 -0
  70. package/dist/services/kubernetes/index.d.ts.map +1 -0
  71. package/dist/services/kubernetes/index.js +68 -0
  72. package/dist/services/kubernetes/index.js.map +1 -0
  73. package/dist/services/kubernetes/types.d.ts +1335 -0
  74. package/dist/services/kubernetes/types.d.ts.map +1 -0
  75. package/dist/services/kubernetes/types.js +2 -0
  76. package/dist/services/kubernetes/types.js.map +1 -0
  77. package/dist/types.gen.d.ts +920 -956
  78. package/dist/types.gen.d.ts.map +1 -1
  79. package/dist/zod.gen.d.ts +1884 -2739
  80. package/dist/zod.gen.d.ts.map +1 -1
  81. package/dist/zod.gen.js +924 -900
  82. package/dist/zod.gen.js.map +1 -1
  83. package/package.json +8 -5
@@ -1,4 +1,262 @@
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: ['ad_nrt', 'ae_trn', 'al_tin', 'am_tin', 'ao_tin', 'ar_cuit', 'at_vat', 'au_abn', 'au_arn', 'ba_tin', 'bb_tin', 'be_vat', 'bg_uic', 'bg_vat', 'bh_vat', 'bo_tin', 'br_cnpj', 'br_cpf', 'bs_tin', 'by_tin', 'ca_bn', 'ca_gst_hst', 'ca_pst_bc', 'ca_pst_mb', 'ca_pst_sk', 'ca_qst', 'cd_nif', 'ch_uid', 'ch_vat', 'cl_tin', 'cn_tin', 'co_nit', 'cr_tin', 'cy_vat', 'cz_vat', 'de_stn', 'de_vat', 'dk_vat', 'do_rcn', 'ec_ruc', 'ee_vat', 'eg_tin', 'es_cif', 'es_vat', 'eu_oss_vat', 'fi_vat', 'fr_vat', 'gb_vat', 'ge_vat', 'gn_nif', 'gr_vat', 'hk_br', 'hr_oib', 'hr_vat', 'hu_tin', 'hu_vat', 'id_npwp', 'ie_vat', 'il_vat', 'in_gst', 'is_vat', 'it_vat', 'jp_cn', 'jp_rn', 'jp_trn', 'ke_pin', 'kh_tin', 'kr_brn', 'kz_bin', 'li_uid', 'li_vat', 'lt_vat', 'lu_vat', 'lv_vat', 'ma_vat', 'md_vat', 'me_pib', 'mk_vat', 'mr_nif', 'mt_vat', 'mx_rfc', 'my_frp', 'my_itn', 'my_sst', 'ng_tin', 'nl_vat', 'no_vat', 'no_voec', 'np_pan', 'nz_gst', 'om_vat', 'pe_ruc', 'ph_tin', 'pl_vat', 'pt_vat', 'ro_tin', 'ro_vat', 'rs_pib', 'ru_inn', 'ru_kpp', 'sa_vat', 'se_vat', 'sg_gst', 'sg_uen', 'si_tin', 'si_vat', 'sk_vat', 'sn_ninea', 'sr_fin', 'sv_nit', 'th_vat', 'tj_tin', 'tr_tin', 'tw_vat', 'tz_vat', 'ua_vat', 'ug_tin', 'us_ein', 'uy_ruc', 'uz_tin', 'uz_vat', 've_rif', 'vn_tin', 'xi_vat', 'za_vat', 'zm_tin', 'zw_tin', '']
78
+ }
79
+ },
80
+ required: ['email', 'individual_name'],
81
+ additionalProperties: false
82
+ };
83
+ export const BillingCreditsSchema = {
84
+ type: 'object',
85
+ properties: {
86
+ id: {
87
+ type: 'string',
88
+ description: 'Generated unique identifier of the promotional code.',
89
+ example: '7kUZnH7nnKUFfvc4NK2KQF'
90
+ },
91
+ type: {
92
+ type: 'string',
93
+ description: 'Type of the promotional code.',
94
+ example: 'credit',
95
+ enum: ['credit', 'discount']
96
+ },
97
+ date_start: {
98
+ type: 'string',
99
+ format: 'date-time',
100
+ description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
101
+ example: '2023-12-20T13:53:32.000Z'
102
+ },
103
+ date_end: {
104
+ type: 'string',
105
+ format: 'date-time',
106
+ description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
107
+ example: '2023-12-20T13:53:32.000Z'
108
+ },
109
+ code: {
110
+ type: 'string',
111
+ description: 'Promotional code used by the customer.',
112
+ example: 'VQ4SCMB'
113
+ },
114
+ description: {
115
+ type: 'string',
116
+ description: 'Description of the promotional code.',
117
+ example: '10% off on all products'
118
+ },
119
+ value_total: {
120
+ type: 'number',
121
+ format: 'float',
122
+ description: 'Total value of the promotional code.',
123
+ example: 10
124
+ },
125
+ value_remaining: {
126
+ type: 'number',
127
+ format: 'float',
128
+ description: 'Remaining value of the promotional code.',
129
+ example: 8
130
+ }
131
+ },
132
+ required: ['type', 'date_start', 'code', 'value_total'],
133
+ additionalProperties: false
134
+ };
135
+ export const ChartCreateInputSchema = {
136
+ type: 'object',
137
+ properties: {
138
+ values: {
139
+ type: 'string',
140
+ description: 'Values to be used in the chart encoded as a JSON string.'
141
+ },
142
+ version_channel: {
143
+ type: 'string',
144
+ 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-]+)*))?$',
145
+ description: 'Desired version range or channel for the chart.',
146
+ example: '2.x.x-cfke.x'
147
+ },
148
+ name: {
149
+ type: 'string',
150
+ maxLength: 63,
151
+ minLength: 1,
152
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
153
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
154
+ example: 'postgresql-0'
155
+ },
156
+ namespace: {
157
+ type: 'string',
158
+ maxLength: 63,
159
+ minLength: 1,
160
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
161
+ description: 'Namespace of the chart deployment',
162
+ example: 'default'
163
+ },
164
+ chart: {
165
+ type: 'string',
166
+ maxLength: 63,
167
+ minLength: 1,
168
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
169
+ description: 'Name of the chart listing',
170
+ example: 'postgresql'
171
+ }
172
+ },
173
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart'],
174
+ additionalProperties: false
175
+ };
176
+ export const ChartSchema = {
177
+ type: 'object',
178
+ properties: {
179
+ values: {
180
+ type: 'string',
181
+ description: 'Values to be used in the chart encoded as a JSON string.'
182
+ },
183
+ version_channel: {
184
+ type: 'string',
185
+ 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-]+)*))?$',
186
+ description: 'Desired version range or channel for the chart.',
187
+ example: '2.x.x-cfke.x'
188
+ },
189
+ name: {
190
+ type: 'string',
191
+ maxLength: 63,
192
+ minLength: 1,
193
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
194
+ description: 'Unique identifier of the chart deployment aka name of the helm release.',
195
+ example: 'postgresql-0'
196
+ },
197
+ namespace: {
198
+ type: 'string',
199
+ maxLength: 63,
200
+ minLength: 1,
201
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
202
+ description: 'Namespace of the chart deployment',
203
+ example: 'default'
204
+ },
205
+ chart: {
206
+ type: 'string',
207
+ maxLength: 63,
208
+ minLength: 1,
209
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
210
+ description: 'Name of the chart listing',
211
+ example: 'postgresql'
212
+ },
213
+ status: {
214
+ type: 'string',
215
+ description: 'Status of the chart deployment.',
216
+ example: 'active',
217
+ enum: ['InstallSucceeded', 'InstallFailed', 'UpgradeSucceeded', 'UpgradeFailed', 'TestSucceeded', 'TestFailed', 'RollbackSucceeded', 'RollbackFailed', 'UninstallSucceeded', 'UninstallFailed', 'ArtifactFailed', 'DependencyNotReady', 'Progressing', 'SourceNotReady']
218
+ },
219
+ version_current: {
220
+ type: 'string',
221
+ description: 'Current version of the chart deployment.',
222
+ example: '2.1.33-cfke.11'
223
+ },
224
+ created_at: {
225
+ type: 'string',
226
+ description: 'Creation date and time of the chart deployment.',
227
+ example: '2024-09-12T09:11:27Z'
228
+ },
229
+ updated_at: {
230
+ type: 'string',
231
+ description: 'Last update date and time of the chart deployment.',
232
+ example: '2024-09-12T09:11:27Z'
233
+ },
234
+ ready: {
235
+ type: 'boolean',
236
+ description: 'Indicates if the chart deployment is ready to be used.',
237
+ example: true
238
+ }
239
+ },
240
+ required: ['values', 'version_channel', 'name', 'namespace', 'chart', 'status', 'version_current', 'created_at', 'updated_at', 'ready'],
241
+ additionalProperties: false
242
+ };
243
+ export const ChartUpdateInputSchema = {
244
+ type: 'object',
245
+ properties: {
246
+ values: {
247
+ type: 'string',
248
+ description: 'Values to be used in the chart encoded as a JSON string.'
249
+ },
250
+ version_channel: {
251
+ type: 'string',
252
+ 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-]+)*))?$',
253
+ description: 'Desired version range or channel for the chart.',
254
+ example: '2.x.x-cfke.x'
255
+ }
256
+ },
257
+ required: ['values', 'version_channel'],
258
+ additionalProperties: false
259
+ };
2
260
  export const ClusterCreateInputSchema = {
3
261
  type: 'object',
4
262
  properties: {
@@ -10,25 +268,26 @@ export const ClusterCreateInputSchema = {
10
268
  description: 'Name of the cluster.',
11
269
  example: 'production-cluster'
12
270
  },
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
271
  tier: {
21
272
  type: 'string',
22
273
  description: 'Tier of the cluster.',
23
274
  example: 'pro',
24
275
  enum: ['basic', 'pro']
25
276
  },
277
+ region: {
278
+ type: 'string',
279
+ description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
280
+ default: 'staging',
281
+ example: 'northamerica-central-1a',
282
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
283
+ },
26
284
  version_channel: {
27
285
  type: 'string',
28
286
  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
287
  description: 'Version of the kubernetes cluster.',
30
288
  default: '1.x.x-cfke.x',
31
- example: '1.29.x-cfke.x'
289
+ example: '1.x.x-cfke.x',
290
+ enum: ['1.x.x-cfke.x', '1.31.x-cfke.x', '1.32.x-cfke.x', '1.33.x-cfke.x']
32
291
  }
33
292
  },
34
293
  required: ['name', 'tier'],
@@ -65,7 +324,7 @@ MIIC0DCCAbigAwIBAgI...`
65
324
  kubernetes: {
66
325
  type: 'string',
67
326
  description: 'Kubernetes version of the cluster.',
68
- example: '1.29.3'
327
+ example: '1.33.7'
69
328
  },
70
329
  tailscale: {
71
330
  type: 'string',
@@ -76,9 +335,14 @@ MIIC0DCCAbigAwIBAgI...`
76
335
  type: 'string',
77
336
  description: 'Containerd version of the cluster.',
78
337
  example: '1.7.19'
338
+ },
339
+ nvidia_driver: {
340
+ type: 'string',
341
+ description: 'NVIDIA driver version of the cluster.',
342
+ example: '565.0.0'
79
343
  }
80
344
  },
81
- required: ['kubernetes', 'tailscale', 'containerd'],
345
+ required: ['kubernetes', 'tailscale', 'containerd', 'nvidia_driver'],
82
346
  additionalProperties: false,
83
347
  description: 'Versions of the different components of the cluster.'
84
348
  },
@@ -120,25 +384,18 @@ export const ClusterSchema = {
120
384
  description: 'Name of the cluster.',
121
385
  example: 'production-cluster'
122
386
  },
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
387
  tier: {
131
388
  type: 'string',
132
389
  description: 'Tier of the cluster.',
133
390
  example: 'pro',
134
391
  enum: ['basic', 'pro']
135
392
  },
136
- version_channel: {
393
+ region: {
137
394
  type: 'string',
138
- 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-]+)*))?$',
139
- description: 'Version of the kubernetes cluster.',
140
- default: '1.x.x-cfke.x',
141
- example: '1.29.x-cfke.x'
395
+ description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
396
+ default: 'staging',
397
+ example: 'northamerica-central-1a',
398
+ enum: ['staging', 'northamerica-central-1', 'europe-central-1a', 'northamerica-central-1a']
142
399
  },
143
400
  id: {
144
401
  type: 'string',
@@ -150,7 +407,7 @@ export const ClusterSchema = {
150
407
  type: 'string',
151
408
  description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
152
409
  example: 'active',
153
- enum: ['active', 'deleted', 'creating', 'deployed', 'failed', 'updating']
410
+ enum: ['active', 'disabled', 'deleted', 'creating', 'deployed', 'failed', 'updating']
154
411
  },
155
412
  endpoint: {
156
413
  anyOf: [
@@ -175,7 +432,7 @@ MIIC0DCCAbigAwIBAgI...`
175
432
  version_current: {
176
433
  type: 'string',
177
434
  description: 'Current version of the cluster.',
178
- example: '1.29.3-cfke.52'
435
+ example: '1.33.7-cfke.264'
179
436
  },
180
437
  created_at: {
181
438
  type: 'string',
@@ -191,6 +448,12 @@ MIIC0DCCAbigAwIBAgI...`
191
448
  type: 'boolean',
192
449
  description: 'Indicates if the cluster is ready to be used.',
193
450
  example: true
451
+ },
452
+ version_channel: {
453
+ type: 'string',
454
+ 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-]+)*))?$',
455
+ description: 'Version of the kubernetes cluster.',
456
+ example: '1.x.x-cfke.x'
194
457
  }
195
458
  },
196
459
  required: ['name', 'tier', 'id', 'status'],
@@ -207,13 +470,20 @@ export const ClusterUpdateInputSchema = {
207
470
  description: 'Name of the cluster.',
208
471
  example: 'production-cluster'
209
472
  },
473
+ tier: {
474
+ type: 'string',
475
+ description: 'Tier of the cluster.',
476
+ example: 'pro',
477
+ enum: ['basic', 'pro']
478
+ },
210
479
  version_channel: {
211
480
  type: 'string',
212
481
  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
482
  description: 'Version of the kubernetes cluster.',
214
- example: '1.29.x-cfke.x'
483
+ example: '1.x.x-cfke.x'
215
484
  }
216
485
  },
486
+ required: ['tier'],
217
487
  additionalProperties: false
218
488
  };
219
489
  export const FleetCreateInputSchema = {
@@ -249,34 +519,19 @@ export const FleetCreateInputSchema = {
249
519
  additionalProperties: false
250
520
  },
251
521
  hetzner: {
252
- oneOf: [
253
- {
254
- type: 'object',
255
- properties: {
256
- enabled: {
257
- type: 'boolean',
258
- default: true
259
- },
260
- apiKey: {
261
- type: 'string'
262
- }
263
- },
264
- additionalProperties: false
522
+ type: 'object',
523
+ properties: {
524
+ enabled: {
525
+ type: 'boolean',
526
+ default: true
265
527
  },
266
- {
267
- type: 'object',
268
- properties: {
269
- apiKey: {
270
- type: 'string'
271
- },
272
- enabled: {
273
- type: 'boolean',
274
- default: true
275
- }
276
- },
277
- additionalProperties: false
528
+ apiKey: {
529
+ type: 'string',
530
+ description: 'Hetzner Cloud API key with read / write access'
278
531
  }
279
- ]
532
+ },
533
+ required: ['apiKey'],
534
+ additionalProperties: false
280
535
  },
281
536
  aws: {
282
537
  type: 'object',
@@ -300,14 +555,9 @@ export const FleetCreateInputSchema = {
300
555
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
301
556
  description: 'Unique identifier of the kubernetes fleet.',
302
557
  example: 'new-clouds-fleet'
303
- },
304
- type: {
305
- type: 'string',
306
- description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
307
- enum: ['managed', 'connected']
308
558
  }
309
559
  },
310
- required: ['id', 'type'],
560
+ required: ['id'],
311
561
  additionalProperties: false
312
562
  };
313
563
  export const FleetSchema = {
@@ -343,34 +593,19 @@ export const FleetSchema = {
343
593
  additionalProperties: false
344
594
  },
345
595
  hetzner: {
346
- oneOf: [
347
- {
348
- type: 'object',
349
- properties: {
350
- enabled: {
351
- type: 'boolean',
352
- default: true
353
- },
354
- apiKey: {
355
- type: 'string'
356
- }
357
- },
358
- additionalProperties: false
596
+ type: 'object',
597
+ properties: {
598
+ enabled: {
599
+ type: 'boolean',
600
+ default: true
359
601
  },
360
- {
361
- type: 'object',
362
- properties: {
363
- apiKey: {
364
- type: 'string'
365
- },
366
- enabled: {
367
- type: 'boolean',
368
- default: true
369
- }
370
- },
371
- additionalProperties: false
602
+ apiKey: {
603
+ type: 'string',
604
+ description: 'Hetzner Cloud API key with read / write access'
372
605
  }
373
- ]
606
+ },
607
+ required: ['apiKey'],
608
+ additionalProperties: false
374
609
  },
375
610
  aws: {
376
611
  type: 'object',
@@ -394,14 +629,9 @@ export const FleetSchema = {
394
629
  pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
395
630
  description: 'Unique identifier of the kubernetes fleet.',
396
631
  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
632
  }
403
633
  },
404
- required: ['id', 'type'],
634
+ required: ['id'],
405
635
  additionalProperties: false
406
636
  };
407
637
  export const FleetUpdateInputSchema = {
@@ -437,34 +667,19 @@ export const FleetUpdateInputSchema = {
437
667
  additionalProperties: false
438
668
  },
439
669
  hetzner: {
440
- oneOf: [
441
- {
442
- type: 'object',
443
- properties: {
444
- enabled: {
445
- type: 'boolean',
446
- default: true
447
- },
448
- apiKey: {
449
- type: 'string'
450
- }
451
- },
452
- additionalProperties: false
453
- },
454
- {
455
- type: 'object',
456
- properties: {
457
- apiKey: {
458
- type: 'string'
459
- },
460
- enabled: {
461
- type: 'boolean',
462
- default: true
463
- }
464
- },
465
- additionalProperties: false
670
+ type: 'object',
671
+ properties: {
672
+ enabled: {
673
+ type: 'boolean',
674
+ default: true
675
+ },
676
+ apiKey: {
677
+ type: 'string',
678
+ description: 'Hetzner Cloud API key with read / write access'
466
679
  }
467
- ]
680
+ },
681
+ required: ['apiKey'],
682
+ additionalProperties: false
468
683
  },
469
684
  aws: {
470
685
  type: 'object',
@@ -484,276 +699,6 @@ export const FleetUpdateInputSchema = {
484
699
  },
485
700
  additionalProperties: false
486
701
  };
487
- export const InfrastructureFilterSchema = {
488
- type: 'object',
489
- properties: {
490
- version: {
491
- type: 'integer',
492
- description: 'Version of the infrastructure filter definition. Currently only version 1 is supported.',
493
- default: 1,
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
564
- },
565
- accelerator_memory_min: {
566
- type: 'number',
567
- format: 'float',
568
- description: "Minimum amount 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",
569
- example: 40
570
- },
571
- accelerator_memory_max: {
572
- type: 'number',
573
- format: 'float',
574
- description: "Maximum amount 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",
575
- example: 80
576
- },
577
- memory_min: {
578
- type: 'integer',
579
- minimum: 0,
580
- description: 'Minimum amount of RAM in gibibytes (GiB)',
581
- example: 32
582
- },
583
- memory_max: {
584
- type: 'integer',
585
- minimum: 0,
586
- description: 'Maximum amount of RAM in gibibytes (GiB)',
587
- example: 64
588
- },
589
- vcpu_min: {
590
- type: 'integer',
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
594
- },
595
- vcpu_max: {
596
- type: 'integer',
597
- minimum: 1,
598
- description: 'Maximum 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.',
599
- example: 128
600
- },
601
- storage_total_min: {
602
- type: 'number',
603
- format: 'float',
604
- minimum: 10,
605
- description: 'Minimum total storage in GiB (attached and local)',
606
- example: 128
607
- },
608
- storage_total_max: {
609
- type: 'number',
610
- format: 'float',
611
- minimum: 10,
612
- description: 'Maximum total storage in GiB (attached and local)',
613
- example: 256
614
- },
615
- storage_local_min: {
616
- type: 'number',
617
- format: 'float',
618
- description: 'Minimum volume of directly attached, block-device local storage in gibibytes (GiB)',
619
- example: 24
620
- },
621
- storage_local_max: {
622
- type: 'number',
623
- format: 'float',
624
- description: 'Maximum volume of directly attached, block-device local storage in gibibytes (GiB)',
625
- example: 128
626
- },
627
- price_min: {
628
- type: 'number',
629
- format: 'float',
630
- description: 'Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
631
- example: 10
632
- },
633
- price_max: {
634
- type: 'number',
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
638
- }
639
- },
640
- additionalProperties: false
641
- };
642
- export const InfrastructureInstanceSchema = {
643
- type: 'object',
644
- properties: {
645
- sku: {
646
- type: 'string',
647
- description: 'Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.',
648
- example: 'AWS-EU-WEST-1C-P4D.24XLARGE'
649
- },
650
- provider: {
651
- type: 'string',
652
- description: 'Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
653
- example: 'AWS'
654
- },
655
- region: {
656
- type: 'string',
657
- description: 'Normalized region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
658
- example: 'europe'
659
- },
660
- sub_region: {
661
- type: 'string',
662
- description: 'Normalized sub-region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
663
- example: 'west'
664
- },
665
- csp_region: {
666
- type: 'string',
667
- description: 'Region as defined by the cloud service provider',
668
- example: 'eu-west-1'
669
- },
670
- csp_zone: {
671
- type: 'string',
672
- description: 'Availability zone as defined by the cloud service provider',
673
- example: 'eu-west-1a'
674
- },
675
- instance_type: {
676
- type: 'string',
677
- description: 'Instance / VM type as defined by the cloud service provider',
678
- example: 'p4d.24xlarge'
679
- },
680
- architecture: {
681
- type: 'string',
682
- description: 'Instance CPU architecture',
683
- example: 'amd64'
684
- },
685
- os: {
686
- type: 'string',
687
- description: 'Instance operating system',
688
- example: 'linux'
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
709
- },
710
- accelerator_name: {
711
- type: 'string',
712
- description: "Normalized model name of accelerator. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field",
713
- example: 'A100'
714
- },
715
- accelerator_manufacturer: {
716
- type: 'string',
717
- description: "Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
718
- example: 'NVIDIA'
719
- },
720
- accelerator_count: {
721
- type: 'integer',
722
- description: 'Number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
723
- example: 8
724
- },
725
- accelerator_memory: {
726
- type: 'number',
727
- format: 'float',
728
- description: "Ammount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
729
- example: 40
730
- },
731
- pods_capacity: {
732
- type: 'number',
733
- format: 'float',
734
- description: 'Maximum number of pods that can be run on this instance type.',
735
- example: 110
736
- },
737
- capacity_type: {
738
- type: 'string',
739
- description: 'Capacity type of the instance. E.g. `on-demand`, `spot`.',
740
- example: 'on-demand'
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
752
- }
753
- },
754
- required: ['sku', 'provider', 'region', 'sub_region', 'csp_region', 'csp_zone', 'instance_type', 'architecture', 'os', 'vcpu', 'memory', 'local_storage', 'price'],
755
- additionalProperties: false
756
- };
757
702
  export const InviteSchema = {
758
703
  type: 'object',
759
704
  properties: {
@@ -794,23 +739,18 @@ export const InvoiceSchema = {
794
739
  properties: {
795
740
  id: {
796
741
  type: 'string',
797
- format: 'uuid',
798
- description: 'Unique identifier of the invoice. UUID v4 string in canonical form',
799
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
742
+ description: 'Unique identifier of the invoice.',
743
+ example: 'in_1234567890xCrwxghOTj1234'
800
744
  },
801
- organizationId: {
802
- type: 'string',
803
- format: 'uuid',
804
- description: 'Unique identifier of the organization. UUID v4 string in canonical form',
805
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
745
+ number: {
746
+ type: 'string'
806
747
  },
807
748
  status: {
808
749
  type: 'string',
809
750
  description: 'Status of the invoice',
810
- example: 'DRAFT',
811
- enum: ['DRAFT', 'COMMITTED', 'VOID']
751
+ example: 'paid'
812
752
  },
813
- amount: {
753
+ total: {
814
754
  type: 'number',
815
755
  format: 'float',
816
756
  description: 'Total amount of the invoice',
@@ -819,480 +759,192 @@ export const InvoiceSchema = {
819
759
  currency: {
820
760
  type: 'string',
821
761
  description: 'Currency of the invoice',
822
- example: 'USD',
823
- 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']
824
- },
825
- creditAdj: {
826
- type: 'number',
827
- format: 'float',
828
- description: 'Total amount of credit adjustments',
829
- example: 0
830
- },
831
- refundAdj: {
832
- type: 'number',
833
- format: 'float',
834
- description: 'Total amount of refund adjustments',
835
- example: 0
836
- },
837
- invoiceDate: {
838
- type: 'string',
839
- description: 'Date of the invoice',
840
- example: '2019-01-01T00:00:00.000Z'
762
+ example: 'usd'
841
763
  },
842
- targetDate: {
764
+ created: {
843
765
  type: 'string',
844
- description: 'Target date of the invoice',
845
- example: '2019-01-01T00:00:00.000Z'
766
+ format: 'date-time',
767
+ description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
768
+ example: '2023-12-20T13:53:32.000Z'
846
769
  },
847
- invoiceNumber: {
770
+ period_start: {
848
771
  type: 'string',
849
- description: 'Number of the invoice',
850
- example: 'INV-0001'
851
- },
852
- balance: {
853
- type: 'number',
854
- format: 'float',
855
- description: 'Balance of the invoice',
856
- example: 100
772
+ format: 'date-time',
773
+ description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
774
+ example: '2023-12-20T13:53:32.000Z'
857
775
  },
858
- bundleKeys: {
776
+ period_end: {
859
777
  type: 'string',
860
- description: 'Bundle keys of the invoice',
861
- example: 'bundleKey1,bundleKey2'
862
- },
863
- credits: {
864
- type: 'array',
865
- items: {
866
- type: 'object',
867
- properties: {
868
- id: {
869
- type: 'string',
870
- format: 'uuid',
871
- description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
872
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
873
- },
874
- linkedInvoiceItemId: {
875
- type: 'string',
876
- format: 'uuid',
877
- description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
878
- example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
879
- },
880
- productName: {
881
- type: 'string',
882
- description: 'Name of the product',
883
- example: 'Research team'
884
- },
885
- planName: {
886
- type: 'string',
887
- description: 'Name of the plan',
888
- example: 'Plan A'
889
- },
890
- phaseName: {
891
- type: 'string',
892
- description: 'Name of the phase',
893
- example: 'Phase A'
894
- },
895
- usageName: {
896
- type: 'string',
897
- description: 'Name of the usage',
898
- example: 'Usage A'
899
- },
900
- prettyProductName: {
901
- type: 'string',
902
- description: 'Pretty name of the product',
903
- example: 'Research team'
904
- },
905
- prettyPlanName: {
906
- type: 'string',
907
- description: 'Pretty name of the plan',
908
- example: 'Plan A'
909
- },
910
- prettyPhaseName: {
911
- type: 'string',
912
- description: 'Pretty name of the phase',
913
- example: 'Phase A'
914
- },
915
- prettyUsageName: {
916
- type: 'string',
917
- description: 'Pretty name of the usage',
918
- example: 'Usage A'
919
- },
920
- itemType: {
921
- type: 'string',
922
- description: 'Type of the invoice item',
923
- example: 'EXTERNAL_CHARGE',
924
- enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
925
- },
926
- description: {
927
- type: 'string',
928
- description: 'Description of the invoice item',
929
- example: 'Description of the invoice item'
930
- },
931
- startDate: {
932
- type: 'string',
933
- description: 'Start date of the invoice item',
934
- example: '2019-01-01T00:00:00.000Z'
935
- },
936
- endDate: {
937
- type: 'string',
938
- description: 'End date of the invoice item',
939
- example: '2019-01-01T00:00:00.000Z'
940
- },
941
- amount: {
942
- type: 'number',
943
- format: 'float',
944
- description: 'Amount of the invoice item',
945
- example: 100
946
- },
947
- rate: {
948
- type: 'number',
949
- format: 'float',
950
- description: 'Rate of the invoice item',
951
- example: 100
952
- },
953
- currency: {
954
- type: 'string',
955
- description: 'Currency of the invoice item',
956
- example: 'USD',
957
- enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
958
- },
959
- quantity: {
960
- type: 'number',
961
- format: 'float',
962
- description: 'Quantity of the invoice item',
963
- example: 1
964
- },
965
- itemDetails: {
966
- type: 'string',
967
- description: 'Details of the invoice item',
968
- example: 'Details of the invoice item'
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'
998
- }
999
- },
1000
- additionalProperties: false
1001
- },
1002
- description: 'Credits of the invoice'
778
+ format: 'date-time',
779
+ description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
780
+ example: '2023-12-20T13:53:32.000Z'
1003
781
  },
1004
- items: {
1005
- type: 'array',
1006
- items: {
1007
- type: 'object',
1008
- properties: {
1009
- id: {
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: {
1095
- type: 'string',
1096
- description: 'Currency of the invoice item',
1097
- example: 'USD',
1098
- enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
1099
- },
1100
- quantity: {
1101
- type: 'number',
1102
- format: 'float',
1103
- description: 'Quantity of the invoice item',
1104
- example: 1
1105
- },
1106
- itemDetails: {
1107
- type: 'string',
1108
- description: 'Details of the invoice item',
1109
- example: 'Details of the invoice item'
1110
- },
1111
- catalogEffectiveDate: {
1112
- type: 'string',
1113
- description: 'Effective date of the catalog',
1114
- example: '2019-01-01T00:00:00.000Z'
1115
- },
1116
- childItems: {
1117
- type: 'array',
1118
- items: {
1119
- oneOf: [
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
- ]
1137
- },
1138
- description: 'Child items of the invoice item'
1139
- }
1140
- },
1141
- additionalProperties: false
1142
- },
1143
- description: 'Items of the invoice'
782
+ invoice_pdf: {
783
+ type: 'string'
1144
784
  }
1145
785
  },
786
+ required: ['created', 'period_start', 'period_end'],
1146
787
  additionalProperties: false
1147
788
  };
1148
- export const OrganizationContactInfoSchema = {
789
+ export const MarketplaceListingFilesSchema = {
1149
790
  type: 'object',
1150
791
  properties: {
1151
- address1: {
792
+ chartYaml: {
1152
793
  type: 'string',
1153
- nullable: true,
1154
- description: 'Street address, P.O. box, c/o',
1155
- example: '123 Main St.'
794
+ description: 'Raw Chart.yaml content from the Helm chart',
795
+ example: `apiVersion: v2
796
+ name: nginx-ingress
797
+ version: 1.18.2-cfke.45
798
+ appVersion: 1.9.4`
1156
799
  },
1157
- address2: {
1158
- type: 'string',
1159
- nullable: true,
1160
- description: 'Apartment, suite, unit, building, floor, etc.',
1161
- example: 'Suite 100'
1162
- },
1163
- postalCode: {
1164
- type: 'string',
1165
- nullable: true,
1166
- description: 'Postal code as a string.',
1167
- example: '94105'
1168
- },
1169
- city: {
1170
- type: 'string',
1171
- nullable: true,
1172
- description: 'City or town name.',
1173
- example: 'San Francisco'
1174
- },
1175
- state: {
1176
- type: 'string',
1177
- nullable: true,
1178
- description: 'State, province, or region name.',
1179
- example: 'CA'
1180
- },
1181
- country: {
1182
- type: 'string',
1183
- nullable: true,
1184
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1185
- example: 'US'
1186
- },
1187
- phone: {
1188
- type: 'string',
1189
- nullable: true,
1190
- description: 'Phone number as a string.',
1191
- example: '+1 555 555 5555'
1192
- },
1193
- email: {
1194
- type: 'string',
1195
- format: 'email',
1196
- description: 'Email address used for billing as a string.',
1197
- example: 'email@example.com'
1198
- },
1199
- first_name: {
800
+ valuesYaml: {
1200
801
  type: 'string',
1201
- description: 'First name of the billing contact person.',
1202
- example: 'John'
802
+ description: 'Raw values.yaml content from the Helm chart',
803
+ example: `replicaCount: 1
804
+ image:
805
+ repository: nginx
806
+ tag: latest`
1203
807
  },
1204
- last_name: {
808
+ valuesSchemaJson: {
1205
809
  type: 'string',
1206
- description: 'Last name of the billing contact person.',
1207
- example: 'Doe'
810
+ description: 'JSON schema for values.yaml as a string',
811
+ example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
1208
812
  }
1209
813
  },
1210
- required: ['email', 'first_name', 'last_name'],
1211
814
  additionalProperties: false
1212
815
  };
1213
- export const OrganizationCreateInputSchema = {
816
+ export const MarketplaceListingSchema = {
1214
817
  type: 'object',
1215
818
  properties: {
1216
819
  name: {
1217
820
  type: 'string',
1218
- maxLength: 120,
1219
- minLength: 2,
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.'
821
+ description: 'Name of the chart',
822
+ example: 'nginx-ingress'
823
+ },
824
+ versions: {
825
+ type: 'array',
826
+ items: {
827
+ type: 'string',
828
+ 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-]+)*))?$',
829
+ description: 'Specific version of the chart',
830
+ example: '1.18.2-cfke.45'
831
+ },
832
+ description: 'Available versions of the chart'
833
+ },
834
+ version_channels: {
835
+ type: 'array',
836
+ items: {
837
+ type: 'string',
838
+ 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-]+)*))?$',
839
+ description: 'Version channel pattern',
840
+ example: '1.18.x-cfke.x'
841
+ },
842
+ description: 'Version channels for the chart'
843
+ },
844
+ latestVersion: {
845
+ type: 'string',
846
+ description: 'Latest version of the chart',
847
+ example: '1.18.2-cfke.45'
1223
848
  },
1224
- contactInfo: {
849
+ metadata: {
1225
850
  type: 'object',
1226
851
  properties: {
1227
- address1: {
852
+ name: {
1228
853
  type: 'string',
1229
- description: 'Street address, P.O. box, c/o',
1230
- example: '123 Main St.'
854
+ description: 'Chart name from metadata',
855
+ example: 'nginx-ingress'
1231
856
  },
1232
- address2: {
857
+ version: {
1233
858
  type: 'string',
1234
- description: 'Apartment, suite, unit, building, floor, etc.',
1235
- example: 'Suite 100'
859
+ description: 'Chart version from metadata',
860
+ example: '1.18.2-cfke.45'
1236
861
  },
1237
- postalCode: {
862
+ description: {
1238
863
  type: 'string',
1239
- description: 'Postal code as a string.',
1240
- example: '94105'
864
+ description: 'Chart description',
865
+ example: 'NGINX Ingress Controller for Kubernetes'
1241
866
  },
1242
- city: {
867
+ appVersion: {
1243
868
  type: 'string',
1244
- description: 'City or town name.',
1245
- example: 'San Francisco'
869
+ description: 'Application version',
870
+ example: '1.9.4'
1246
871
  },
1247
- state: {
872
+ apiVersion: {
1248
873
  type: 'string',
1249
- description: 'State, province, or region name.',
1250
- example: 'CA'
874
+ description: 'Helm API version',
875
+ example: 'v2'
1251
876
  },
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'
877
+ keywords: {
878
+ type: 'array',
879
+ items: {
880
+ type: 'string'
881
+ },
882
+ description: 'Chart keywords',
883
+ example: ['ingress', 'nginx', 'load-balancer']
1261
884
  },
1262
- email: {
885
+ home: {
1263
886
  type: 'string',
1264
- format: 'email',
1265
- description: 'Email address used for billing as a string.',
1266
- example: 'email@example.com'
887
+ description: 'Chart home URL',
888
+ example: 'https://kubernetes.github.io/ingress-nginx/'
1267
889
  },
1268
- first_name: {
1269
- type: 'string',
1270
- description: 'First name of the billing contact person.',
1271
- example: 'John'
890
+ sources: {
891
+ type: 'array',
892
+ items: {
893
+ type: 'string'
894
+ },
895
+ description: 'Chart source URLs',
896
+ example: ['https://github.com/kubernetes/ingress-nginx']
1272
897
  },
1273
- last_name: {
1274
- type: 'string',
1275
- description: 'Last name of the billing contact person.',
1276
- example: 'Doe'
898
+ maintainers: {
899
+ type: 'array',
900
+ items: {
901
+ type: 'object',
902
+ properties: {
903
+ name: {
904
+ type: 'string',
905
+ description: 'Maintainer name',
906
+ example: 'NGINX Team'
907
+ },
908
+ email: {
909
+ type: 'string',
910
+ description: 'Maintainer email',
911
+ example: 'support@nginx.org'
912
+ }
913
+ },
914
+ required: ['name'],
915
+ additionalProperties: false
916
+ },
917
+ description: 'Chart maintainers'
1277
918
  }
1278
919
  },
1279
- required: ['email', 'first_name', 'last_name'],
920
+ required: ['name', 'version'],
1280
921
  additionalProperties: false,
1281
- description: 'Organization contact information and billing address.'
1282
- },
1283
- password: {
1284
- type: 'string',
1285
- minLength: 8,
1286
- description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
922
+ description: 'Chart metadata'
1287
923
  }
1288
924
  },
1289
- required: ['name', 'contactInfo', 'password'],
925
+ required: ['name', 'versions', 'version_channels', 'latestVersion'],
1290
926
  additionalProperties: false
1291
927
  };
1292
- export const OrganizationSchema = {
928
+ export const OrganizationCreateInputSchema = {
1293
929
  type: 'object',
1294
930
  properties: {
1295
- name: {
931
+ email: {
932
+ type: 'string',
933
+ format: 'email',
934
+ description: 'Email address used for billing as a string.',
935
+ example: 'email@example.com'
936
+ },
937
+ first_name: {
938
+ type: 'string',
939
+ description: 'First name of the billing contact person.',
940
+ example: 'John'
941
+ },
942
+ last_name: {
943
+ type: 'string',
944
+ description: 'Last name of the billing contact person.',
945
+ example: 'Doe'
946
+ },
947
+ company_name: {
1296
948
  type: 'string',
1297
949
  maxLength: 120,
1298
950
  minLength: 2,
@@ -1300,71 +952,31 @@ export const OrganizationSchema = {
1300
952
  description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
1301
953
  example: 'ACME Corp.'
1302
954
  },
1303
- contactInfo: {
1304
- type: 'object',
1305
- properties: {
1306
- address1: {
1307
- type: 'string',
1308
- description: 'Street address, P.O. box, c/o',
1309
- example: '123 Main St.'
1310
- },
1311
- address2: {
1312
- type: 'string',
1313
- description: 'Apartment, suite, unit, building, floor, etc.',
1314
- example: 'Suite 100'
1315
- },
1316
- postalCode: {
1317
- type: 'string',
1318
- description: 'Postal code as a string.',
1319
- example: '94105'
1320
- },
1321
- city: {
1322
- type: 'string',
1323
- description: 'City or town name.',
1324
- example: 'San Francisco'
1325
- },
1326
- state: {
1327
- type: 'string',
1328
- description: 'State, province, or region name.',
1329
- example: 'CA'
1330
- },
1331
- country: {
1332
- type: 'string',
1333
- description: 'Country as a ISO 3166-1 alpha-2 country code.',
1334
- example: 'US'
1335
- },
1336
- phone: {
1337
- type: 'string',
1338
- description: 'Phone number as a string.',
1339
- example: '+1 555 555 5555'
1340
- },
1341
- email: {
1342
- type: 'string',
1343
- format: 'email',
1344
- description: 'Email address used for billing as a string.',
1345
- example: 'email@example.com'
1346
- },
1347
- first_name: {
1348
- type: 'string',
1349
- description: 'First name of the billing contact person.',
1350
- example: 'John'
1351
- },
1352
- last_name: {
1353
- type: 'string',
1354
- description: 'Last name of the billing contact person.',
1355
- example: 'Doe'
1356
- }
1357
- },
1358
- required: ['email', 'first_name', 'last_name'],
1359
- additionalProperties: false,
1360
- description: 'Organization contact information and billing address.'
1361
- },
955
+ password: {
956
+ type: 'string',
957
+ minLength: 8,
958
+ 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.'
959
+ }
960
+ },
961
+ required: ['email', 'first_name', 'last_name', 'company_name', 'password'],
962
+ additionalProperties: false
963
+ };
964
+ export const OrganizationSchema = {
965
+ type: 'object',
966
+ properties: {
1362
967
  id: {
1363
968
  type: 'string',
1364
969
  format: 'uuid',
1365
970
  description: 'Unique identifier of the organization. UUID v4 string in canonical form',
1366
971
  example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1367
972
  },
973
+ name: {
974
+ type: 'string',
975
+ maxLength: 120,
976
+ minLength: 2,
977
+ description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
978
+ example: 'ACME Corp.'
979
+ },
1368
980
  date_created: {
1369
981
  type: 'string',
1370
982
  format: 'date-time',
@@ -1402,12 +1014,6 @@ export const OrganizationSchema = {
1402
1014
  description: 'Maximum number of fleets that can be created per cluster.',
1403
1015
  example: 999
1404
1016
  },
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
1017
  cluster_tiers: {
1412
1018
  type: 'array',
1413
1019
  items: {
@@ -1434,12 +1040,12 @@ export const OrganizationSchema = {
1434
1040
  id: {
1435
1041
  type: 'string',
1436
1042
  description: 'Id of the control plane version. Used in API calls.',
1437
- example: '1.29.x-cfke.x'
1043
+ example: '1.33.x-cfke.x'
1438
1044
  },
1439
1045
  label: {
1440
1046
  type: 'string',
1441
1047
  description: 'Label of the control plane version. Used in frontent UI.',
1442
- example: '1.29.x (Always latest 1.29 patch version)'
1048
+ example: '1.33.x (Always latest 1.33 patch version)'
1443
1049
  }
1444
1050
  },
1445
1051
  required: ['id', 'label'],
@@ -1447,155 +1053,351 @@ export const OrganizationSchema = {
1447
1053
  },
1448
1054
  minItems: 1,
1449
1055
  description: 'List of CFKE control plane versions available for the organization.'
1056
+ },
1057
+ copilot_user_hourly_tokens: {
1058
+ type: 'integer',
1059
+ minimum: 0,
1060
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1061
+ example: 42000
1062
+ },
1063
+ copilot_organization_hourly_tokens: {
1064
+ type: 'integer',
1065
+ minimum: 0,
1066
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1067
+ example: 242000
1450
1068
  }
1451
1069
  },
1452
- required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'managed_fleets_cpu_max', 'cluster_tiers', 'regions', 'versions'],
1070
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1453
1071
  additionalProperties: false,
1454
1072
  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.'
1455
1073
  },
1456
- pending_actions: {
1074
+ status: {
1075
+ type: 'string',
1076
+ description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1077
+ enum: ['active', 'closed', 'suspended']
1078
+ }
1079
+ },
1080
+ required: ['id', 'date_created', 'quota', 'status'],
1081
+ additionalProperties: false
1082
+ };
1083
+ export const PaymentMethodSchema = {
1084
+ type: 'object',
1085
+ properties: {
1086
+ id: {
1087
+ type: 'string',
1088
+ format: 'uuid',
1089
+ description: 'Unique identifier of the organization. UUID v4 string in canonical form.',
1090
+ example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1091
+ },
1092
+ setup: {
1093
+ type: 'boolean',
1094
+ description: 'Whether organization payment method was set up and ready to use for payments.',
1095
+ example: true
1096
+ },
1097
+ type: {
1098
+ type: 'string',
1099
+ nullable: true,
1100
+ description: 'Payment method type type. Only `card` payments supported at the moment.',
1101
+ example: 'card',
1102
+ enum: ['card']
1103
+ },
1104
+ last4: {
1105
+ type: 'string',
1106
+ nullable: true,
1107
+ description: 'Last 4 digits of the payment card number.',
1108
+ example: '4242'
1109
+ },
1110
+ exp_month: {
1111
+ type: 'integer',
1112
+ minimum: 1,
1113
+ maximum: 12,
1114
+ nullable: true,
1115
+ description: "Two-digit number representing the card's expiration month.",
1116
+ example: '12'
1117
+ },
1118
+ exp_year: {
1119
+ type: 'integer',
1120
+ minimum: 2024,
1121
+ nullable: true,
1122
+ description: "Four-digit number representing the card's expiration year.",
1123
+ example: '2028'
1124
+ },
1125
+ brand: {
1126
+ type: 'string',
1127
+ nullable: true,
1128
+ description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
1129
+ example: 'visa',
1130
+ enum: ['amex', 'diners', 'discover', 'eftpos_au', 'jcb', 'mastercard', 'unionpay', 'visa', 'unknown']
1131
+ }
1132
+ },
1133
+ required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1134
+ additionalProperties: false
1135
+ };
1136
+ export const PlatformQuotaSchema = {
1137
+ type: 'object',
1138
+ properties: {
1139
+ basic_clusters_max: {
1140
+ type: 'integer',
1141
+ minimum: 0,
1142
+ description: 'Maximum number of Basic clusters that can be created.',
1143
+ example: 999
1144
+ },
1145
+ basic_clusters_available: {
1146
+ type: 'integer',
1147
+ description: 'Available number of Basic clusters that can be created.',
1148
+ example: 999
1149
+ },
1150
+ pro_clusters_max: {
1151
+ type: 'integer',
1152
+ minimum: 0,
1153
+ description: 'Maximum number of Pro clusters that can be created.',
1154
+ example: 999
1155
+ },
1156
+ pro_clusters_available: {
1157
+ type: 'integer',
1158
+ description: 'Available number of Pro clusters that can be created.',
1159
+ example: 999
1160
+ },
1161
+ fleets_max: {
1162
+ type: 'integer',
1163
+ minimum: 0,
1164
+ description: 'Maximum number of fleets that can be created per cluster.',
1165
+ example: 999
1166
+ },
1167
+ cluster_tiers: {
1168
+ type: 'array',
1169
+ items: {
1170
+ type: 'string',
1171
+ example: 'basic'
1172
+ },
1173
+ minItems: 0,
1174
+ description: 'List of Cloudfleet cluster tiers available for the organization.'
1175
+ },
1176
+ regions: {
1177
+ type: 'array',
1178
+ items: {
1179
+ type: 'string',
1180
+ example: 'northamerica-central-1'
1181
+ },
1182
+ minItems: 1,
1183
+ description: 'List of Cloudfleet control plane regions available for the organization.'
1184
+ },
1185
+ versions: {
1186
+ type: 'array',
1187
+ items: {
1188
+ type: 'object',
1189
+ properties: {
1190
+ id: {
1191
+ type: 'string',
1192
+ description: 'Id of the control plane version. Used in API calls.',
1193
+ example: '1.33.x-cfke.x'
1194
+ },
1195
+ label: {
1196
+ type: 'string',
1197
+ description: 'Label of the control plane version. Used in frontent UI.',
1198
+ example: '1.33.x (Always latest 1.33 patch version)'
1199
+ }
1200
+ },
1201
+ required: ['id', 'label'],
1202
+ additionalProperties: false
1203
+ },
1204
+ minItems: 1,
1205
+ description: 'List of CFKE control plane versions available for the organization.'
1206
+ },
1207
+ copilot_user_hourly_tokens: {
1208
+ type: 'integer',
1209
+ minimum: 0,
1210
+ description: 'User-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1211
+ example: 42000
1212
+ },
1213
+ copilot_organization_hourly_tokens: {
1214
+ type: 'integer',
1215
+ minimum: 0,
1216
+ description: 'Organization-level maximum number of tokens Cloudfleet Copilot can process per hour.',
1217
+ example: 242000
1218
+ }
1219
+ },
1220
+ required: ['basic_clusters_max', 'basic_clusters_available', 'pro_clusters_max', 'pro_clusters_available', 'fleets_max', 'cluster_tiers', 'regions', 'versions', 'copilot_user_hourly_tokens', 'copilot_organization_hourly_tokens'],
1221
+ additionalProperties: false
1222
+ };
1223
+ export const RegistryRepositorySchema = {
1224
+ type: 'object',
1225
+ properties: {
1226
+ name: {
1227
+ type: 'string',
1228
+ description: 'Repository name.',
1229
+ example: 'my-app'
1230
+ },
1231
+ region: {
1232
+ type: 'string',
1233
+ description: 'Registry region.',
1234
+ example: 'northamerica'
1235
+ },
1236
+ uri: {
1237
+ type: 'string',
1238
+ description: 'Full URI of the repository.',
1239
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1240
+ }
1241
+ },
1242
+ required: ['name', 'region', 'uri'],
1243
+ additionalProperties: false
1244
+ };
1245
+ export const RegistryRepositoryWithTagsSchema = {
1246
+ type: 'object',
1247
+ properties: {
1248
+ name: {
1249
+ type: 'string',
1250
+ description: 'Repository name.',
1251
+ example: 'my-app'
1252
+ },
1253
+ region: {
1254
+ type: 'string',
1255
+ description: 'Registry region.',
1256
+ example: 'northamerica'
1257
+ },
1258
+ uri: {
1259
+ type: 'string',
1260
+ description: 'Full URI of the repository.',
1261
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/v2/my-app'
1262
+ },
1263
+ tags: {
1457
1264
  type: 'array',
1458
1265
  items: {
1459
- type: 'string',
1460
- example: 'signup-payment-method',
1461
- enum: ['signup-billing-address', 'signup-payment-method', 'signup-invite-team', 'signup-create-cluster']
1266
+ type: 'object',
1267
+ properties: {
1268
+ name: {
1269
+ type: 'string',
1270
+ description: 'Tag name.',
1271
+ example: 'latest'
1272
+ },
1273
+ size: {
1274
+ type: 'number',
1275
+ format: 'float',
1276
+ description: 'Size of the tag in bytes.',
1277
+ example: 123456789
1278
+ },
1279
+ mediaType: {
1280
+ type: 'string',
1281
+ description: 'Media type of the manifest.',
1282
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1283
+ }
1284
+ },
1285
+ required: ['name', 'size'],
1286
+ additionalProperties: false
1462
1287
  },
1463
- description: 'List of pending actions that the user needs to complete. Used in Cloudfleet console to guide the user through the onboarding process.'
1288
+ description: 'Array of tags in the repository.'
1464
1289
  },
1465
- status: {
1466
- type: 'string',
1467
- description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
1468
- enum: ['active', 'closed', 'suspended']
1290
+ totalSize: {
1291
+ type: 'number',
1292
+ format: 'float',
1293
+ description: 'Total size of all tags in the repository in bytes.',
1294
+ example: 987654321
1469
1295
  }
1470
1296
  },
1471
- required: ['name', 'contactInfo', 'id', 'date_created', 'quota', 'pending_actions', 'status'],
1297
+ required: ['name', 'region', 'uri', 'tags', 'totalSize'],
1472
1298
  additionalProperties: false
1473
1299
  };
1474
- export const OrganizationUpdateInputSchema = {
1300
+ export const RegistryTagSchema = {
1475
1301
  type: 'object',
1476
1302
  properties: {
1477
1303
  name: {
1478
1304
  type: 'string',
1479
- maxLength: 120,
1480
- minLength: 2,
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.'
1305
+ description: 'Tag name.',
1306
+ example: 'latest'
1484
1307
  },
1485
- contactInfo: {
1308
+ mediaType: {
1309
+ type: 'string',
1310
+ description: 'Media type of the manifest.',
1311
+ example: 'application/vnd.docker.distribution.manifest.v2+json'
1312
+ },
1313
+ config: {
1486
1314
  type: 'object',
1487
1315
  properties: {
1488
- address1: {
1489
- type: 'string',
1490
- description: 'Street address, P.O. box, c/o',
1491
- example: '123 Main St.'
1492
- },
1493
- address2: {
1494
- type: 'string',
1495
- description: 'Apartment, suite, unit, building, floor, etc.',
1496
- example: 'Suite 100'
1497
- },
1498
- postalCode: {
1499
- type: 'string',
1500
- description: 'Postal code as a string.',
1501
- example: '94105'
1502
- },
1503
- city: {
1504
- type: 'string',
1505
- description: 'City or town name.',
1506
- example: 'San Francisco'
1507
- },
1508
- state: {
1509
- type: 'string',
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'
1533
- },
1534
- last_name: {
1535
- type: 'string',
1536
- description: 'Last name of the billing contact person.',
1537
- example: 'Doe'
1316
+ size: {
1317
+ type: 'number',
1318
+ format: 'float',
1319
+ description: 'Size of the config in bytes.',
1320
+ example: 1234
1538
1321
  }
1539
1322
  },
1540
- required: ['email', 'first_name', 'last_name'],
1323
+ required: ['size'],
1541
1324
  additionalProperties: false,
1542
- description: 'Organization contact information and billing address.'
1543
- }
1544
- },
1545
- required: ['contactInfo'],
1546
- additionalProperties: false
1547
- };
1548
- export const PaymentMethodSchema = {
1549
- type: 'object',
1550
- properties: {
1551
- id: {
1552
- type: 'string',
1553
- format: 'uuid',
1554
- description: 'Unique identifier of the organization. UUID v4 string in canonical form.',
1555
- example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
1325
+ description: 'Manifest config metadata.'
1556
1326
  },
1557
- setup: {
1558
- type: 'boolean',
1559
- description: 'Whether organization payment method was set up and ready to use for payments.',
1560
- example: true
1327
+ layers: {
1328
+ type: 'array',
1329
+ items: {
1330
+ type: 'object',
1331
+ properties: {
1332
+ size: {
1333
+ type: 'number',
1334
+ format: 'float',
1335
+ description: 'Size of the layer in bytes.',
1336
+ example: 5678
1337
+ }
1338
+ },
1339
+ required: ['size'],
1340
+ additionalProperties: false
1341
+ },
1342
+ description: 'Array of layer metadata.'
1561
1343
  },
1562
- type: {
1563
- type: 'string',
1564
- nullable: true,
1565
- description: 'Payment method type type. Only `card` payments supported at the moment.',
1566
- example: 'card',
1567
- enum: ['card']
1344
+ manifests: {
1345
+ type: 'array',
1346
+ items: {
1347
+ type: 'object',
1348
+ properties: {
1349
+ digest: {
1350
+ type: 'string',
1351
+ description: 'Digest of the manifest.',
1352
+ example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
1353
+ },
1354
+ platform: {
1355
+ type: 'object',
1356
+ properties: {
1357
+ architecture: {
1358
+ type: 'string',
1359
+ description: 'Architecture of the platform.',
1360
+ example: 'amd64'
1361
+ },
1362
+ os: {
1363
+ type: 'string',
1364
+ description: 'Operating system of the platform.',
1365
+ example: 'linux'
1366
+ }
1367
+ },
1368
+ required: ['architecture', 'os'],
1369
+ additionalProperties: false,
1370
+ description: 'Platform information for the manifest.'
1371
+ }
1372
+ },
1373
+ required: ['digest'],
1374
+ additionalProperties: false
1375
+ },
1376
+ description: 'Array of manifests for multi-arch images.'
1568
1377
  },
1569
- last4: {
1570
- type: 'string',
1571
- nullable: true,
1572
- description: 'Last 4 digits of the payment card number.',
1573
- example: '4242'
1378
+ size: {
1379
+ type: 'number',
1380
+ format: 'float',
1381
+ description: 'Total size of the tag in bytes.',
1382
+ example: 123456789
1574
1383
  },
1575
- exp_month: {
1576
- type: 'integer',
1577
- minimum: 1,
1578
- maximum: 12,
1579
- nullable: true,
1580
- description: "Two-digit number representing the card's expiration month.",
1581
- example: '12'
1384
+ region: {
1385
+ type: 'string',
1386
+ description: 'Registry region.',
1387
+ example: 'northamerica'
1582
1388
  },
1583
- exp_year: {
1584
- type: 'integer',
1585
- minimum: 2024,
1586
- nullable: true,
1587
- description: "Four-digit number representing the card's expiration year.",
1588
- example: '2028'
1389
+ repository: {
1390
+ type: 'string',
1391
+ description: 'Repository name.',
1392
+ example: 'my-app'
1589
1393
  },
1590
- brand: {
1394
+ uri: {
1591
1395
  type: 'string',
1592
- nullable: true,
1593
- description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
1594
- example: 'visa',
1595
- enum: ['amex', 'diners', 'discover', 'eftpos_au', 'jcb', 'mastercard', 'unionpay', 'visa', 'unknown']
1396
+ description: 'Full URI of the tag.',
1397
+ example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
1596
1398
  }
1597
1399
  },
1598
- required: ['id', 'setup', 'type', 'last4', 'exp_month', 'exp_year', 'brand'],
1400
+ required: ['name', 'size', 'region', 'repository', 'uri'],
1599
1401
  additionalProperties: false
1600
1402
  };
1601
1403
  export const TokenCreateInputSchema = {
@@ -1676,6 +1478,101 @@ export const TokenUpdateInputSchema = {
1676
1478
  },
1677
1479
  additionalProperties: false
1678
1480
  };
1481
+ export const UsageFacetsSchema = {
1482
+ type: 'object',
1483
+ properties: {
1484
+ cluster_id: {
1485
+ type: 'array',
1486
+ items: {
1487
+ type: 'string'
1488
+ },
1489
+ description: 'List of unique cluster IDs',
1490
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1491
+ },
1492
+ product: {
1493
+ type: 'array',
1494
+ items: {
1495
+ type: 'string'
1496
+ },
1497
+ description: 'List of unique products',
1498
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1499
+ }
1500
+ },
1501
+ additionalProperties: false
1502
+ };
1503
+ export const UsageResponseSchema = {
1504
+ type: 'object',
1505
+ properties: {
1506
+ data: {
1507
+ type: 'array',
1508
+ items: {
1509
+ type: 'object',
1510
+ properties: {
1511
+ hour: {
1512
+ type: 'string',
1513
+ description: 'Hour of the usage',
1514
+ example: '2019-01-01T00:00:00.000Z'
1515
+ },
1516
+ cluster_id: {
1517
+ type: 'string',
1518
+ description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1519
+ example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1520
+ },
1521
+ product: {
1522
+ type: 'string',
1523
+ description: 'The product the usage is associated with',
1524
+ example: 'cfke_controlplane'
1525
+ },
1526
+ value: {
1527
+ type: 'number',
1528
+ format: 'float',
1529
+ description: 'Consumption',
1530
+ example: 4
1531
+ },
1532
+ price: {
1533
+ type: 'number',
1534
+ format: 'float',
1535
+ description: 'Price per unit',
1536
+ example: 0.01
1537
+ },
1538
+ total: {
1539
+ type: 'number',
1540
+ format: 'float',
1541
+ description: 'Total cost'
1542
+ }
1543
+ },
1544
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1545
+ additionalProperties: false
1546
+ },
1547
+ description: 'Usage data'
1548
+ },
1549
+ facets: {
1550
+ type: 'object',
1551
+ properties: {
1552
+ cluster_id: {
1553
+ type: 'array',
1554
+ items: {
1555
+ type: 'string'
1556
+ },
1557
+ description: 'List of unique cluster IDs',
1558
+ example: ['6b5439b1-923a-4f2b-a371-d554e5ea23fa']
1559
+ },
1560
+ product: {
1561
+ type: 'array',
1562
+ items: {
1563
+ type: 'string'
1564
+ },
1565
+ description: 'List of unique products',
1566
+ example: ['cfke_controlplane', 'cfke_connected_nodes']
1567
+ }
1568
+ },
1569
+ additionalProperties: false,
1570
+ description: 'Facets for filtering'
1571
+ }
1572
+ },
1573
+ required: ['data', 'facets'],
1574
+ additionalProperties: false
1575
+ };
1679
1576
  export const UsageSchema = {
1680
1577
  type: 'object',
1681
1578
  properties: {
@@ -1686,90 +1583,33 @@ export const UsageSchema = {
1686
1583
  },
1687
1584
  cluster_id: {
1688
1585
  type: 'string',
1689
- format: 'uuid',
1690
1586
  description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
1691
1587
  example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
1692
1588
  },
1693
- cluster_tier: {
1694
- type: 'string',
1695
- description: 'Tier of the cluster.',
1696
- example: 'pro',
1697
- enum: ['']
1698
- },
1699
1589
  product: {
1700
1590
  type: 'string',
1701
1591
  description: 'The product the usage is associated with',
1702
- example: 'cfke_infra_compute',
1703
- enum: ['cfke_infra_compute', 'cfke_nodes', 'cfke_controlplane']
1704
- },
1705
- node_name: {
1706
- type: 'string',
1707
- description: 'Name of the Kubernetes node',
1708
- example: 'flexible-moth-956037384'
1709
- },
1710
- sku: {
1711
- type: 'string',
1712
- description: 'SKU of the Kubernetes node',
1713
- example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
1592
+ example: 'cfke_controlplane'
1714
1593
  },
1715
- cpu: {
1716
- anyOf: [
1717
- {
1718
- type: 'number',
1719
- format: 'float',
1720
- description: 'CPU core count of the node',
1721
- example: 4
1722
- },
1723
- {
1724
- type: 'string',
1725
- enum: ['']
1726
- }
1727
- ]
1594
+ value: {
1595
+ type: 'number',
1596
+ format: 'float',
1597
+ description: 'Consumption',
1598
+ example: 4
1728
1599
  },
1729
1600
  price: {
1730
- anyOf: [
1731
- {
1732
- type: 'number',
1733
- format: 'float',
1734
- description: 'Price',
1735
- example: 4
1736
- },
1737
- {
1738
- type: 'string',
1739
- enum: ['']
1740
- }
1741
- ]
1742
- },
1743
- value: {
1744
- anyOf: [
1745
- {
1746
- type: 'number',
1747
- format: 'float',
1748
- description: 'Value',
1749
- example: 4
1750
- },
1751
- {
1752
- type: 'string',
1753
- enum: ['']
1754
- }
1755
- ]
1601
+ type: 'number',
1602
+ format: 'float',
1603
+ description: 'Price per unit',
1604
+ example: 0.01
1756
1605
  },
1757
1606
  total: {
1758
- anyOf: [
1759
- {
1760
- type: 'number',
1761
- format: 'float',
1762
- description: 'Total',
1763
- example: 4
1764
- },
1765
- {
1766
- type: 'string',
1767
- enum: ['']
1768
- }
1769
- ]
1607
+ type: 'number',
1608
+ format: 'float',
1609
+ description: 'Total cost'
1770
1610
  }
1771
1611
  },
1772
- required: ['cluster_id', 'cluster_tier', 'product', 'node_name', 'sku', 'cpu', 'price', 'value', 'total'],
1612
+ required: ['hour', 'cluster_id', 'product', 'value', 'price', 'total'],
1773
1613
  additionalProperties: false
1774
1614
  };
1775
1615
  export const UserCreateInputSchema = {
@@ -1804,7 +1644,7 @@ export const UserCreateInputSchema = {
1804
1644
  password: {
1805
1645
  type: 'string',
1806
1646
  minLength: 8,
1807
- description: 'User password. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
1647
+ description: 'User password. Must be at least 8 characters long.'
1808
1648
  },
1809
1649
  status: {
1810
1650
  type: 'string',
@@ -1868,28 +1708,6 @@ export const UserSchema = {
1868
1708
  format: 'date-time',
1869
1709
  description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
1870
1710
  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
1711
  }
1894
1712
  },
1895
1713
  required: ['email', 'first_name', 'last_name', 'role', 'status', 'id', 'date_created'],