-
Notifications
You must be signed in to change notification settings - Fork 8.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Security Solution] Add missing Lists API OpenAPI specifications #185865
Conversation
2c9293c
to
51399c7
Compare
Pinging @elastic/security-detections-response (Team:Detections and Resp) |
Pinging @elastic/security-solution (Team: SecuritySolution) |
Pinging @elastic/security-detection-rule-management (Team:Detection Rule Management) |
ed311a7
to
b13882e
Compare
b13882e
to
5d2af05
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few other minor comments, otherwise it looks awesome! Thank you @maximpn, huge effort.
💛 Build succeeded, but was flaky
Failed CI StepsTest FailuresMetrics [docs]Module Count
Public APIs missing comments
History
To update your PR or re-run it, just comment with: cc @maximpn |
…stic#185865) **Resolves:** elastic#183821 ## Summary This PR adds missing OpenAPI specifications for Lists API which are the following - `POST /api/lists` - `GET /api/lists` - `PUT /api/lists` - `DELETE /api/lists` - `PATCH /api/lists` - `GET /api/lists/_find` - `GET /api/lists/privileges` - `POST /api/lists/items` - `GET /api/lists/items` - `PUT /api/lists/items` - `DELETE /api/lists/items` - `PATCH /api/lists/items` - `POST /api/lists/items/_export` - `POST /api/lists/items/_import` - `GET /api/lists/items/_find` - `POST /api/lists/index` - `GET /api/lists/index` - `DELETE /api/lists/index` **Note:** Code generation is enabled for the added specs to verify that it works and produces expected results. Generated Zod schemas and types aren't integrated in the route's code.
## Summary While investigation one of the SDHs, I noticed that our value lists modal does not show list items anymore and shows `Failed to load list items. You can change the search query or contact your administrator` error instead. The root cause is update API which were migrated in [this PR](#185865) to OpenAPI specifications. One of the query parameters was updated to be non-empty strings when that was not required before. Since those list APIs are public, we should keep them as they were specified before, otherwise it makes breaking changes. Previously `filter` parameter was specified as a string without limitation of being non-empty: - [Find list schema](https://github.com/elastic/kibana/blob/main/packages/kbn-securitysolution-io-ts-list-types/src/request/find_list_schema/index.ts) - [Find list item schema](https://github.com/elastic/kibana/blob/main/packages/kbn-securitysolution-io-ts-list-types/src/request/find_list_item_schema/index.ts) **Current broken behaviour**: https://github.com/elastic/kibana/assets/2700761/383dfd0f-5358-4325-88fe-b4820b4e2726 **Fixed state**: https://github.com/elastic/kibana/assets/2700761/2d9adcc2-a55e-4aac-a8ff-5921222067c4 cc @maximpn
Resolves: #183821
Summary
This PR adds missing OpenAPI specifications for Lists API which are the following
POST /api/lists
GET /api/lists
PUT /api/lists
DELETE /api/lists
PATCH /api/lists
GET /api/lists/_find
GET /api/lists/privileges
POST /api/lists/items
GET /api/lists/items
PUT /api/lists/items
DELETE /api/lists/items
PATCH /api/lists/items
POST /api/lists/items/_export
POST /api/lists/items/_import
GET /api/lists/items/_find
POST /api/lists/index
GET /api/lists/index
DELETE /api/lists/index