MATIH Platform is in active MVP development. Documentation reflects current implementation status.
10. Data Catalog & Governance
API Reference

Catalog Service API Reference

Complete REST API reference for all Catalog Service endpoints.


CatalogController -- /api/v1/catalog

MethodPathDescription
POST/searchFull-text search across catalog entities
GET/suggestAutocomplete suggestions for search
GET/databasesList all databases (paginated)
GET/databases/{fqn}Get database by fully qualified name
GET/databases/datasource/{dataSourceId}List databases by data source
GET/tablesList all tables (paginated)
GET/tables/searchSearch tables by name
GET/tables/{fqn}Get table by fully qualified name
GET/tables/{fqn}/schemaGet table schema with columns
GET/tables/database/{databaseId}List tables by database
GET/tables/tag/{tag}List tables by tag
POST/tables/{tableId}/tagsAdd tag to table
GET/tagsList all tags (paginated)
GET/tags/category/{category}List tags by category
POST/tagsCreate a new tag
GET/lineage/{entityId}/upstreamGet upstream lineage
GET/lineage/{entityId}/downstreamGet downstream lineage
GET/lineage/{entityId}/fullGet full lineage graph
POST/lineageCreate lineage relationship
GET/statsGet catalog statistics

DataSourceController -- /api/v1/datasources

MethodPathDescription
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}/ingestTrigger async metadata ingestion
POST/{id}/ingest/syncTrigger synchronous ingestion

CatalogDiscoveryController -- /api/v1/catalog/discovery

MethodPathDescription
GET/trendingGet trending assets
GET/popular-searchesGet popular search terms
GET/recentGet recently added assets
GET/related/{assetId}Get related assets
GET/browseBrowse catalog hierarchy
GET/breadcrumb/{assetId}Get breadcrumb navigation
POST/view/{assetId}Record asset view
POST/search-trackTrack search term
GET/recommendationsGet personalized recommendations

ClassificationController -- /v1/classification

MethodPathDescription
POST/tables/{tableId}/classifyClassify a table
GET/tables/{tableId}Get table classification
POST/classify-allClassify all tenant tables
PUT/tables/{tableId}/columns/{col}/overrideOverride column classification
POST/tables/{tableId}/approveApprove classification
GET/sensitive-dataFind sensitive data locations
GET/piiFind PII data locations
GET/phiFind PHI data locations
GET/pciFind PCI data locations
GET/statisticsGet classification statistics
GET/compliance-reportGet compliance summary report
GET/rulesGet classification rules
POST/rulesAdd custom classification rule
POST/rules/testTest rule against sample data
DELETE/cache/tables/{tableId}Clear table cache
DELETE/cacheClear tenant cache

Common Headers

All endpoints require the following headers:

HeaderRequiredDescription
X-Tenant-IDYesUUID of the tenant
X-User-IDSomeUUID of the requesting user
AuthorizationYesBearer JWT token
Content-TypePOST/PUTapplication/json

Pagination

Paginated endpoints accept:

ParameterDefaultDescription
page0Zero-based page index
size20Page size

Response follows Spring Data Page format with content, totalElements, totalPages, number, size.