Declare entity kinds
POST /api/v1/ontology/kinds: request fields and declared response contract.
POST/api/v1/ontology/kinds
| Permission | parties.declareKind |
|---|---|
| Workspace scope | required |
| Scope target | workspace |
Response
201
| Field | Type | Required | Nullable | Default |
|---|---|---|---|---|
| data | object | required | non-null | — |
| data.id | string | required | non-null | — |
| data.workspaceId | string | required | non-null | — |
| data.companyId | string | required | non-null | — |
| data.partyKind | string | required | non-null | — |
| data.displayName | string | required | non-null | — |
| data.fields | array | required | non-null | — |
| data.implements | array | optional | non-null | — |
| data.cedarResourceType | string | required | non-null | — |
| data.parentKinds | array | required | non-null | — |
| data.version | integer | required | non-null | — |
| data.createdAt | string | required | non-null | — |
| data.updatedAt | string | required | non-null | — |
| data.provenance | unknown | optional | non-null | — |
Declared failures
| ONTOLOGY_DECLARE_KIND_FAILED | 400 — not retryable |
|---|
Readback
Read the result back with:
- ontology.getKind
Request example
Schematic only. Replace placeholders with real values and include all required nested fields.
POST /api/v1/ontology/kinds HTTP/1.1
Authorization: Bearer <token>
x-merulan-workspace-id: <workspace-id>