Ontology Service API Reference
Complete REST API documentation for the Ontology Service. All endpoints require a valid JWT token and the X-Tenant-ID header for multi-tenant isolation. The service also exposes a GraphQL endpoint at /graphql.
Base URL: http://ontology-service.matih-data-plane.svc.cluster.local:8101/v1/ontology
Object Types
| Method | Endpoint | Description |
|---|---|---|
| POST | /object-types | Create an object type |
| GET | /object-types | List all object types |
| GET | /object-types/:id | Get object type by ID |
| PUT | /object-types/:id | Update an object type |
| DELETE | /object-types/:id | Delete an object type |
| GET | /object-types/:id/properties | List properties |
| POST | /object-types/:id/properties | Add a property |
| PUT | /object-types/:id/properties/:name | Update a property |
| DELETE | /object-types/:id/properties/:name | Remove a property |
Relationships
| Method | Endpoint | Description |
|---|---|---|
| GET | /object-types/:id/relationships | List relationships |
| POST | /object-types/:id/relationships | Create a relationship |
| PUT | /object-types/:id/relationships/:name | Update a relationship |
| DELETE | /object-types/:id/relationships/:name | Remove a relationship |
Datasource Mappings
| Method | Endpoint | Description |
|---|---|---|
| POST | /mappings | Create a datasource mapping |
| GET | /mappings | List mappings (query param: objectTypeId) |
| GET | /mappings/:id | Get mapping details |
| PUT | /mappings/:id | Update a mapping |
| DELETE | /mappings/:id | Remove a mapping |
| POST | /mappings/analyze | Analyze source and suggest mappings |
| POST | /mappings/:id/sync | Trigger manual sync |
Templates
| Method | Endpoint | Description |
|---|---|---|
| GET | /templates | List available templates |
| GET | /templates/:name | Get template details |
| POST | /templates | Create a custom template |
| PUT | /templates/:name | Update a template |
| POST | /templates/deploy | Deploy a template to the tenant ontology |
Validation
| Method | Endpoint | Description |
|---|---|---|
| POST | /validate | Validate a specific object type |
| POST | /validate/all | Validate all object types in the tenant |
Actions
| Method | Endpoint | Description |
|---|---|---|
| GET | /actions | List action definitions |
| POST | /actions | Create an action |
| GET | /actions/:id | Get action details |
| PUT | /actions/:id | Update an action |
GraphQL
| Method | Endpoint | Description |
|---|---|---|
| POST | /graphql | GraphQL query and mutation endpoint |
| GET | /graphql | GraphQL Playground (dev only) |
Common Query Parameters
| Parameter | Type | Description |
|---|---|---|
layer | string | Filter by ontology layer (raw, staging, curated, semantic) |
status | string | Filter by status (draft, active, deprecated) |
search | string | Full-text search on name and description |
limit | int | Maximum results (default: 50) |
offset | int | Pagination offset |
Authentication
All requests must include:
Authorization: Bearer <jwt-token>
X-Tenant-ID: <tenant-id>Related Pages
- GraphQL API -- GraphQL schema details
- Object Types -- Object type model
- Pipeline Service API -- Pipeline API documentation