Catalog Service API Reference
Complete REST API reference for all Catalog Service endpoints.
CatalogController -- /api/v1/catalog
| Method | Path | Description |
|---|---|---|
POST | /search | Full-text search across catalog entities |
GET | /suggest | Autocomplete suggestions for search |
GET | /databases | List all databases (paginated) |
GET | /databases/{fqn} | Get database by fully qualified name |
GET | /databases/datasource/{dataSourceId} | List databases by data source |
GET | /tables | List all tables (paginated) |
GET | /tables/search | Search tables by name |
GET | /tables/{fqn} | Get table by fully qualified name |
GET | /tables/{fqn}/schema | Get table schema with columns |
GET | /tables/database/{databaseId} | List tables by database |
GET | /tables/tag/{tag} | List tables by tag |
POST | /tables/{tableId}/tags | Add tag to table |
GET | /tags | List all tags (paginated) |
GET | /tags/category/{category} | List tags by category |
POST | /tags | Create a new tag |
GET | /lineage/{entityId}/upstream | Get upstream lineage |
GET | /lineage/{entityId}/downstream | Get downstream lineage |
GET | /lineage/{entityId}/full | Get full lineage graph |
POST | /lineage | Create lineage relationship |
GET | /stats | Get catalog statistics |
DataSourceController -- /api/v1/datasources
| Method | Path | Description |
|---|---|---|
POST | / | Register a new data source |
GET | / | List all data sources (paginated) |
GET | /{id} | Get data source by ID |
PUT | /{id} | Update data source configuration |
DELETE | /{id} | Delete a data source |
POST | /{id}/ingest | Trigger async metadata ingestion |
POST | /{id}/ingest/sync | Trigger synchronous ingestion |
CatalogDiscoveryController -- /api/v1/catalog/discovery
| Method | Path | Description |
|---|---|---|
GET | /trending | Get trending assets |
GET | /popular-searches | Get popular search terms |
GET | /recent | Get recently added assets |
GET | /related/{assetId} | Get related assets |
GET | /browse | Browse catalog hierarchy |
GET | /breadcrumb/{assetId} | Get breadcrumb navigation |
POST | /view/{assetId} | Record asset view |
POST | /search-track | Track search term |
GET | /recommendations | Get personalized recommendations |
ClassificationController -- /v1/classification
| Method | Path | Description |
|---|---|---|
POST | /tables/{tableId}/classify | Classify a table |
GET | /tables/{tableId} | Get table classification |
POST | /classify-all | Classify all tenant tables |
PUT | /tables/{tableId}/columns/{col}/override | Override column classification |
POST | /tables/{tableId}/approve | Approve classification |
GET | /sensitive-data | Find sensitive data locations |
GET | /pii | Find PII data locations |
GET | /phi | Find PHI data locations |
GET | /pci | Find PCI data locations |
GET | /statistics | Get classification statistics |
GET | /compliance-report | Get compliance summary report |
GET | /rules | Get classification rules |
POST | /rules | Add custom classification rule |
POST | /rules/test | Test rule against sample data |
DELETE | /cache/tables/{tableId} | Clear table cache |
DELETE | /cache | Clear tenant cache |
Common Headers
All endpoints require the following headers:
| Header | Required | Description |
|---|---|---|
X-Tenant-ID | Yes | UUID of the tenant |
X-User-ID | Some | UUID of the requesting user |
Authorization | Yes | Bearer JWT token |
Content-Type | POST/PUT | application/json |
Pagination
Paginated endpoints accept:
| Parameter | Default | Description |
|---|---|---|
page | 0 | Zero-based page index |
size | 20 | Page size |
Response follows Spring Data Page format with content, totalElements, totalPages, number, size.