[FEATURE] A new unified api for all the entity list operations
- Dominant language
- Java
- Stars
- 3.2k
- Forks
- 935
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 315
Description
### Describe the feature
We need a new unified api and name filter support for all the entity list operations.
The filter operation is above the tree UI, whatever filter catalog, schema or table name.
eg: A new unified api like: `api/v1/metadata ` get datas by `queryType` filter:
- list catalogs
```
curl 'https://xxxxx/api/v1/metadata' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: zh-CN,zh;q=0.9' \
-H 'Cache-Control: no-cache' \
-H 'Connection: keep-alive' \
-H 'Content-Type: application/json' \
--data-raw '{"queryType":"CATALOGS"}'
```
- list schemas
curl 'https://xxxx/api/v1/metadata' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: zh-CN,zh;q=0.9' \
-H 'Cache-Control: no-cache' \
-H 'Connection: keep-alive' \
-H 'Content-Type: application/json' \
-H 'Pragma: no-cache' \
--data-raw '{"queryType":"SCHEMAS","catalogIdentifier":{"catalogName":"catalog_hive"}}'
### Motivation
_No response_
### Describe the solution
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Start by reviewing the proposed api/v1/metadata entry point and the example CATALOGS and SCHEMAS requests in the issue. Map the remaining entity list operations and name-filter requirements before defining the unified API contract. Done means the supported list operations and filters are consistently available through the new API.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100