@meshery/schemas 1.3.8 → 1.4.0

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 (103) hide show
  1. package/dist/cloudApi.d.mts +4154 -1704
  2. package/dist/cloudApi.d.ts +4154 -1704
  3. package/dist/cloudApi.js +1 -1
  4. package/dist/cloudApi.mjs +1 -1
  5. package/dist/constructs/v1alpha1/capability/Capability.d.ts +106 -111
  6. package/dist/constructs/v1alpha1/core/Core.d.ts +822 -734
  7. package/dist/constructs/v1alpha2/catalog/Catalog.d.ts +45 -40
  8. package/dist/constructs/v1alpha3/relationship/Relationship.d.ts +1829 -1716
  9. package/dist/constructs/v1beta1/academy/Academy.d.ts +6023 -6642
  10. package/dist/constructs/v1beta1/badge/Badge.d.ts +439 -600
  11. package/dist/constructs/v1beta1/capability/Capability.d.ts +106 -111
  12. package/dist/constructs/v1beta1/catalog/Catalog.d.ts +45 -40
  13. package/dist/constructs/v1beta1/category/Category.d.ts +38 -26
  14. package/dist/constructs/v1beta1/component/Component.d.ts +833 -729
  15. package/dist/constructs/v1beta1/connection/Connection.d.ts +1170 -1357
  16. package/dist/constructs/v1beta1/core/Core.d.ts +822 -734
  17. package/dist/constructs/v1beta1/credential/Credential.d.ts +458 -593
  18. package/dist/constructs/v1beta1/environment/Environment.d.ts +666 -835
  19. package/dist/constructs/v1beta1/evaluation/Evaluation.d.ts +6142 -5619
  20. package/dist/constructs/v1beta1/event/Event.d.ts +527 -898
  21. package/dist/constructs/v1beta1/feature/Feature.d.ts +343 -389
  22. package/dist/constructs/v1beta1/invitation/Invitation.d.ts +877 -1244
  23. package/dist/constructs/v1beta1/key/Key.d.ts +444 -589
  24. package/dist/constructs/v1beta1/keychain/Keychain.d.ts +575 -796
  25. package/dist/constructs/v1beta1/model/Model.d.ts +598 -572
  26. package/dist/constructs/v1beta1/organization/Organization.d.ts +1410 -1829
  27. package/dist/constructs/v1beta1/pattern/Pattern.d.ts +17988 -17171
  28. package/dist/constructs/v1beta1/plan/Plan.d.ts +115 -159
  29. package/dist/constructs/v1beta1/role/Role.d.ts +688 -933
  30. package/dist/constructs/v1beta1/schedule/Schedule.d.ts +315 -425
  31. package/dist/constructs/v1beta1/subcategory/Subcategory.d.ts +61 -18
  32. package/dist/constructs/v1beta1/subscription/Subscription.d.ts +674 -839
  33. package/dist/constructs/v1beta1/support/Support.d.ts +74 -115
  34. package/dist/constructs/v1beta1/system/System.d.ts +250 -385
  35. package/dist/constructs/v1beta1/team/Team.d.ts +762 -1028
  36. package/dist/constructs/v1beta1/token/Token.d.ts +475 -612
  37. package/dist/constructs/v1beta1/user/User.d.ts +1553 -1722
  38. package/dist/constructs/v1beta1/view/View.d.ts +664 -833
  39. package/dist/constructs/v1beta1/workspace/Workspace.d.ts +4705 -4910
  40. package/dist/constructs/v1beta2/academy/Academy.d.ts +7246 -7864
  41. package/dist/constructs/v1beta2/badge/Badge.d.ts +453 -610
  42. package/dist/constructs/v1beta2/catalog/Catalog.d.ts +45 -40
  43. package/dist/constructs/v1beta2/component/Component.d.ts +851 -747
  44. package/dist/constructs/v1beta2/connection/Connection.d.ts +1189 -1376
  45. package/dist/constructs/v1beta2/core/Core.d.ts +856 -768
  46. package/dist/constructs/v1beta2/credential/Credential.d.ts +437 -572
  47. package/dist/constructs/v1beta2/design/Design.d.ts +18631 -17846
  48. package/dist/constructs/v1beta2/event/Event.d.ts +575 -946
  49. package/dist/constructs/v1beta2/invitation/Invitation.d.ts +901 -1268
  50. package/dist/constructs/v1beta2/key/Key.d.ts +454 -599
  51. package/dist/constructs/v1beta2/keychain/Keychain.d.ts +585 -806
  52. package/dist/constructs/v1beta2/model/Model.d.ts +636 -610
  53. package/dist/constructs/v1beta2/organization/Organization.d.ts +2017 -2458
  54. package/dist/constructs/v1beta2/plan/Plan.d.ts +128 -169
  55. package/dist/constructs/v1beta2/relationship/Relationship.d.ts +2013 -1844
  56. package/dist/constructs/v1beta2/role/Role.d.ts +695 -940
  57. package/dist/constructs/v1beta2/schedule/Schedule.d.ts +356 -466
  58. package/dist/constructs/v1beta2/subscription/Subscription.d.ts +701 -866
  59. package/dist/constructs/v1beta2/team/Team.d.ts +852 -1118
  60. package/dist/constructs/v1beta2/token/Token.d.ts +479 -616
  61. package/dist/constructs/v1beta2/user/User.d.ts +1553 -1722
  62. package/dist/constructs/v1beta2/view/View.d.ts +669 -838
  63. package/dist/constructs/v1beta3/academy/Academy.d.ts +7246 -7864
  64. package/dist/constructs/v1beta3/academy/AcademySchema.js +1 -1
  65. package/dist/constructs/v1beta3/academy/AcademySchema.mjs +1 -1
  66. package/dist/constructs/v1beta3/component/Component.d.ts +857 -753
  67. package/dist/constructs/v1beta3/connection/Connection.d.ts +5919 -1416
  68. package/dist/constructs/v1beta3/connection/ConnectionSchema.js +25 -1
  69. package/dist/constructs/v1beta3/connection/ConnectionSchema.mjs +25 -1
  70. package/dist/constructs/v1beta3/design/Design.d.ts +5297 -5719
  71. package/dist/constructs/v1beta3/design/DesignSchema.js +2 -2
  72. package/dist/constructs/v1beta3/design/DesignSchema.mjs +2 -2
  73. package/dist/constructs/v1beta3/environment/Environment.d.ts +689 -858
  74. package/dist/constructs/v1beta3/event/Event.d.ts +666 -1041
  75. package/dist/constructs/v1beta3/event/EventSchema.js +1 -1
  76. package/dist/constructs/v1beta3/event/EventSchema.mjs +1 -1
  77. package/dist/constructs/v1beta3/filter/Filter.d.ts +1300 -1438
  78. package/dist/constructs/v1beta3/filter/FilterSchema.js +7 -7
  79. package/dist/constructs/v1beta3/filter/FilterSchema.mjs +7 -7
  80. package/dist/constructs/v1beta3/invitation/Invitation.d.ts +911 -1278
  81. package/dist/constructs/v1beta3/invitation/InvitationSchema.js +1 -1
  82. package/dist/constructs/v1beta3/invitation/InvitationSchema.mjs +1 -1
  83. package/dist/constructs/v1beta3/performance_profile/PerformanceProfile.d.ts +1114 -1412
  84. package/dist/constructs/v1beta3/performance_profile/PerformanceProfileSchema.js +1 -1
  85. package/dist/constructs/v1beta3/performance_profile/PerformanceProfileSchema.mjs +1 -1
  86. package/dist/constructs/v1beta3/plan/Plan.d.ts +156 -197
  87. package/dist/constructs/v1beta3/relationship/Relationship.d.ts +2013 -1844
  88. package/dist/constructs/v1beta3/subscription/Subscription.d.ts +804 -969
  89. package/dist/constructs/v1beta3/token/Token.d.ts +480 -617
  90. package/dist/constructs/v1beta3/token/TokenSchema.js +1 -1
  91. package/dist/constructs/v1beta3/token/TokenSchema.mjs +1 -1
  92. package/dist/constructs/v1beta3/workspace/Workspace.d.ts +4825 -5033
  93. package/dist/index.d.mts +5032 -5501
  94. package/dist/index.d.ts +5032 -5501
  95. package/dist/mesheryApi.d.mts +3334 -884
  96. package/dist/mesheryApi.d.ts +3334 -884
  97. package/dist/mesheryApi.js +1 -1
  98. package/dist/mesheryApi.mjs +1 -1
  99. package/dist/permissions.d.mts +25 -1
  100. package/dist/permissions.d.ts +25 -1
  101. package/dist/permissions.js +1 -1
  102. package/dist/permissions.mjs +1 -1
  103. package/package.json +1 -1
@@ -4,134 +4,667 @@
4
4
  */
5
5
 
6
6
  export interface paths {
7
- "/api/content/filters": {
8
- parameters: {
9
- query?: never;
10
- header?: never;
11
- path?: never;
12
- cookie?: never;
13
- };
7
+ "/api/content/filters": {
8
+ /** Returns a paginated list of filters accessible to the user. */
9
+ get: operations["getFilters"];
10
+ /** Creates or updates a Meshery filter. */
11
+ post: operations["upsertFilter"];
12
+ };
13
+ "/api/content/filters/delete": {
14
+ /**
15
+ * Deletes multiple filters by ID. Modeled as a `POST .../delete`
16
+ * sub-resource because REST clients and proxies may strip request
17
+ * bodies on `DELETE`.
18
+ */
19
+ post: operations["deleteFilters"];
20
+ };
21
+ "/api/content/filters/{filterId}": {
22
+ get: operations["getFilter"];
23
+ /**
24
+ * Updates the filter at the supplied ID with the provided payload.
25
+ * Provided as a canonical-CRUD complement to the upsert `POST
26
+ * /api/content/filters` form so consumers that prefer explicit
27
+ * update semantics can address the resource directly.
28
+ */
29
+ put: operations["updateFilter"];
30
+ delete: operations["deleteFilter"];
31
+ };
32
+ "/api/content/filters/clone/{filterId}": {
33
+ /** Creates a copy of an existing filter. */
34
+ post: operations["cloneFilter"];
35
+ };
36
+ "/api/content/filters/download/{filterId}": {
37
+ /**
38
+ * Downloads the raw filter body associated with the supplied
39
+ * filter ID. The server streams the bytes verbatim with
40
+ * `Content-Type: application/wasm` and a
41
+ * `Content-Disposition: attachment` header naming the filter.
42
+ */
43
+ get: operations["getFilterFile"];
44
+ };
45
+ }
46
+
47
+ export interface components {
48
+ schemas: {
49
+ /**
50
+ * Filter Schema
51
+ * @description Server-returned Meshery filter resource as persisted by meshery-cloud
52
+ * (`meshery_filters` table) and consumed by meshery's
53
+ * `models.MesheryFilter`. Filters carry an opaque body (`filterFile`) plus
54
+ * catalog and visibility metadata, and follow the same content-resource
55
+ * shape as designs minus the catalog engagement counters (the
56
+ * `meshery_filters` table has no `view_count` / `download_count` columns).
57
+ */
58
+ MesheryFilter: {
59
+ /**
60
+ * Format: uuid
61
+ * @description Server-generated filter ID.
62
+ */
63
+ id: string;
64
+ /** @description Human-readable filter name; required, used for catalog listings. */
65
+ name: string;
66
+ /**
67
+ * Format: uuid
68
+ * @description Owning user ID.
69
+ */
70
+ owner: string;
71
+ /**
72
+ * Format: byte
73
+ * @description Raw filter source persisted as a byte array (`bytea` column
74
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
75
+ */
76
+ filterFile?: string;
77
+ /**
78
+ * @description Filter resource discriminator describing the filter body's source
79
+ * format (e.g. WASM module identifier or external resource path).
80
+ * Stored in the `filter_resource` text column.
81
+ */
82
+ filterResource?: string;
83
+ /** @description Optional structured location metadata (branch, host, path, ...). */
84
+ location?: { [key: string]: string };
85
+ /**
86
+ * @description Visibility scope (private, public, published).
87
+ * @enum {string}
88
+ */
89
+ visibility?: "private" | "public" | "published";
90
+ /** @description Catalog metadata attached to the filter when published. */
91
+ catalogData?: {
92
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
93
+ publishedVersion?: string;
94
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
95
+ class?: string;
14
96
  /**
15
- * Get filters
16
- * @description Returns a paginated list of filters accessible to the user.
97
+ * Model
98
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
17
99
  */
18
- get: operations["getFilters"];
19
- put?: never;
100
+ compatibility: "kubernetes"[];
20
101
  /**
21
- * Save filter
22
- * @description Creates or updates a Meshery filter.
102
+ * Caveats and Considerations
103
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
23
104
  */
24
- post: operations["upsertFilter"];
25
- delete?: never;
26
- options?: never;
27
- head?: never;
28
- patch?: never;
29
- trace?: never;
105
+ patternCaveats: string;
106
+ /**
107
+ * Description
108
+ * @description Purpose of the design along with its intended and unintended uses.
109
+ */
110
+ patternInfo: string;
111
+ /**
112
+ * Type
113
+ * @description Categorization of the type of design or operational flow depicted in this design.
114
+ * @default Deployment
115
+ * @enum {string}
116
+ */
117
+ type:
118
+ | "Deployment"
119
+ | "Observability"
120
+ | "Resiliency"
121
+ | "Scaling"
122
+ | "Security"
123
+ | "Traffic-management"
124
+ | "Troubleshooting"
125
+ | "Workloads";
126
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
127
+ snapshotURL?: string[];
128
+ };
129
+ /**
130
+ * Format: date-time
131
+ * @description Timestamp of filter creation.
132
+ */
133
+ createdAt: string;
134
+ /**
135
+ * Format: date-time
136
+ * @description Timestamp of last filter modification.
137
+ */
138
+ updatedAt: string;
30
139
  };
31
- "/api/content/filters/delete": {
32
- parameters: {
33
- query?: never;
34
- header?: never;
35
- path?: never;
36
- cookie?: never;
37
- };
38
- get?: never;
39
- put?: never;
140
+ /**
141
+ * @description Payload for creating or updating a filter via
142
+ * `POST /api/content/filters` or
143
+ * `PUT /api/content/filters/{filterId}`. Contains only
144
+ * client-settable fields; server-generated `createdAt` /
145
+ * `updatedAt` and the owning `userId` (which the server derives
146
+ * from the authenticated session) are intentionally excluded.
147
+ */
148
+ MesheryFilterPayload: {
149
+ /**
150
+ * Format: uuid
151
+ * @description Existing filter ID for updates; omit on create. Wrapped in
152
+ * an `allOf` so we can attach the `json:"id,omitempty"` tag
153
+ * for upsert ergonomics without recursing into the underlying
154
+ * UUID definition.
155
+ */
156
+ id?: string;
157
+ /** @description Human-readable filter name. */
158
+ name: string;
159
+ /**
160
+ * Format: byte
161
+ * @description Raw filter source as base64-encoded bytes (`format: byte`).
162
+ * Optional on update — the server preserves the existing body
163
+ * when omitted.
164
+ */
165
+ filterFile?: string;
166
+ /**
167
+ * @description Filter resource discriminator describing the body's source
168
+ * format (e.g. WASM module identifier or external resource
169
+ * path).
170
+ */
171
+ filterResource?: string;
172
+ /** @description Optional structured location metadata. */
173
+ location?: { [key: string]: string };
174
+ /**
175
+ * @description Requested visibility scope. The server may downgrade a
176
+ * requested `published` value to `private` for callers that
177
+ * do not own the filter.
178
+ *
179
+ * @enum {string}
180
+ */
181
+ visibility?: "private" | "public" | "published";
182
+ /** @description Catalog metadata to attach when publishing. */
183
+ catalogData?: {
184
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
185
+ publishedVersion?: string;
186
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
187
+ class?: string;
188
+ /**
189
+ * Model
190
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
191
+ */
192
+ compatibility: "kubernetes"[];
193
+ /**
194
+ * Caveats and Considerations
195
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
196
+ */
197
+ patternCaveats: string;
40
198
  /**
41
- * Bulk delete filters
42
- * @description Deletes multiple filters by ID. Modeled as a `POST .../delete`
43
- * sub-resource because REST clients and proxies may strip request
44
- * bodies on `DELETE`.
199
+ * Description
200
+ * @description Purpose of the design along with its intended and unintended uses.
45
201
  */
46
- post: operations["deleteFilters"];
47
- delete?: never;
48
- options?: never;
49
- head?: never;
50
- patch?: never;
51
- trace?: never;
202
+ patternInfo: string;
203
+ /**
204
+ * Type
205
+ * @description Categorization of the type of design or operational flow depicted in this design.
206
+ * @default Deployment
207
+ * @enum {string}
208
+ */
209
+ type:
210
+ | "Deployment"
211
+ | "Observability"
212
+ | "Resiliency"
213
+ | "Scaling"
214
+ | "Security"
215
+ | "Traffic-management"
216
+ | "Troubleshooting"
217
+ | "Workloads";
218
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
219
+ snapshotURL?: string[];
220
+ };
52
221
  };
53
- "/api/content/filters/{filterId}": {
54
- parameters: {
55
- query?: never;
56
- header?: never;
57
- path?: never;
58
- cookie?: never;
222
+ /** @description Paginated collection of filters. */
223
+ MesheryFilterPage: {
224
+ /** @description Current page number of the result set. */
225
+ page?: number;
226
+ /** @description Number of items per page. */
227
+ pageSize?: number;
228
+ /** @description Total number of items available. */
229
+ totalCount?: number;
230
+ /** @description Filters included on this page of results. */
231
+ filters?: {
232
+ /**
233
+ * Format: uuid
234
+ * @description Server-generated filter ID.
235
+ */
236
+ id: string;
237
+ /** @description Human-readable filter name; required, used for catalog listings. */
238
+ name: string;
239
+ /**
240
+ * Format: uuid
241
+ * @description Owning user ID.
242
+ */
243
+ owner: string;
244
+ /**
245
+ * Format: byte
246
+ * @description Raw filter source persisted as a byte array (`bytea` column
247
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
248
+ */
249
+ filterFile?: string;
250
+ /**
251
+ * @description Filter resource discriminator describing the filter body's source
252
+ * format (e.g. WASM module identifier or external resource path).
253
+ * Stored in the `filter_resource` text column.
254
+ */
255
+ filterResource?: string;
256
+ /** @description Optional structured location metadata (branch, host, path, ...). */
257
+ location?: { [key: string]: string };
258
+ /**
259
+ * @description Visibility scope (private, public, published).
260
+ * @enum {string}
261
+ */
262
+ visibility?: "private" | "public" | "published";
263
+ /** @description Catalog metadata attached to the filter when published. */
264
+ catalogData?: {
265
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
266
+ publishedVersion?: string;
267
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
268
+ class?: string;
269
+ /**
270
+ * Model
271
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
272
+ */
273
+ compatibility: "kubernetes"[];
274
+ /**
275
+ * Caveats and Considerations
276
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
277
+ */
278
+ patternCaveats: string;
279
+ /**
280
+ * Description
281
+ * @description Purpose of the design along with its intended and unintended uses.
282
+ */
283
+ patternInfo: string;
284
+ /**
285
+ * Type
286
+ * @description Categorization of the type of design or operational flow depicted in this design.
287
+ * @default Deployment
288
+ * @enum {string}
289
+ */
290
+ type:
291
+ | "Deployment"
292
+ | "Observability"
293
+ | "Resiliency"
294
+ | "Scaling"
295
+ | "Security"
296
+ | "Traffic-management"
297
+ | "Troubleshooting"
298
+ | "Workloads";
299
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
300
+ snapshotURL?: string[];
59
301
  };
60
- /** Get filter by ID */
61
- get: operations["getFilter"];
62
302
  /**
63
- * Update filter by ID
64
- * @description Updates the filter at the supplied ID with the provided payload.
65
- * Provided as a canonical-CRUD complement to the upsert `POST
66
- * /api/content/filters` form so consumers that prefer explicit
67
- * update semantics can address the resource directly.
303
+ * Format: date-time
304
+ * @description Timestamp of filter creation.
68
305
  */
69
- put: operations["updateFilter"];
70
- post?: never;
71
- /** Delete filter by ID */
72
- delete: operations["deleteFilter"];
73
- options?: never;
74
- head?: never;
75
- patch?: never;
76
- trace?: never;
306
+ createdAt: string;
307
+ /**
308
+ * Format: date-time
309
+ * @description Timestamp of last filter modification.
310
+ */
311
+ updatedAt: string;
312
+ }[];
77
313
  };
78
- "/api/content/filters/clone/{filterId}": {
79
- parameters: {
80
- query?: never;
81
- header?: never;
82
- path?: never;
83
- cookie?: never;
84
- };
85
- get?: never;
86
- put?: never;
314
+ /** @description Reference to a filter for bulk deletion by ID. */
315
+ DeleteFilterModel: {
316
+ /**
317
+ * Format: uuid
318
+ * @description Filter ID targeted for deletion.
319
+ */
320
+ id?: string;
321
+ /**
322
+ * @description Human-readable filter name (informational only; the server
323
+ * matches on `id`).
324
+ */
325
+ name?: string;
326
+ };
327
+ /** @description Payload for bulk deleting filters by ID. */
328
+ MesheryFilterDeleteRequestBody: {
329
+ /** @description Filters targeted for deletion. */
330
+ filters: {
87
331
  /**
88
- * Clone filter
89
- * @description Creates a copy of an existing filter.
332
+ * Format: uuid
333
+ * @description Filter ID targeted for deletion.
90
334
  */
91
- post: operations["cloneFilter"];
92
- delete?: never;
93
- options?: never;
94
- head?: never;
95
- patch?: never;
96
- trace?: never;
335
+ id?: string;
336
+ /**
337
+ * @description Human-readable filter name (informational only; the server
338
+ * matches on `id`).
339
+ */
340
+ name?: string;
341
+ }[];
97
342
  };
98
- "/api/content/filters/download/{filterId}": {
99
- parameters: {
100
- query?: never;
101
- header?: never;
102
- path?: never;
103
- cookie?: never;
104
- };
343
+ /**
344
+ * @description Payload for `POST /api/content/filters/clone/{filterId}`. The
345
+ * only client-settable field is the optional name applied to the
346
+ * cloned filter; the server derives ownership and visibility from
347
+ * the request context.
348
+ */
349
+ MesheryFilterCloneRequestBody: {
350
+ /**
351
+ * @description Optional name to apply to the cloned filter. Defaults to a
352
+ * server-generated derivative of the source filter's name.
353
+ */
354
+ name?: string;
355
+ };
356
+ /**
357
+ * @description Payload for upserting a filter via `POST /api/content/filters`.
358
+ * Mirrors meshery-cloud's `MesheryFilterRequestBody` and
359
+ * meshery's `MesheryFilterRequestBody` — the wrapper carries an
360
+ * optional source URL/path plus a `save` toggle and an embedded
361
+ * `filterData` payload. Wire form for the embedded payload field
362
+ * is canonical camelCase (`filterData`); legacy snake_case
363
+ * (`filter_data`) is accepted by the existing handlers for the
364
+ * deprecation window but new clients MUST emit `filterData`.
365
+ */
366
+ MesheryFilterRequestBody: {
367
+ /**
368
+ * Format: uri
369
+ * @description Optional source URL the filter was fetched from.
370
+ */
371
+ url?: string;
372
+ /** @description Optional source path the filter was loaded from. */
373
+ path?: string;
374
+ /**
375
+ * @description When true, persist the filter in addition to parsing it.
376
+ * When false, the server returns the parsed payload without
377
+ * committing it to the database.
378
+ */
379
+ save?: boolean;
380
+ /** @description Filter body to persist. */
381
+ filterData?: {
382
+ /**
383
+ * Format: uuid
384
+ * @description Existing filter ID for updates; omit on create. Wrapped in
385
+ * an `allOf` so we can attach the `json:"id,omitempty"` tag
386
+ * for upsert ergonomics without recursing into the underlying
387
+ * UUID definition.
388
+ */
389
+ id?: string;
390
+ /** @description Human-readable filter name. */
391
+ name: string;
392
+ /**
393
+ * Format: byte
394
+ * @description Raw filter source as base64-encoded bytes (`format: byte`).
395
+ * Optional on update — the server preserves the existing body
396
+ * when omitted.
397
+ */
398
+ filterFile?: string;
399
+ /**
400
+ * @description Filter resource discriminator describing the body's source
401
+ * format (e.g. WASM module identifier or external resource
402
+ * path).
403
+ */
404
+ filterResource?: string;
405
+ /** @description Optional structured location metadata. */
406
+ location?: { [key: string]: string };
105
407
  /**
106
- * Download filter file
107
- * @description Downloads the raw filter body associated with the supplied
108
- * filter ID. The server streams the bytes verbatim with
109
- * `Content-Type: application/wasm` and a
110
- * `Content-Disposition: attachment` header naming the filter.
408
+ * @description Requested visibility scope. The server may downgrade a
409
+ * requested `published` value to `private` for callers that
410
+ * do not own the filter.
411
+ *
412
+ * @enum {string}
111
413
  */
112
- get: operations["getFilterFile"];
113
- put?: never;
114
- post?: never;
115
- delete?: never;
116
- options?: never;
117
- head?: never;
118
- patch?: never;
119
- trace?: never;
414
+ visibility?: "private" | "public" | "published";
415
+ /** @description Catalog metadata to attach when publishing. */
416
+ catalogData?: {
417
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
418
+ publishedVersion?: string;
419
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
420
+ class?: string;
421
+ /**
422
+ * Model
423
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
424
+ */
425
+ compatibility: "kubernetes"[];
426
+ /**
427
+ * Caveats and Considerations
428
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
429
+ */
430
+ patternCaveats: string;
431
+ /**
432
+ * Description
433
+ * @description Purpose of the design along with its intended and unintended uses.
434
+ */
435
+ patternInfo: string;
436
+ /**
437
+ * Type
438
+ * @description Categorization of the type of design or operational flow depicted in this design.
439
+ * @default Deployment
440
+ * @enum {string}
441
+ */
442
+ type:
443
+ | "Deployment"
444
+ | "Observability"
445
+ | "Resiliency"
446
+ | "Scaling"
447
+ | "Security"
448
+ | "Traffic-management"
449
+ | "Troubleshooting"
450
+ | "Workloads";
451
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
452
+ snapshotURL?: string[];
453
+ };
454
+ };
455
+ /**
456
+ * @description Optional opaque configuration string passed through to the
457
+ * underlying filter runtime. Persisted only on the local
458
+ * meshery `MesheryFilterPayload` shape; meshery-cloud
459
+ * currently ignores the field, but it is documented here so
460
+ * the canonical contract is single-sourced.
461
+ */
462
+ config?: string;
463
+ };
464
+ /** @description Flat canonical representation of the filter import form that combines the UI-level uploadType discriminator with the union of properties from MesheryFilterPayload (filterFile, filterResource). This schema is the authoritative source for the canonical RJSF form schema at schemas/constructs/v1beta3/filter/forms/import.json. The server receives a MesheryFilterPayload; this form schema captures the superset of user-facing fields (including the UI-only uploadType discriminator) so the form schema can be validated as a subset of this canonical type. */
465
+ MesheryFilterImportFormPayload: {
466
+ /** @description Human-readable filter name. */
467
+ name: string;
468
+ /**
469
+ * Upload method
470
+ * @description UI-level discriminator that controls which import variant the form submits. "File Upload" maps to a base64-encoded filterFile body; "URL Upload" maps to a filterResource path/URL.
471
+ *
472
+ * @enum {string}
473
+ */
474
+ uploadType: "File Upload" | "URL Upload";
475
+ /**
476
+ * Format: byte
477
+ * @description Raw filter source as base64-encoded bytes. Required when uploadType is "File Upload".
478
+ */
479
+ filterFile?: string;
480
+ /** @description Filter resource discriminator describing the body's source format (e.g. WASM module identifier or external resource path). Required when uploadType is "URL Upload". */
481
+ filterResource?: string;
482
+ };
483
+ };
484
+ responses: {
485
+ /** Invalid request body or request param */
486
+ 400: {
487
+ content: {
488
+ "text/plain": string;
489
+ };
490
+ };
491
+ /** Expired JWT token used or insufficient privilege */
492
+ 401: {
493
+ content: {
494
+ "text/plain": string;
495
+ };
496
+ };
497
+ /** Result not found */
498
+ 404: {
499
+ content: {
500
+ "text/plain": string;
501
+ };
502
+ };
503
+ /** Internal server error */
504
+ 500: {
505
+ content: {
506
+ "text/plain": string;
507
+ };
120
508
  };
509
+ };
510
+ parameters: {
511
+ /** @description Filter ID */
512
+ filterId: string;
513
+ /** @description Get responses by page */
514
+ page: string;
515
+ /** @description Number of items per page (canonical camelCase form). */
516
+ pageSize: number;
517
+ /** @description Get responses that match search param value */
518
+ search: string;
519
+ /** @description Get ordered responses */
520
+ order: string;
521
+ /** @description User's organization ID */
522
+ orgIdQuery: string;
523
+ };
121
524
  }
122
- export type webhooks = Record<string, never>;
123
- export interface components {
124
- schemas: {
525
+
526
+ export interface operations {
527
+ /** Returns a paginated list of filters accessible to the user. */
528
+ getFilters: {
529
+ parameters: {
530
+ query: {
531
+ /** Get responses by page */
532
+ page?: string;
533
+ /** Number of items per page (canonical camelCase form). */
534
+ pageSize?: number;
535
+ /** Get responses that match search param value */
536
+ search?: string;
537
+ /** Get ordered responses */
538
+ order?: string;
539
+ /** User's organization ID */
540
+ orgId?: string;
541
+ /** Filter by visibility (public, private, published). May be repeated. */
542
+ visibility?: string[];
125
543
  /**
126
- * Filter Schema
127
- * @description Server-returned Meshery filter resource as persisted by meshery-cloud
128
- * (`meshery_filters` table) and consumed by meshery's
129
- * `models.MesheryFilter`. Filters carry an opaque body (`filterFile`) plus
130
- * catalog and visibility metadata, and follow the same content-resource
131
- * shape as designs minus the catalog engagement counters (the
132
- * `meshery_filters` table has no `view_count` / `download_count` columns).
544
+ * UUID of the owning user. Pass when fetching public/published
545
+ * filters for a specific user (public-profile lookups).
133
546
  */
134
- MesheryFilter: {
547
+ userId?: string;
548
+ };
549
+ };
550
+ responses: {
551
+ /** Filters response */
552
+ 200: {
553
+ content: {
554
+ "application/json": {
555
+ /** @description Current page number of the result set. */
556
+ page?: number;
557
+ /** @description Number of items per page. */
558
+ pageSize?: number;
559
+ /** @description Total number of items available. */
560
+ totalCount?: number;
561
+ /** @description Filters included on this page of results. */
562
+ filters?: {
563
+ /**
564
+ * Format: uuid
565
+ * @description Server-generated filter ID.
566
+ */
567
+ id: string;
568
+ /** @description Human-readable filter name; required, used for catalog listings. */
569
+ name: string;
570
+ /**
571
+ * Format: uuid
572
+ * @description Owning user ID.
573
+ */
574
+ owner: string;
575
+ /**
576
+ * Format: byte
577
+ * @description Raw filter source persisted as a byte array (`bytea` column
578
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
579
+ */
580
+ filterFile?: string;
581
+ /**
582
+ * @description Filter resource discriminator describing the filter body's source
583
+ * format (e.g. WASM module identifier or external resource path).
584
+ * Stored in the `filter_resource` text column.
585
+ */
586
+ filterResource?: string;
587
+ /** @description Optional structured location metadata (branch, host, path, ...). */
588
+ location?: { [key: string]: string };
589
+ /**
590
+ * @description Visibility scope (private, public, published).
591
+ * @enum {string}
592
+ */
593
+ visibility?: "private" | "public" | "published";
594
+ /** @description Catalog metadata attached to the filter when published. */
595
+ catalogData?: {
596
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
597
+ publishedVersion?: string;
598
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
599
+ class?: string;
600
+ /**
601
+ * Model
602
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
603
+ */
604
+ compatibility: "kubernetes"[];
605
+ /**
606
+ * Caveats and Considerations
607
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
608
+ */
609
+ patternCaveats: string;
610
+ /**
611
+ * Description
612
+ * @description Purpose of the design along with its intended and unintended uses.
613
+ */
614
+ patternInfo: string;
615
+ /**
616
+ * Type
617
+ * @description Categorization of the type of design or operational flow depicted in this design.
618
+ * @default Deployment
619
+ * @enum {string}
620
+ */
621
+ type:
622
+ | "Deployment"
623
+ | "Observability"
624
+ | "Resiliency"
625
+ | "Scaling"
626
+ | "Security"
627
+ | "Traffic-management"
628
+ | "Troubleshooting"
629
+ | "Workloads";
630
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
631
+ snapshotURL?: string[];
632
+ };
633
+ /**
634
+ * Format: date-time
635
+ * @description Timestamp of filter creation.
636
+ */
637
+ createdAt: string;
638
+ /**
639
+ * Format: date-time
640
+ * @description Timestamp of last filter modification.
641
+ */
642
+ updatedAt: string;
643
+ }[];
644
+ };
645
+ };
646
+ };
647
+ /** Expired JWT token used or insufficient privilege */
648
+ 401: {
649
+ content: {
650
+ "text/plain": string;
651
+ };
652
+ };
653
+ /** Internal server error */
654
+ 500: {
655
+ content: {
656
+ "text/plain": string;
657
+ };
658
+ };
659
+ };
660
+ };
661
+ /** Creates or updates a Meshery filter. */
662
+ upsertFilter: {
663
+ responses: {
664
+ /** Filter saved */
665
+ 200: {
666
+ content: {
667
+ "application/json": {
135
668
  /**
136
669
  * Format: uuid
137
670
  * @description Server-generated filter ID.
@@ -143,23 +676,21 @@ export interface components {
143
676
  * Format: uuid
144
677
  * @description Owning user ID.
145
678
  */
146
- userId: string;
679
+ owner: string;
147
680
  /**
148
681
  * Format: byte
149
682
  * @description Raw filter source persisted as a byte array (`bytea` column
150
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
683
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
151
684
  */
152
685
  filterFile?: string;
153
686
  /**
154
687
  * @description Filter resource discriminator describing the filter body's source
155
- * format (e.g. WASM module identifier or external resource path).
156
- * Stored in the `filter_resource` text column.
688
+ * format (e.g. WASM module identifier or external resource path).
689
+ * Stored in the `filter_resource` text column.
157
690
  */
158
691
  filterResource?: string;
159
692
  /** @description Optional structured location metadata (branch, host, path, ...). */
160
- location?: {
161
- [key: string]: string;
162
- };
693
+ location?: { [key: string]: string };
163
694
  /**
164
695
  * @description Visibility scope (private, public, published).
165
696
  * @enum {string}
@@ -167,34 +698,42 @@ export interface components {
167
698
  visibility?: "private" | "public" | "published";
168
699
  /** @description Catalog metadata attached to the filter when published. */
169
700
  catalogData?: {
170
- /** @description Tracks the specific content version that has been made available in the Catalog. */
171
- publishedVersion?: string;
172
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
173
- class?: string & ("official" | "verified" | "reference architecture");
174
- /**
175
- * Model
176
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
177
- */
178
- compatibility: "kubernetes"[];
179
- /**
180
- * Caveats and Considerations
181
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
182
- */
183
- patternCaveats: string;
184
- /**
185
- * Description
186
- * @description Purpose of the design along with its intended and unintended uses.
187
- */
188
- patternInfo: string;
189
- /**
190
- * Type
191
- * @description Categorization of the type of design or operational flow depicted in this design.
192
- * @default Deployment
193
- * @enum {string}
194
- */
195
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
196
- /** @description Contains reference to the dark and light mode snapshots of the design. */
197
- snapshotURL?: string[];
701
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
702
+ publishedVersion?: string;
703
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
704
+ class?: string;
705
+ /**
706
+ * Model
707
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
708
+ */
709
+ compatibility: "kubernetes"[];
710
+ /**
711
+ * Caveats and Considerations
712
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
713
+ */
714
+ patternCaveats: string;
715
+ /**
716
+ * Description
717
+ * @description Purpose of the design along with its intended and unintended uses.
718
+ */
719
+ patternInfo: string;
720
+ /**
721
+ * Type
722
+ * @description Categorization of the type of design or operational flow depicted in this design.
723
+ * @default Deployment
724
+ * @enum {string}
725
+ */
726
+ type:
727
+ | "Deployment"
728
+ | "Observability"
729
+ | "Resiliency"
730
+ | "Scaling"
731
+ | "Security"
732
+ | "Traffic-management"
733
+ | "Troubleshooting"
734
+ | "Workloads";
735
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
736
+ snapshotURL?: string[];
198
737
  };
199
738
  /**
200
739
  * Format: date-time
@@ -206,22 +745,52 @@ export interface components {
206
745
  * @description Timestamp of last filter modification.
207
746
  */
208
747
  updatedAt: string;
748
+ };
209
749
  };
210
- /**
211
- * @description Payload for creating or updating a filter via
212
- * `POST /api/content/filters` or
213
- * `PUT /api/content/filters/{filterId}`. Contains only
214
- * client-settable fields; server-generated `createdAt` /
215
- * `updatedAt` and the owning `userId` (which the server derives
216
- * from the authenticated session) are intentionally excluded.
217
- */
218
- MesheryFilterPayload: {
750
+ };
751
+ /** Invalid request body or request param */
752
+ 400: {
753
+ content: {
754
+ "text/plain": string;
755
+ };
756
+ };
757
+ /** Expired JWT token used or insufficient privilege */
758
+ 401: {
759
+ content: {
760
+ "text/plain": string;
761
+ };
762
+ };
763
+ /** Internal server error */
764
+ 500: {
765
+ content: {
766
+ "text/plain": string;
767
+ };
768
+ };
769
+ };
770
+ requestBody: {
771
+ content: {
772
+ "application/json": {
773
+ /**
774
+ * Format: uri
775
+ * @description Optional source URL the filter was fetched from.
776
+ */
777
+ url?: string;
778
+ /** @description Optional source path the filter was loaded from. */
779
+ path?: string;
780
+ /**
781
+ * @description When true, persist the filter in addition to parsing it.
782
+ * When false, the server returns the parsed payload without
783
+ * committing it to the database.
784
+ */
785
+ save?: boolean;
786
+ /** @description Filter body to persist. */
787
+ filterData?: {
219
788
  /**
220
789
  * Format: uuid
221
790
  * @description Existing filter ID for updates; omit on create. Wrapped in
222
- * an `allOf` so we can attach the `json:"id,omitempty"` tag
223
- * for upsert ergonomics without recursing into the underlying
224
- * UUID definition.
791
+ * an `allOf` so we can attach the `json:"id,omitempty"` tag
792
+ * for upsert ergonomics without recursing into the underlying
793
+ * UUID definition.
225
794
  */
226
795
  id?: string;
227
796
  /** @description Human-readable filter name. */
@@ -229,147 +798,111 @@ export interface components {
229
798
  /**
230
799
  * Format: byte
231
800
  * @description Raw filter source as base64-encoded bytes (`format: byte`).
232
- * Optional on update — the server preserves the existing body
233
- * when omitted.
801
+ * Optional on update — the server preserves the existing body
802
+ * when omitted.
234
803
  */
235
804
  filterFile?: string;
236
805
  /**
237
806
  * @description Filter resource discriminator describing the body's source
238
- * format (e.g. WASM module identifier or external resource
239
- * path).
807
+ * format (e.g. WASM module identifier or external resource
808
+ * path).
240
809
  */
241
810
  filterResource?: string;
242
811
  /** @description Optional structured location metadata. */
243
- location?: {
244
- [key: string]: string;
245
- };
812
+ location?: { [key: string]: string };
246
813
  /**
247
814
  * @description Requested visibility scope. The server may downgrade a
248
- * requested `published` value to `private` for callers that
249
- * do not own the filter.
815
+ * requested `published` value to `private` for callers that
816
+ * do not own the filter.
817
+ *
250
818
  * @enum {string}
251
819
  */
252
820
  visibility?: "private" | "public" | "published";
253
821
  /** @description Catalog metadata to attach when publishing. */
254
822
  catalogData?: {
255
- /** @description Tracks the specific content version that has been made available in the Catalog. */
256
- publishedVersion?: string;
257
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
258
- class?: string & ("official" | "verified" | "reference architecture");
259
- /**
260
- * Model
261
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
262
- */
263
- compatibility: "kubernetes"[];
264
- /**
265
- * Caveats and Considerations
266
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
267
- */
268
- patternCaveats: string;
269
- /**
270
- * Description
271
- * @description Purpose of the design along with its intended and unintended uses.
272
- */
273
- patternInfo: string;
274
- /**
275
- * Type
276
- * @description Categorization of the type of design or operational flow depicted in this design.
277
- * @default Deployment
278
- * @enum {string}
279
- */
280
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
281
- /** @description Contains reference to the dark and light mode snapshots of the design. */
282
- snapshotURL?: string[];
823
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
824
+ publishedVersion?: string;
825
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
826
+ class?: string;
827
+ /**
828
+ * Model
829
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
830
+ */
831
+ compatibility: "kubernetes"[];
832
+ /**
833
+ * Caveats and Considerations
834
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
835
+ */
836
+ patternCaveats: string;
837
+ /**
838
+ * Description
839
+ * @description Purpose of the design along with its intended and unintended uses.
840
+ */
841
+ patternInfo: string;
842
+ /**
843
+ * Type
844
+ * @description Categorization of the type of design or operational flow depicted in this design.
845
+ * @default Deployment
846
+ * @enum {string}
847
+ */
848
+ type:
849
+ | "Deployment"
850
+ | "Observability"
851
+ | "Resiliency"
852
+ | "Scaling"
853
+ | "Security"
854
+ | "Traffic-management"
855
+ | "Troubleshooting"
856
+ | "Workloads";
857
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
858
+ snapshotURL?: string[];
283
859
  };
860
+ };
861
+ /**
862
+ * @description Optional opaque configuration string passed through to the
863
+ * underlying filter runtime. Persisted only on the local
864
+ * meshery `MesheryFilterPayload` shape; meshery-cloud
865
+ * currently ignores the field, but it is documented here so
866
+ * the canonical contract is single-sourced.
867
+ */
868
+ config?: string;
284
869
  };
285
- /** @description Paginated collection of filters. */
286
- MesheryFilterPage: {
287
- /** @description Current page number of the result set. */
288
- page?: number;
289
- /** @description Number of items per page. */
290
- pageSize?: number;
291
- /** @description Total number of items available. */
292
- totalCount?: number;
293
- /** @description Filters included on this page of results. */
294
- filters?: {
295
- /**
296
- * Format: uuid
297
- * @description Server-generated filter ID.
298
- */
299
- id: string;
300
- /** @description Human-readable filter name; required, used for catalog listings. */
301
- name: string;
302
- /**
303
- * Format: uuid
304
- * @description Owning user ID.
305
- */
306
- userId: string;
307
- /**
308
- * Format: byte
309
- * @description Raw filter source persisted as a byte array (`bytea` column
310
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
311
- */
312
- filterFile?: string;
313
- /**
314
- * @description Filter resource discriminator describing the filter body's source
315
- * format (e.g. WASM module identifier or external resource path).
316
- * Stored in the `filter_resource` text column.
317
- */
318
- filterResource?: string;
319
- /** @description Optional structured location metadata (branch, host, path, ...). */
320
- location?: {
321
- [key: string]: string;
322
- };
323
- /**
324
- * @description Visibility scope (private, public, published).
325
- * @enum {string}
326
- */
327
- visibility?: "private" | "public" | "published";
328
- /** @description Catalog metadata attached to the filter when published. */
329
- catalogData?: {
330
- /** @description Tracks the specific content version that has been made available in the Catalog. */
331
- publishedVersion?: string;
332
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
333
- class?: string & ("official" | "verified" | "reference architecture");
334
- /**
335
- * Model
336
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
337
- */
338
- compatibility: "kubernetes"[];
339
- /**
340
- * Caveats and Considerations
341
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
342
- */
343
- patternCaveats: string;
344
- /**
345
- * Description
346
- * @description Purpose of the design along with its intended and unintended uses.
347
- */
348
- patternInfo: string;
349
- /**
350
- * Type
351
- * @description Categorization of the type of design or operational flow depicted in this design.
352
- * @default Deployment
353
- * @enum {string}
354
- */
355
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
356
- /** @description Contains reference to the dark and light mode snapshots of the design. */
357
- snapshotURL?: string[];
358
- };
359
- /**
360
- * Format: date-time
361
- * @description Timestamp of filter creation.
362
- */
363
- createdAt: string;
364
- /**
365
- * Format: date-time
366
- * @description Timestamp of last filter modification.
367
- */
368
- updatedAt: string;
369
- }[];
870
+ };
871
+ };
872
+ };
873
+ /**
874
+ * Deletes multiple filters by ID. Modeled as a `POST .../delete`
875
+ * sub-resource because REST clients and proxies may strip request
876
+ * bodies on `DELETE`.
877
+ */
878
+ deleteFilters: {
879
+ responses: {
880
+ /** Filters deleted */
881
+ 200: unknown;
882
+ /** Invalid request body or request param */
883
+ 400: {
884
+ content: {
885
+ "text/plain": string;
886
+ };
887
+ };
888
+ /** Expired JWT token used or insufficient privilege */
889
+ 401: {
890
+ content: {
891
+ "text/plain": string;
370
892
  };
371
- /** @description Reference to a filter for bulk deletion by ID. */
372
- DeleteFilterModel: {
893
+ };
894
+ /** Internal server error */
895
+ 500: {
896
+ content: {
897
+ "text/plain": string;
898
+ };
899
+ };
900
+ };
901
+ requestBody: {
902
+ content: {
903
+ "application/json": {
904
+ /** @description Filters targeted for deletion. */
905
+ filters: {
373
906
  /**
374
907
  * Format: uuid
375
908
  * @description Filter ID targeted for deletion.
@@ -377,1214 +910,543 @@ export interface components {
377
910
  id?: string;
378
911
  /**
379
912
  * @description Human-readable filter name (informational only; the server
380
- * matches on `id`).
913
+ * matches on `id`).
381
914
  */
382
915
  name?: string;
916
+ }[];
383
917
  };
384
- /** @description Payload for bulk deleting filters by ID. */
385
- MesheryFilterDeleteRequestBody: {
386
- /** @description Filters targeted for deletion. */
387
- filters: {
388
- /**
389
- * Format: uuid
390
- * @description Filter ID targeted for deletion.
391
- */
392
- id?: string;
393
- /**
394
- * @description Human-readable filter name (informational only; the server
395
- * matches on `id`).
396
- */
397
- name?: string;
398
- }[];
399
- };
400
- /**
401
- * @description Payload for `POST /api/content/filters/clone/{filterId}`. The
402
- * only client-settable field is the optional name applied to the
403
- * cloned filter; the server derives ownership and visibility from
404
- * the request context.
405
- */
406
- MesheryFilterCloneRequestBody: {
918
+ };
919
+ };
920
+ };
921
+ getFilter: {
922
+ parameters: {
923
+ path: {
924
+ /** Filter ID */
925
+ filterId: string;
926
+ };
927
+ };
928
+ responses: {
929
+ /** Filter response */
930
+ 200: {
931
+ content: {
932
+ "application/json": {
407
933
  /**
408
- * @description Optional name to apply to the cloned filter. Defaults to a
409
- * server-generated derivative of the source filter's name.
934
+ * Format: uuid
935
+ * @description Server-generated filter ID.
410
936
  */
411
- name?: string;
412
- };
413
- /**
414
- * @description Payload for upserting a filter via `POST /api/content/filters`.
415
- * Mirrors meshery-cloud's `MesheryFilterRequestBody` and
416
- * meshery's `MesheryFilterRequestBody` — the wrapper carries an
417
- * optional source URL/path plus a `save` toggle and an embedded
418
- * `filterData` payload. Wire form for the embedded payload field
419
- * is canonical camelCase (`filterData`); legacy snake_case
420
- * (`filter_data`) is accepted by the existing handlers for the
421
- * deprecation window but new clients MUST emit `filterData`.
422
- */
423
- MesheryFilterRequestBody: {
937
+ id: string;
938
+ /** @description Human-readable filter name; required, used for catalog listings. */
939
+ name: string;
424
940
  /**
425
- * Format: uri
426
- * @description Optional source URL the filter was fetched from.
941
+ * Format: uuid
942
+ * @description Owning user ID.
427
943
  */
428
- url?: string;
429
- /** @description Optional source path the filter was loaded from. */
430
- path?: string;
944
+ owner: string;
431
945
  /**
432
- * @description When true, persist the filter in addition to parsing it.
433
- * When false, the server returns the parsed payload without
434
- * committing it to the database.
946
+ * Format: byte
947
+ * @description Raw filter source persisted as a byte array (`bytea` column
948
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
435
949
  */
436
- save?: boolean;
437
- /** @description Filter body to persist. */
438
- filterData?: {
439
- /**
440
- * Format: uuid
441
- * @description Existing filter ID for updates; omit on create. Wrapped in
442
- * an `allOf` so we can attach the `json:"id,omitempty"` tag
443
- * for upsert ergonomics without recursing into the underlying
444
- * UUID definition.
445
- */
446
- id?: string;
447
- /** @description Human-readable filter name. */
448
- name: string;
449
- /**
450
- * Format: byte
451
- * @description Raw filter source as base64-encoded bytes (`format: byte`).
452
- * Optional on update — the server preserves the existing body
453
- * when omitted.
454
- */
455
- filterFile?: string;
456
- /**
457
- * @description Filter resource discriminator describing the body's source
458
- * format (e.g. WASM module identifier or external resource
459
- * path).
460
- */
461
- filterResource?: string;
462
- /** @description Optional structured location metadata. */
463
- location?: {
464
- [key: string]: string;
465
- };
466
- /**
467
- * @description Requested visibility scope. The server may downgrade a
468
- * requested `published` value to `private` for callers that
469
- * do not own the filter.
470
- * @enum {string}
471
- */
472
- visibility?: "private" | "public" | "published";
473
- /** @description Catalog metadata to attach when publishing. */
474
- catalogData?: {
475
- /** @description Tracks the specific content version that has been made available in the Catalog. */
476
- publishedVersion?: string;
477
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
478
- class?: string & ("official" | "verified" | "reference architecture");
479
- /**
480
- * Model
481
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
482
- */
483
- compatibility: "kubernetes"[];
484
- /**
485
- * Caveats and Considerations
486
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
487
- */
488
- patternCaveats: string;
489
- /**
490
- * Description
491
- * @description Purpose of the design along with its intended and unintended uses.
492
- */
493
- patternInfo: string;
494
- /**
495
- * Type
496
- * @description Categorization of the type of design or operational flow depicted in this design.
497
- * @default Deployment
498
- * @enum {string}
499
- */
500
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
501
- /** @description Contains reference to the dark and light mode snapshots of the design. */
502
- snapshotURL?: string[];
503
- };
504
- };
950
+ filterFile?: string;
505
951
  /**
506
- * @description Optional opaque configuration string passed through to the
507
- * underlying filter runtime. Persisted only on the local
508
- * meshery `MesheryFilterPayload` shape; meshery-cloud
509
- * currently ignores the field, but it is documented here so
510
- * the canonical contract is single-sourced.
952
+ * @description Filter resource discriminator describing the filter body's source
953
+ * format (e.g. WASM module identifier or external resource path).
954
+ * Stored in the `filter_resource` text column.
511
955
  */
512
- config?: string;
513
- };
514
- /** @description Flat canonical representation of the filter import form that combines the UI-level uploadType discriminator with the union of properties from MesheryFilterPayload (filterFile, filterResource). This schema is the authoritative source for the canonical RJSF form schema at schemas/constructs/v1beta3/filter/forms/import.json. The server receives a MesheryFilterPayload; this form schema captures the superset of user-facing fields (including the UI-only uploadType discriminator) so the form schema can be validated as a subset of this canonical type. */
515
- MesheryFilterImportFormPayload: {
516
- /** @description Human-readable filter name. */
517
- name: string;
956
+ filterResource?: string;
957
+ /** @description Optional structured location metadata (branch, host, path, ...). */
958
+ location?: { [key: string]: string };
518
959
  /**
519
- * Upload method
520
- * @description UI-level discriminator that controls which import variant the form submits. "File Upload" maps to a base64-encoded filterFile body; "URL Upload" maps to a filterResource path/URL.
960
+ * @description Visibility scope (private, public, published).
521
961
  * @enum {string}
522
962
  */
523
- uploadType: "File Upload" | "URL Upload";
963
+ visibility?: "private" | "public" | "published";
964
+ /** @description Catalog metadata attached to the filter when published. */
965
+ catalogData?: {
966
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
967
+ publishedVersion?: string;
968
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
969
+ class?: string;
970
+ /**
971
+ * Model
972
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
973
+ */
974
+ compatibility: "kubernetes"[];
975
+ /**
976
+ * Caveats and Considerations
977
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
978
+ */
979
+ patternCaveats: string;
980
+ /**
981
+ * Description
982
+ * @description Purpose of the design along with its intended and unintended uses.
983
+ */
984
+ patternInfo: string;
985
+ /**
986
+ * Type
987
+ * @description Categorization of the type of design or operational flow depicted in this design.
988
+ * @default Deployment
989
+ * @enum {string}
990
+ */
991
+ type:
992
+ | "Deployment"
993
+ | "Observability"
994
+ | "Resiliency"
995
+ | "Scaling"
996
+ | "Security"
997
+ | "Traffic-management"
998
+ | "Troubleshooting"
999
+ | "Workloads";
1000
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
1001
+ snapshotURL?: string[];
1002
+ };
1003
+ /**
1004
+ * Format: date-time
1005
+ * @description Timestamp of filter creation.
1006
+ */
1007
+ createdAt: string;
524
1008
  /**
525
- * Format: byte
526
- * @description Raw filter source as base64-encoded bytes. Required when uploadType is "File Upload".
1009
+ * Format: date-time
1010
+ * @description Timestamp of last filter modification.
527
1011
  */
528
- filterFile?: string;
529
- /** @description Filter resource discriminator describing the body's source format (e.g. WASM module identifier or external resource path). Required when uploadType is "URL Upload". */
530
- filterResource?: string;
1012
+ updatedAt: string;
1013
+ };
531
1014
  };
532
- };
533
- responses: {
534
- /** @description Invalid request body or request param */
535
- 400: {
536
- headers: {
537
- [name: string]: unknown;
538
- };
539
- content: {
540
- "text/plain": string;
541
- };
1015
+ };
1016
+ /** Invalid request body or request param */
1017
+ 400: {
1018
+ content: {
1019
+ "text/plain": string;
542
1020
  };
543
- /** @description Expired JWT token used or insufficient privilege */
544
- 401: {
545
- headers: {
546
- [name: string]: unknown;
547
- };
548
- content: {
549
- "text/plain": string;
550
- };
1021
+ };
1022
+ /** Expired JWT token used or insufficient privilege */
1023
+ 401: {
1024
+ content: {
1025
+ "text/plain": string;
551
1026
  };
552
- /** @description Result not found */
553
- 404: {
554
- headers: {
555
- [name: string]: unknown;
556
- };
557
- content: {
558
- "text/plain": string;
559
- };
1027
+ };
1028
+ /** Result not found */
1029
+ 404: {
1030
+ content: {
1031
+ "text/plain": string;
560
1032
  };
561
- /** @description Internal server error */
562
- 500: {
563
- headers: {
564
- [name: string]: unknown;
565
- };
566
- content: {
567
- "text/plain": string;
568
- };
1033
+ };
1034
+ /** Internal server error */
1035
+ 500: {
1036
+ content: {
1037
+ "text/plain": string;
569
1038
  };
1039
+ };
570
1040
  };
1041
+ };
1042
+ /**
1043
+ * Updates the filter at the supplied ID with the provided payload.
1044
+ * Provided as a canonical-CRUD complement to the upsert `POST
1045
+ * /api/content/filters` form so consumers that prefer explicit
1046
+ * update semantics can address the resource directly.
1047
+ */
1048
+ updateFilter: {
571
1049
  parameters: {
572
- /** @description Filter ID */
1050
+ path: {
1051
+ /** Filter ID */
573
1052
  filterId: string;
574
- /** @description Get responses by page */
575
- page: string;
576
- /** @description Number of items per page (canonical camelCase form). */
577
- pageSize: number;
578
- /** @description Get responses that match search param value */
579
- search: string;
580
- /** @description Get ordered responses */
581
- order: string;
582
- /** @description User's organization ID */
583
- orgIdQuery: string;
1053
+ };
584
1054
  };
585
- requestBodies: never;
586
- headers: never;
587
- pathItems: never;
588
- }
589
- export type $defs = Record<string, never>;
590
- export interface operations {
591
- getFilters: {
592
- parameters: {
593
- query?: {
594
- /** @description Get responses by page */
595
- page?: string;
596
- /** @description Number of items per page (canonical camelCase form). */
597
- pageSize?: number;
598
- /** @description Get responses that match search param value */
599
- search?: string;
600
- /** @description Get ordered responses */
601
- order?: string;
602
- /** @description User's organization ID */
603
- orgId?: string;
604
- /** @description Filter by visibility (public, private, published). May be repeated. */
605
- visibility?: string[];
606
- /**
607
- * @description UUID of the owning user. Pass when fetching public/published
608
- * filters for a specific user (public-profile lookups).
609
- */
610
- userId?: string;
1055
+ responses: {
1056
+ /** Filter updated */
1057
+ 200: {
1058
+ content: {
1059
+ "application/json": {
1060
+ /**
1061
+ * Format: uuid
1062
+ * @description Server-generated filter ID.
1063
+ */
1064
+ id: string;
1065
+ /** @description Human-readable filter name; required, used for catalog listings. */
1066
+ name: string;
1067
+ /**
1068
+ * Format: uuid
1069
+ * @description Owning user ID.
1070
+ */
1071
+ owner: string;
1072
+ /**
1073
+ * Format: byte
1074
+ * @description Raw filter source persisted as a byte array (`bytea` column
1075
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
1076
+ */
1077
+ filterFile?: string;
1078
+ /**
1079
+ * @description Filter resource discriminator describing the filter body's source
1080
+ * format (e.g. WASM module identifier or external resource path).
1081
+ * Stored in the `filter_resource` text column.
1082
+ */
1083
+ filterResource?: string;
1084
+ /** @description Optional structured location metadata (branch, host, path, ...). */
1085
+ location?: { [key: string]: string };
1086
+ /**
1087
+ * @description Visibility scope (private, public, published).
1088
+ * @enum {string}
1089
+ */
1090
+ visibility?: "private" | "public" | "published";
1091
+ /** @description Catalog metadata attached to the filter when published. */
1092
+ catalogData?: {
1093
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
1094
+ publishedVersion?: string;
1095
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1096
+ class?: string;
1097
+ /**
1098
+ * Model
1099
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1100
+ */
1101
+ compatibility: "kubernetes"[];
1102
+ /**
1103
+ * Caveats and Considerations
1104
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1105
+ */
1106
+ patternCaveats: string;
1107
+ /**
1108
+ * Description
1109
+ * @description Purpose of the design along with its intended and unintended uses.
1110
+ */
1111
+ patternInfo: string;
1112
+ /**
1113
+ * Type
1114
+ * @description Categorization of the type of design or operational flow depicted in this design.
1115
+ * @default Deployment
1116
+ * @enum {string}
1117
+ */
1118
+ type:
1119
+ | "Deployment"
1120
+ | "Observability"
1121
+ | "Resiliency"
1122
+ | "Scaling"
1123
+ | "Security"
1124
+ | "Traffic-management"
1125
+ | "Troubleshooting"
1126
+ | "Workloads";
1127
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
1128
+ snapshotURL?: string[];
611
1129
  };
612
- header?: never;
613
- path?: never;
614
- cookie?: never;
1130
+ /**
1131
+ * Format: date-time
1132
+ * @description Timestamp of filter creation.
1133
+ */
1134
+ createdAt: string;
1135
+ /**
1136
+ * Format: date-time
1137
+ * @description Timestamp of last filter modification.
1138
+ */
1139
+ updatedAt: string;
1140
+ };
615
1141
  };
616
- requestBody?: never;
617
- responses: {
618
- /** @description Filters response */
619
- 200: {
620
- headers: {
621
- [name: string]: unknown;
622
- };
623
- content: {
624
- "application/json": {
625
- /** @description Current page number of the result set. */
626
- page?: number;
627
- /** @description Number of items per page. */
628
- pageSize?: number;
629
- /** @description Total number of items available. */
630
- totalCount?: number;
631
- /** @description Filters included on this page of results. */
632
- filters?: {
633
- /**
634
- * Format: uuid
635
- * @description Server-generated filter ID.
636
- */
637
- id: string;
638
- /** @description Human-readable filter name; required, used for catalog listings. */
639
- name: string;
640
- /**
641
- * Format: uuid
642
- * @description Owning user ID.
643
- */
644
- userId: string;
645
- /**
646
- * Format: byte
647
- * @description Raw filter source persisted as a byte array (`bytea` column
648
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
649
- */
650
- filterFile?: string;
651
- /**
652
- * @description Filter resource discriminator describing the filter body's source
653
- * format (e.g. WASM module identifier or external resource path).
654
- * Stored in the `filter_resource` text column.
655
- */
656
- filterResource?: string;
657
- /** @description Optional structured location metadata (branch, host, path, ...). */
658
- location?: {
659
- [key: string]: string;
660
- };
661
- /**
662
- * @description Visibility scope (private, public, published).
663
- * @enum {string}
664
- */
665
- visibility?: "private" | "public" | "published";
666
- /** @description Catalog metadata attached to the filter when published. */
667
- catalogData?: {
668
- /** @description Tracks the specific content version that has been made available in the Catalog. */
669
- publishedVersion?: string;
670
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
671
- class?: string & ("official" | "verified" | "reference architecture");
672
- /**
673
- * Model
674
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
675
- */
676
- compatibility: "kubernetes"[];
677
- /**
678
- * Caveats and Considerations
679
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
680
- */
681
- patternCaveats: string;
682
- /**
683
- * Description
684
- * @description Purpose of the design along with its intended and unintended uses.
685
- */
686
- patternInfo: string;
687
- /**
688
- * Type
689
- * @description Categorization of the type of design or operational flow depicted in this design.
690
- * @default Deployment
691
- * @enum {string}
692
- */
693
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
694
- /** @description Contains reference to the dark and light mode snapshots of the design. */
695
- snapshotURL?: string[];
696
- };
697
- /**
698
- * Format: date-time
699
- * @description Timestamp of filter creation.
700
- */
701
- createdAt: string;
702
- /**
703
- * Format: date-time
704
- * @description Timestamp of last filter modification.
705
- */
706
- updatedAt: string;
707
- }[];
708
- };
709
- };
710
- };
711
- /** @description Expired JWT token used or insufficient privilege */
712
- 401: {
713
- headers: {
714
- [name: string]: unknown;
715
- };
716
- content: {
717
- "text/plain": string;
718
- };
719
- };
720
- /** @description Internal server error */
721
- 500: {
722
- headers: {
723
- [name: string]: unknown;
724
- };
725
- content: {
726
- "text/plain": string;
727
- };
728
- };
1142
+ };
1143
+ /** Invalid request body or request param */
1144
+ 400: {
1145
+ content: {
1146
+ "text/plain": string;
729
1147
  };
730
- };
731
- upsertFilter: {
732
- parameters: {
733
- query?: never;
734
- header?: never;
735
- path?: never;
736
- cookie?: never;
1148
+ };
1149
+ /** Expired JWT token used or insufficient privilege */
1150
+ 401: {
1151
+ content: {
1152
+ "text/plain": string;
737
1153
  };
738
- requestBody: {
739
- content: {
740
- "application/json": {
741
- /**
742
- * Format: uri
743
- * @description Optional source URL the filter was fetched from.
744
- */
745
- url?: string;
746
- /** @description Optional source path the filter was loaded from. */
747
- path?: string;
748
- /**
749
- * @description When true, persist the filter in addition to parsing it.
750
- * When false, the server returns the parsed payload without
751
- * committing it to the database.
752
- */
753
- save?: boolean;
754
- /** @description Filter body to persist. */
755
- filterData?: {
756
- /**
757
- * Format: uuid
758
- * @description Existing filter ID for updates; omit on create. Wrapped in
759
- * an `allOf` so we can attach the `json:"id,omitempty"` tag
760
- * for upsert ergonomics without recursing into the underlying
761
- * UUID definition.
762
- */
763
- id?: string;
764
- /** @description Human-readable filter name. */
765
- name: string;
766
- /**
767
- * Format: byte
768
- * @description Raw filter source as base64-encoded bytes (`format: byte`).
769
- * Optional on update — the server preserves the existing body
770
- * when omitted.
771
- */
772
- filterFile?: string;
773
- /**
774
- * @description Filter resource discriminator describing the body's source
775
- * format (e.g. WASM module identifier or external resource
776
- * path).
777
- */
778
- filterResource?: string;
779
- /** @description Optional structured location metadata. */
780
- location?: {
781
- [key: string]: string;
782
- };
783
- /**
784
- * @description Requested visibility scope. The server may downgrade a
785
- * requested `published` value to `private` for callers that
786
- * do not own the filter.
787
- * @enum {string}
788
- */
789
- visibility?: "private" | "public" | "published";
790
- /** @description Catalog metadata to attach when publishing. */
791
- catalogData?: {
792
- /** @description Tracks the specific content version that has been made available in the Catalog. */
793
- publishedVersion?: string;
794
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
795
- class?: string & ("official" | "verified" | "reference architecture");
796
- /**
797
- * Model
798
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
799
- */
800
- compatibility: "kubernetes"[];
801
- /**
802
- * Caveats and Considerations
803
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
804
- */
805
- patternCaveats: string;
806
- /**
807
- * Description
808
- * @description Purpose of the design along with its intended and unintended uses.
809
- */
810
- patternInfo: string;
811
- /**
812
- * Type
813
- * @description Categorization of the type of design or operational flow depicted in this design.
814
- * @default Deployment
815
- * @enum {string}
816
- */
817
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
818
- /** @description Contains reference to the dark and light mode snapshots of the design. */
819
- snapshotURL?: string[];
820
- };
821
- };
822
- /**
823
- * @description Optional opaque configuration string passed through to the
824
- * underlying filter runtime. Persisted only on the local
825
- * meshery `MesheryFilterPayload` shape; meshery-cloud
826
- * currently ignores the field, but it is documented here so
827
- * the canonical contract is single-sourced.
828
- */
829
- config?: string;
830
- };
831
- };
1154
+ };
1155
+ /** Result not found */
1156
+ 404: {
1157
+ content: {
1158
+ "text/plain": string;
832
1159
  };
833
- responses: {
834
- /** @description Filter saved */
835
- 200: {
836
- headers: {
837
- [name: string]: unknown;
838
- };
839
- content: {
840
- "application/json": {
841
- /**
842
- * Format: uuid
843
- * @description Server-generated filter ID.
844
- */
845
- id: string;
846
- /** @description Human-readable filter name; required, used for catalog listings. */
847
- name: string;
848
- /**
849
- * Format: uuid
850
- * @description Owning user ID.
851
- */
852
- userId: string;
853
- /**
854
- * Format: byte
855
- * @description Raw filter source persisted as a byte array (`bytea` column
856
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
857
- */
858
- filterFile?: string;
859
- /**
860
- * @description Filter resource discriminator describing the filter body's source
861
- * format (e.g. WASM module identifier or external resource path).
862
- * Stored in the `filter_resource` text column.
863
- */
864
- filterResource?: string;
865
- /** @description Optional structured location metadata (branch, host, path, ...). */
866
- location?: {
867
- [key: string]: string;
868
- };
869
- /**
870
- * @description Visibility scope (private, public, published).
871
- * @enum {string}
872
- */
873
- visibility?: "private" | "public" | "published";
874
- /** @description Catalog metadata attached to the filter when published. */
875
- catalogData?: {
876
- /** @description Tracks the specific content version that has been made available in the Catalog. */
877
- publishedVersion?: string;
878
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
879
- class?: string & ("official" | "verified" | "reference architecture");
880
- /**
881
- * Model
882
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
883
- */
884
- compatibility: "kubernetes"[];
885
- /**
886
- * Caveats and Considerations
887
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
888
- */
889
- patternCaveats: string;
890
- /**
891
- * Description
892
- * @description Purpose of the design along with its intended and unintended uses.
893
- */
894
- patternInfo: string;
895
- /**
896
- * Type
897
- * @description Categorization of the type of design or operational flow depicted in this design.
898
- * @default Deployment
899
- * @enum {string}
900
- */
901
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
902
- /** @description Contains reference to the dark and light mode snapshots of the design. */
903
- snapshotURL?: string[];
904
- };
905
- /**
906
- * Format: date-time
907
- * @description Timestamp of filter creation.
908
- */
909
- createdAt: string;
910
- /**
911
- * Format: date-time
912
- * @description Timestamp of last filter modification.
913
- */
914
- updatedAt: string;
915
- };
916
- };
917
- };
918
- /** @description Invalid request body or request param */
919
- 400: {
920
- headers: {
921
- [name: string]: unknown;
922
- };
923
- content: {
924
- "text/plain": string;
925
- };
926
- };
927
- /** @description Expired JWT token used or insufficient privilege */
928
- 401: {
929
- headers: {
930
- [name: string]: unknown;
931
- };
932
- content: {
933
- "text/plain": string;
934
- };
935
- };
936
- /** @description Internal server error */
937
- 500: {
938
- headers: {
939
- [name: string]: unknown;
940
- };
941
- content: {
942
- "text/plain": string;
943
- };
944
- };
1160
+ };
1161
+ /** Internal server error */
1162
+ 500: {
1163
+ content: {
1164
+ "text/plain": string;
945
1165
  };
1166
+ };
946
1167
  };
947
- deleteFilters: {
948
- parameters: {
949
- query?: never;
950
- header?: never;
951
- path?: never;
952
- cookie?: never;
953
- };
954
- requestBody: {
955
- content: {
956
- "application/json": {
957
- /** @description Filters targeted for deletion. */
958
- filters: {
959
- /**
960
- * Format: uuid
961
- * @description Filter ID targeted for deletion.
962
- */
963
- id?: string;
964
- /**
965
- * @description Human-readable filter name (informational only; the server
966
- * matches on `id`).
967
- */
968
- name?: string;
969
- }[];
970
- };
971
- };
972
- };
973
- responses: {
974
- /** @description Filters deleted */
975
- 200: {
976
- headers: {
977
- [name: string]: unknown;
978
- };
979
- content?: never;
980
- };
981
- /** @description Invalid request body or request param */
982
- 400: {
983
- headers: {
984
- [name: string]: unknown;
985
- };
986
- content: {
987
- "text/plain": string;
988
- };
989
- };
990
- /** @description Expired JWT token used or insufficient privilege */
991
- 401: {
992
- headers: {
993
- [name: string]: unknown;
994
- };
995
- content: {
996
- "text/plain": string;
997
- };
998
- };
999
- /** @description Internal server error */
1000
- 500: {
1001
- headers: {
1002
- [name: string]: unknown;
1003
- };
1004
- content: {
1005
- "text/plain": string;
1006
- };
1007
- };
1168
+ requestBody: {
1169
+ content: {
1170
+ "application/json": {
1171
+ /**
1172
+ * Format: uuid
1173
+ * @description Existing filter ID for updates; omit on create. Wrapped in
1174
+ * an `allOf` so we can attach the `json:"id,omitempty"` tag
1175
+ * for upsert ergonomics without recursing into the underlying
1176
+ * UUID definition.
1177
+ */
1178
+ id?: string;
1179
+ /** @description Human-readable filter name. */
1180
+ name: string;
1181
+ /**
1182
+ * Format: byte
1183
+ * @description Raw filter source as base64-encoded bytes (`format: byte`).
1184
+ * Optional on update — the server preserves the existing body
1185
+ * when omitted.
1186
+ */
1187
+ filterFile?: string;
1188
+ /**
1189
+ * @description Filter resource discriminator describing the body's source
1190
+ * format (e.g. WASM module identifier or external resource
1191
+ * path).
1192
+ */
1193
+ filterResource?: string;
1194
+ /** @description Optional structured location metadata. */
1195
+ location?: { [key: string]: string };
1196
+ /**
1197
+ * @description Requested visibility scope. The server may downgrade a
1198
+ * requested `published` value to `private` for callers that
1199
+ * do not own the filter.
1200
+ *
1201
+ * @enum {string}
1202
+ */
1203
+ visibility?: "private" | "public" | "published";
1204
+ /** @description Catalog metadata to attach when publishing. */
1205
+ catalogData?: {
1206
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
1207
+ publishedVersion?: string;
1208
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1209
+ class?: string;
1210
+ /**
1211
+ * Model
1212
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1213
+ */
1214
+ compatibility: "kubernetes"[];
1215
+ /**
1216
+ * Caveats and Considerations
1217
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1218
+ */
1219
+ patternCaveats: string;
1220
+ /**
1221
+ * Description
1222
+ * @description Purpose of the design along with its intended and unintended uses.
1223
+ */
1224
+ patternInfo: string;
1225
+ /**
1226
+ * Type
1227
+ * @description Categorization of the type of design or operational flow depicted in this design.
1228
+ * @default Deployment
1229
+ * @enum {string}
1230
+ */
1231
+ type:
1232
+ | "Deployment"
1233
+ | "Observability"
1234
+ | "Resiliency"
1235
+ | "Scaling"
1236
+ | "Security"
1237
+ | "Traffic-management"
1238
+ | "Troubleshooting"
1239
+ | "Workloads";
1240
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
1241
+ snapshotURL?: string[];
1242
+ };
1008
1243
  };
1244
+ };
1009
1245
  };
1010
- getFilter: {
1011
- parameters: {
1012
- query?: never;
1013
- header?: never;
1014
- path: {
1015
- /** @description Filter ID */
1016
- filterId: string;
1017
- };
1018
- cookie?: never;
1246
+ };
1247
+ deleteFilter: {
1248
+ parameters: {
1249
+ path: {
1250
+ /** Filter ID */
1251
+ filterId: string;
1252
+ };
1253
+ };
1254
+ responses: {
1255
+ /** Filter deleted */
1256
+ 204: never;
1257
+ /** Expired JWT token used or insufficient privilege */
1258
+ 401: {
1259
+ content: {
1260
+ "text/plain": string;
1019
1261
  };
1020
- requestBody?: never;
1021
- responses: {
1022
- /** @description Filter response */
1023
- 200: {
1024
- headers: {
1025
- [name: string]: unknown;
1026
- };
1027
- content: {
1028
- "application/json": {
1029
- /**
1030
- * Format: uuid
1031
- * @description Server-generated filter ID.
1032
- */
1033
- id: string;
1034
- /** @description Human-readable filter name; required, used for catalog listings. */
1035
- name: string;
1036
- /**
1037
- * Format: uuid
1038
- * @description Owning user ID.
1039
- */
1040
- userId: string;
1041
- /**
1042
- * Format: byte
1043
- * @description Raw filter source persisted as a byte array (`bytea` column
1044
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
1045
- */
1046
- filterFile?: string;
1047
- /**
1048
- * @description Filter resource discriminator describing the filter body's source
1049
- * format (e.g. WASM module identifier or external resource path).
1050
- * Stored in the `filter_resource` text column.
1051
- */
1052
- filterResource?: string;
1053
- /** @description Optional structured location metadata (branch, host, path, ...). */
1054
- location?: {
1055
- [key: string]: string;
1056
- };
1057
- /**
1058
- * @description Visibility scope (private, public, published).
1059
- * @enum {string}
1060
- */
1061
- visibility?: "private" | "public" | "published";
1062
- /** @description Catalog metadata attached to the filter when published. */
1063
- catalogData?: {
1064
- /** @description Tracks the specific content version that has been made available in the Catalog. */
1065
- publishedVersion?: string;
1066
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1067
- class?: string & ("official" | "verified" | "reference architecture");
1068
- /**
1069
- * Model
1070
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1071
- */
1072
- compatibility: "kubernetes"[];
1073
- /**
1074
- * Caveats and Considerations
1075
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1076
- */
1077
- patternCaveats: string;
1078
- /**
1079
- * Description
1080
- * @description Purpose of the design along with its intended and unintended uses.
1081
- */
1082
- patternInfo: string;
1083
- /**
1084
- * Type
1085
- * @description Categorization of the type of design or operational flow depicted in this design.
1086
- * @default Deployment
1087
- * @enum {string}
1088
- */
1089
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
1090
- /** @description Contains reference to the dark and light mode snapshots of the design. */
1091
- snapshotURL?: string[];
1092
- };
1093
- /**
1094
- * Format: date-time
1095
- * @description Timestamp of filter creation.
1096
- */
1097
- createdAt: string;
1098
- /**
1099
- * Format: date-time
1100
- * @description Timestamp of last filter modification.
1101
- */
1102
- updatedAt: string;
1103
- };
1104
- };
1105
- };
1106
- /** @description Invalid request body or request param */
1107
- 400: {
1108
- headers: {
1109
- [name: string]: unknown;
1110
- };
1111
- content: {
1112
- "text/plain": string;
1113
- };
1114
- };
1115
- /** @description Expired JWT token used or insufficient privilege */
1116
- 401: {
1117
- headers: {
1118
- [name: string]: unknown;
1119
- };
1120
- content: {
1121
- "text/plain": string;
1122
- };
1123
- };
1124
- /** @description Result not found */
1125
- 404: {
1126
- headers: {
1127
- [name: string]: unknown;
1128
- };
1129
- content: {
1130
- "text/plain": string;
1131
- };
1132
- };
1133
- /** @description Internal server error */
1134
- 500: {
1135
- headers: {
1136
- [name: string]: unknown;
1137
- };
1138
- content: {
1139
- "text/plain": string;
1140
- };
1141
- };
1262
+ };
1263
+ /** Result not found */
1264
+ 404: {
1265
+ content: {
1266
+ "text/plain": string;
1267
+ };
1268
+ };
1269
+ /** Internal server error */
1270
+ 500: {
1271
+ content: {
1272
+ "text/plain": string;
1142
1273
  };
1274
+ };
1143
1275
  };
1144
- updateFilter: {
1145
- parameters: {
1146
- query?: never;
1147
- header?: never;
1148
- path: {
1149
- /** @description Filter ID */
1150
- filterId: string;
1276
+ };
1277
+ /** Creates a copy of an existing filter. */
1278
+ cloneFilter: {
1279
+ parameters: {
1280
+ path: {
1281
+ /** Filter ID */
1282
+ filterId: string;
1283
+ };
1284
+ };
1285
+ responses: {
1286
+ /** Filter cloned */
1287
+ 200: {
1288
+ content: {
1289
+ "application/json": {
1290
+ /**
1291
+ * Format: uuid
1292
+ * @description Server-generated filter ID.
1293
+ */
1294
+ id: string;
1295
+ /** @description Human-readable filter name; required, used for catalog listings. */
1296
+ name: string;
1297
+ /**
1298
+ * Format: uuid
1299
+ * @description Owning user ID.
1300
+ */
1301
+ owner: string;
1302
+ /**
1303
+ * Format: byte
1304
+ * @description Raw filter source persisted as a byte array (`bytea` column
1305
+ * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
1306
+ */
1307
+ filterFile?: string;
1308
+ /**
1309
+ * @description Filter resource discriminator describing the filter body's source
1310
+ * format (e.g. WASM module identifier or external resource path).
1311
+ * Stored in the `filter_resource` text column.
1312
+ */
1313
+ filterResource?: string;
1314
+ /** @description Optional structured location metadata (branch, host, path, ...). */
1315
+ location?: { [key: string]: string };
1316
+ /**
1317
+ * @description Visibility scope (private, public, published).
1318
+ * @enum {string}
1319
+ */
1320
+ visibility?: "private" | "public" | "published";
1321
+ /** @description Catalog metadata attached to the filter when published. */
1322
+ catalogData?: {
1323
+ /** @description Tracks the specific content version that has been made available in the Catalog. */
1324
+ publishedVersion?: string;
1325
+ /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1326
+ class?: string;
1327
+ /**
1328
+ * Model
1329
+ * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1330
+ */
1331
+ compatibility: "kubernetes"[];
1332
+ /**
1333
+ * Caveats and Considerations
1334
+ * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1335
+ */
1336
+ patternCaveats: string;
1337
+ /**
1338
+ * Description
1339
+ * @description Purpose of the design along with its intended and unintended uses.
1340
+ */
1341
+ patternInfo: string;
1342
+ /**
1343
+ * Type
1344
+ * @description Categorization of the type of design or operational flow depicted in this design.
1345
+ * @default Deployment
1346
+ * @enum {string}
1347
+ */
1348
+ type:
1349
+ | "Deployment"
1350
+ | "Observability"
1351
+ | "Resiliency"
1352
+ | "Scaling"
1353
+ | "Security"
1354
+ | "Traffic-management"
1355
+ | "Troubleshooting"
1356
+ | "Workloads";
1357
+ /** @description Contains reference to the dark and light mode snapshots of the design. */
1358
+ snapshotURL?: string[];
1151
1359
  };
1152
- cookie?: never;
1360
+ /**
1361
+ * Format: date-time
1362
+ * @description Timestamp of filter creation.
1363
+ */
1364
+ createdAt: string;
1365
+ /**
1366
+ * Format: date-time
1367
+ * @description Timestamp of last filter modification.
1368
+ */
1369
+ updatedAt: string;
1370
+ };
1153
1371
  };
1154
- requestBody: {
1155
- content: {
1156
- "application/json": {
1157
- /**
1158
- * Format: uuid
1159
- * @description Existing filter ID for updates; omit on create. Wrapped in
1160
- * an `allOf` so we can attach the `json:"id,omitempty"` tag
1161
- * for upsert ergonomics without recursing into the underlying
1162
- * UUID definition.
1163
- */
1164
- id?: string;
1165
- /** @description Human-readable filter name. */
1166
- name: string;
1167
- /**
1168
- * Format: byte
1169
- * @description Raw filter source as base64-encoded bytes (`format: byte`).
1170
- * Optional on update — the server preserves the existing body
1171
- * when omitted.
1172
- */
1173
- filterFile?: string;
1174
- /**
1175
- * @description Filter resource discriminator describing the body's source
1176
- * format (e.g. WASM module identifier or external resource
1177
- * path).
1178
- */
1179
- filterResource?: string;
1180
- /** @description Optional structured location metadata. */
1181
- location?: {
1182
- [key: string]: string;
1183
- };
1184
- /**
1185
- * @description Requested visibility scope. The server may downgrade a
1186
- * requested `published` value to `private` for callers that
1187
- * do not own the filter.
1188
- * @enum {string}
1189
- */
1190
- visibility?: "private" | "public" | "published";
1191
- /** @description Catalog metadata to attach when publishing. */
1192
- catalogData?: {
1193
- /** @description Tracks the specific content version that has been made available in the Catalog. */
1194
- publishedVersion?: string;
1195
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1196
- class?: string & ("official" | "verified" | "reference architecture");
1197
- /**
1198
- * Model
1199
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1200
- */
1201
- compatibility: "kubernetes"[];
1202
- /**
1203
- * Caveats and Considerations
1204
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1205
- */
1206
- patternCaveats: string;
1207
- /**
1208
- * Description
1209
- * @description Purpose of the design along with its intended and unintended uses.
1210
- */
1211
- patternInfo: string;
1212
- /**
1213
- * Type
1214
- * @description Categorization of the type of design or operational flow depicted in this design.
1215
- * @default Deployment
1216
- * @enum {string}
1217
- */
1218
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
1219
- /** @description Contains reference to the dark and light mode snapshots of the design. */
1220
- snapshotURL?: string[];
1221
- };
1222
- };
1223
- };
1372
+ };
1373
+ /** Invalid request body or request param */
1374
+ 400: {
1375
+ content: {
1376
+ "text/plain": string;
1224
1377
  };
1225
- responses: {
1226
- /** @description Filter updated */
1227
- 200: {
1228
- headers: {
1229
- [name: string]: unknown;
1230
- };
1231
- content: {
1232
- "application/json": {
1233
- /**
1234
- * Format: uuid
1235
- * @description Server-generated filter ID.
1236
- */
1237
- id: string;
1238
- /** @description Human-readable filter name; required, used for catalog listings. */
1239
- name: string;
1240
- /**
1241
- * Format: uuid
1242
- * @description Owning user ID.
1243
- */
1244
- userId: string;
1245
- /**
1246
- * Format: byte
1247
- * @description Raw filter source persisted as a byte array (`bytea` column
1248
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
1249
- */
1250
- filterFile?: string;
1251
- /**
1252
- * @description Filter resource discriminator describing the filter body's source
1253
- * format (e.g. WASM module identifier or external resource path).
1254
- * Stored in the `filter_resource` text column.
1255
- */
1256
- filterResource?: string;
1257
- /** @description Optional structured location metadata (branch, host, path, ...). */
1258
- location?: {
1259
- [key: string]: string;
1260
- };
1261
- /**
1262
- * @description Visibility scope (private, public, published).
1263
- * @enum {string}
1264
- */
1265
- visibility?: "private" | "public" | "published";
1266
- /** @description Catalog metadata attached to the filter when published. */
1267
- catalogData?: {
1268
- /** @description Tracks the specific content version that has been made available in the Catalog. */
1269
- publishedVersion?: string;
1270
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1271
- class?: string & ("official" | "verified" | "reference architecture");
1272
- /**
1273
- * Model
1274
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1275
- */
1276
- compatibility: "kubernetes"[];
1277
- /**
1278
- * Caveats and Considerations
1279
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1280
- */
1281
- patternCaveats: string;
1282
- /**
1283
- * Description
1284
- * @description Purpose of the design along with its intended and unintended uses.
1285
- */
1286
- patternInfo: string;
1287
- /**
1288
- * Type
1289
- * @description Categorization of the type of design or operational flow depicted in this design.
1290
- * @default Deployment
1291
- * @enum {string}
1292
- */
1293
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
1294
- /** @description Contains reference to the dark and light mode snapshots of the design. */
1295
- snapshotURL?: string[];
1296
- };
1297
- /**
1298
- * Format: date-time
1299
- * @description Timestamp of filter creation.
1300
- */
1301
- createdAt: string;
1302
- /**
1303
- * Format: date-time
1304
- * @description Timestamp of last filter modification.
1305
- */
1306
- updatedAt: string;
1307
- };
1308
- };
1309
- };
1310
- /** @description Invalid request body or request param */
1311
- 400: {
1312
- headers: {
1313
- [name: string]: unknown;
1314
- };
1315
- content: {
1316
- "text/plain": string;
1317
- };
1318
- };
1319
- /** @description Expired JWT token used or insufficient privilege */
1320
- 401: {
1321
- headers: {
1322
- [name: string]: unknown;
1323
- };
1324
- content: {
1325
- "text/plain": string;
1326
- };
1327
- };
1328
- /** @description Result not found */
1329
- 404: {
1330
- headers: {
1331
- [name: string]: unknown;
1332
- };
1333
- content: {
1334
- "text/plain": string;
1335
- };
1336
- };
1337
- /** @description Internal server error */
1338
- 500: {
1339
- headers: {
1340
- [name: string]: unknown;
1341
- };
1342
- content: {
1343
- "text/plain": string;
1344
- };
1345
- };
1378
+ };
1379
+ /** Expired JWT token used or insufficient privilege */
1380
+ 401: {
1381
+ content: {
1382
+ "text/plain": string;
1346
1383
  };
1347
- };
1348
- deleteFilter: {
1349
- parameters: {
1350
- query?: never;
1351
- header?: never;
1352
- path: {
1353
- /** @description Filter ID */
1354
- filterId: string;
1355
- };
1356
- cookie?: never;
1384
+ };
1385
+ /** Result not found */
1386
+ 404: {
1387
+ content: {
1388
+ "text/plain": string;
1357
1389
  };
1358
- requestBody?: never;
1359
- responses: {
1360
- /** @description Filter deleted */
1361
- 204: {
1362
- headers: {
1363
- [name: string]: unknown;
1364
- };
1365
- content?: never;
1366
- };
1367
- /** @description Expired JWT token used or insufficient privilege */
1368
- 401: {
1369
- headers: {
1370
- [name: string]: unknown;
1371
- };
1372
- content: {
1373
- "text/plain": string;
1374
- };
1375
- };
1376
- /** @description Result not found */
1377
- 404: {
1378
- headers: {
1379
- [name: string]: unknown;
1380
- };
1381
- content: {
1382
- "text/plain": string;
1383
- };
1384
- };
1385
- /** @description Internal server error */
1386
- 500: {
1387
- headers: {
1388
- [name: string]: unknown;
1389
- };
1390
- content: {
1391
- "text/plain": string;
1392
- };
1393
- };
1390
+ };
1391
+ /** Internal server error */
1392
+ 500: {
1393
+ content: {
1394
+ "text/plain": string;
1394
1395
  };
1396
+ };
1395
1397
  };
1396
- cloneFilter: {
1397
- parameters: {
1398
- query?: never;
1399
- header?: never;
1400
- path: {
1401
- /** @description Filter ID */
1402
- filterId: string;
1403
- };
1404
- cookie?: never;
1398
+ requestBody: {
1399
+ content: {
1400
+ "application/json": {
1401
+ /**
1402
+ * @description Optional name to apply to the cloned filter. Defaults to a
1403
+ * server-generated derivative of the source filter's name.
1404
+ */
1405
+ name?: string;
1405
1406
  };
1406
- requestBody: {
1407
- content: {
1408
- "application/json": {
1409
- /**
1410
- * @description Optional name to apply to the cloned filter. Defaults to a
1411
- * server-generated derivative of the source filter's name.
1412
- */
1413
- name?: string;
1414
- };
1415
- };
1407
+ };
1408
+ };
1409
+ };
1410
+ /**
1411
+ * Downloads the raw filter body associated with the supplied
1412
+ * filter ID. The server streams the bytes verbatim with
1413
+ * `Content-Type: application/wasm` and a
1414
+ * `Content-Disposition: attachment` header naming the filter.
1415
+ */
1416
+ getFilterFile: {
1417
+ parameters: {
1418
+ path: {
1419
+ /** Filter ID */
1420
+ filterId: string;
1421
+ };
1422
+ };
1423
+ responses: {
1424
+ /** Filter file content */
1425
+ 200: {
1426
+ content: {
1427
+ "application/wasm": string;
1416
1428
  };
1417
- responses: {
1418
- /** @description Filter cloned */
1419
- 200: {
1420
- headers: {
1421
- [name: string]: unknown;
1422
- };
1423
- content: {
1424
- "application/json": {
1425
- /**
1426
- * Format: uuid
1427
- * @description Server-generated filter ID.
1428
- */
1429
- id: string;
1430
- /** @description Human-readable filter name; required, used for catalog listings. */
1431
- name: string;
1432
- /**
1433
- * Format: uuid
1434
- * @description Owning user ID.
1435
- */
1436
- userId: string;
1437
- /**
1438
- * Format: byte
1439
- * @description Raw filter source persisted as a byte array (`bytea` column
1440
- * `filter_file`). Wire form is base64 per OpenAPI `format: byte`.
1441
- */
1442
- filterFile?: string;
1443
- /**
1444
- * @description Filter resource discriminator describing the filter body's source
1445
- * format (e.g. WASM module identifier or external resource path).
1446
- * Stored in the `filter_resource` text column.
1447
- */
1448
- filterResource?: string;
1449
- /** @description Optional structured location metadata (branch, host, path, ...). */
1450
- location?: {
1451
- [key: string]: string;
1452
- };
1453
- /**
1454
- * @description Visibility scope (private, public, published).
1455
- * @enum {string}
1456
- */
1457
- visibility?: "private" | "public" | "published";
1458
- /** @description Catalog metadata attached to the filter when published. */
1459
- catalogData?: {
1460
- /** @description Tracks the specific content version that has been made available in the Catalog. */
1461
- publishedVersion?: string;
1462
- /** @description Published content is classifed by its support level. Content classes help you understand the origin and expected support level for each piece of content. It is important to note that the level of support may vary within each class, and you should exercise discretion when using community-contributed content. Content produced and fully supported by Meshery maintainers. This represents the highest level of support and is considered the most reliable. Content produced by partners and verified by Meshery maintainers. While not directly maintained by Meshery, it has undergone a verification process to ensure quality and compatibility. Content produced and supported by the respective project or organization responsible for the specific technology. This class offers a level of support from the project maintainers themselves. Content produced and shared by Meshery users. This includes a wide range of content, such as performance profiles, test results, filters, patterns, and applications. Community content may have varying levels of support and reliability. */
1463
- class?: string & ("official" | "verified" | "reference architecture");
1464
- /**
1465
- * Model
1466
- * @description One or more models associated with this catalog item. For designs, a list of one or more models implicated by components within the design. For models, this is self-referential.
1467
- */
1468
- compatibility: "kubernetes"[];
1469
- /**
1470
- * Caveats and Considerations
1471
- * @description Specific stipulations to consider and known behaviors to be aware of when using this design.
1472
- */
1473
- patternCaveats: string;
1474
- /**
1475
- * Description
1476
- * @description Purpose of the design along with its intended and unintended uses.
1477
- */
1478
- patternInfo: string;
1479
- /**
1480
- * Type
1481
- * @description Categorization of the type of design or operational flow depicted in this design.
1482
- * @default Deployment
1483
- * @enum {string}
1484
- */
1485
- type: "Deployment" | "Observability" | "Resiliency" | "Scaling" | "Security" | "Traffic-management" | "Troubleshooting" | "Workloads";
1486
- /** @description Contains reference to the dark and light mode snapshots of the design. */
1487
- snapshotURL?: string[];
1488
- };
1489
- /**
1490
- * Format: date-time
1491
- * @description Timestamp of filter creation.
1492
- */
1493
- createdAt: string;
1494
- /**
1495
- * Format: date-time
1496
- * @description Timestamp of last filter modification.
1497
- */
1498
- updatedAt: string;
1499
- };
1500
- };
1501
- };
1502
- /** @description Invalid request body or request param */
1503
- 400: {
1504
- headers: {
1505
- [name: string]: unknown;
1506
- };
1507
- content: {
1508
- "text/plain": string;
1509
- };
1510
- };
1511
- /** @description Expired JWT token used or insufficient privilege */
1512
- 401: {
1513
- headers: {
1514
- [name: string]: unknown;
1515
- };
1516
- content: {
1517
- "text/plain": string;
1518
- };
1519
- };
1520
- /** @description Result not found */
1521
- 404: {
1522
- headers: {
1523
- [name: string]: unknown;
1524
- };
1525
- content: {
1526
- "text/plain": string;
1527
- };
1528
- };
1529
- /** @description Internal server error */
1530
- 500: {
1531
- headers: {
1532
- [name: string]: unknown;
1533
- };
1534
- content: {
1535
- "text/plain": string;
1536
- };
1537
- };
1429
+ };
1430
+ /** Expired JWT token used or insufficient privilege */
1431
+ 401: {
1432
+ content: {
1433
+ "text/plain": string;
1538
1434
  };
1539
- };
1540
- getFilterFile: {
1541
- parameters: {
1542
- query?: never;
1543
- header?: never;
1544
- path: {
1545
- /** @description Filter ID */
1546
- filterId: string;
1547
- };
1548
- cookie?: never;
1435
+ };
1436
+ /** Result not found */
1437
+ 404: {
1438
+ content: {
1439
+ "text/plain": string;
1549
1440
  };
1550
- requestBody?: never;
1551
- responses: {
1552
- /** @description Filter file content */
1553
- 200: {
1554
- headers: {
1555
- [name: string]: unknown;
1556
- };
1557
- content: {
1558
- "application/wasm": string;
1559
- };
1560
- };
1561
- /** @description Expired JWT token used or insufficient privilege */
1562
- 401: {
1563
- headers: {
1564
- [name: string]: unknown;
1565
- };
1566
- content: {
1567
- "text/plain": string;
1568
- };
1569
- };
1570
- /** @description Result not found */
1571
- 404: {
1572
- headers: {
1573
- [name: string]: unknown;
1574
- };
1575
- content: {
1576
- "text/plain": string;
1577
- };
1578
- };
1579
- /** @description Internal server error */
1580
- 500: {
1581
- headers: {
1582
- [name: string]: unknown;
1583
- };
1584
- content: {
1585
- "text/plain": string;
1586
- };
1587
- };
1441
+ };
1442
+ /** Internal server error */
1443
+ 500: {
1444
+ content: {
1445
+ "text/plain": string;
1588
1446
  };
1447
+ };
1589
1448
  };
1449
+ };
1590
1450
  }
1451
+
1452
+ export interface external {}