Assets and security APIs
Use ASSETS_BASE_URL=https://<host>/assets for assets and DATASECURITY_BASE_URL=https://<host>/datasecurity for classification and security assets. Catalog browsing, asset details, and underlying data access have separate permissions. Preserve publication and authorization workflows.
Catalogs and assets
| Method and complete path | Key inputs | Purpose |
|---|---|---|
GET /assets/catalog/structures | Required query String fromPage; confirm value for the entry point | Visible structures with id, name, access and publishing settings |
GET /assets/catalog/browse/{structureId}/{catalogId} | Long path IDs | Catalog array, not a paginated asset list |
POST /assets/catalog/subCatalog | Required body Long catalogId; isManagement, array status | Child catalogs; states UNPUBLISHED, UNDER_REVIEW, PUBLISHED, OFFLINE |
GET /assets/catalog/detail/{id} | Catalog Long id | Details wrapped in status, msg, data |
POST /assets/assets/list | Body structureId, catalogId, pageNum, pageSize; optional assetsName, range | Assets; range LIST, BROWSE, MY |
GET /assets/assets/detail/{catalogId}/{objectId} | Long catalog and underlying object IDs | assetId, ownership, steward, definition, standards, security |
The list uses SearchDto; data is an open Map. Confirm actual fields, page origins, and publication filters. For a business portal, use published, currently visible objects. Management scope, client-supplied usernames, or fields such as noRight must not expand access; the server must enforce identity and scope.
DataAssetDetailDto includes assetId, assetCode, modelId, definition, department, dataManager, domains, securityLevel, and securityCatalog. Preserve structure/catalog/asset/underlying-object mappings. assetId does not replace the path's objectId.
Classification and discovery results
Preserve both occurrences of datasecurity below: one is the service prefix, the other the controller path.
| Method and complete path | Inputs | Purpose |
|---|---|---|
GET /datasecurity/datasecurity/catalog/search | Required query String keywords | Search security categories |
GET /datasecurity/datasecurity/catalog/classify/{catalogId} | Long path ID | Category details; open response object |
POST /datasecurity/datasecurity/check/search/publishassets | Body assetName, categoryId, modelId, schema, tagId, pageNo, pageSize | Published security assets; tagId identifies security level |
POST /datasecurity/datasecurity/result/get | Body taskId, modelId, tableId, ruleId, pageNum, pageSize, etc. | Discovery results for review, not necessarily published decisions |
Example published asset query:
{
"pageNo": 1,
"pageSize": 20,
"modelId": 1001,
"schema": "demo_sales"
}Replace sample source and schema. Responses use status, msg, data; verify actual fields. Discovery suggestions are not reviewed classifications, and no result does not prove non-sensitive data.
Display security guidance in a portal
- Retrieve authorized catalogs and assets and retain identifiers.
- Read definitions, department, steward, and security details.
- Read published security assets and category definitions when needed.
- Clearly represent missing review, unavailable access, and empty results for owner follow-up.
- Direct users through requests and approvals and approved delivery.
Classification results and security gateway runtime policies are separate. A sensitivity level does not prove masking on every JDBC, API, or direct database path.
The source reference checked OpenAPI definitions without changing catalogs, suggestions, or policies. Confirm fromPage, open Maps, and pagination using deployment samples.
