{ "openapi": "3.0.3", "info": { "title": "graph", "description": "HASH Graph API", "contact": { "name": "HASH" }, "license": { "name": "AGPL-3" }, "version": "0.0.0" }, "paths": { "/actor-groups/teams/name/{name}": { "get": { "tags": [ "Graph", "Team" ], "operationId": "get_team_by_name", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "name", "in": "path", "description": "The ID of the team to retrieve", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The team was retrieved successfully", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/teams/{team_id}/roles": { "get": { "tags": [ "Graph", "Team" ], "operationId": "get_team_roles", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "team_id", "in": "path", "description": "The ID of the team to retrieve", "required": true, "schema": { "$ref": "#/components/schemas/TeamId" } } ], "responses": { "200": { "description": "The team roles were retrieved successfully", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": {} } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/webs": { "post": { "tags": [ "Graph", "Web" ], "operationId": "create_org_web", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateOrgWebParams" } } }, "required": true }, "responses": { "200": { "description": "The web was created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateWebResponse" } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/webs/shortname/{shortname}": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_web_by_shortname", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "shortname", "in": "path", "description": "The shortname of the web to retrieve", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The web was retrieved successfully", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/webs/{web_id}": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_web_by_id", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "web_id", "in": "path", "description": "The ID of the web to retrieve", "required": true, "schema": { "$ref": "#/components/schemas/WebId" } } ], "responses": { "200": { "description": "The web was retrieved successfully", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/webs/{web_id}/roles": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_web_roles", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "web_id", "in": "path", "description": "The ID of the web to retrieve", "required": true, "schema": { "$ref": "#/components/schemas/WebId" } } ], "responses": { "200": { "description": "The web roles were retrieved successfully", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": {} } } } }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/webs/{web_id}/shortname": { "put": { "tags": [ "Graph", "Web" ], "operationId": "update_web_shortname", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "web_id", "in": "path", "description": "The ID of the web to update", "required": true, "schema": { "$ref": "#/components/schemas/WebId" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateWebShortnameParams" } } }, "required": true }, "responses": { "200": { "description": "The web shortname was updated successfully" }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/{actor_group_id}/roles/actors/{actor_id}": { "get": { "tags": [ "Graph", "Principal" ], "operationId": "get_actor_group_role", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "actor_group_id", "in": "path", "description": "The ID of the actor group to check the role against", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } }, { "name": "actor_id", "in": "path", "description": "The ID of the actor to be checked", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "responses": { "200": { "description": "Whether the actor is assigned the role", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RoleName" } } } }, "404": { "description": "The team was not found" }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/{actor_group_id}/roles/{role_name}/actors": { "get": { "tags": [ "Graph", "Principal" ], "operationId": "get_actor_group_role_assignments", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "actor_group_id", "in": "path", "description": "The ID of the actor group to get the assignments for", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } }, { "name": "role_name", "in": "path", "description": "The role to be checked", "required": true, "schema": { "$ref": "#/components/schemas/RoleName" } } ], "responses": { "200": { "description": "Whether the actor is assigned the role", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ActorEntityUuid" } } } } }, "404": { "description": "The team was not found" }, "500": { "description": "Store error occurred" } } } }, "/actor-groups/{actor_group_id}/roles/{role_name}/actors/{actor_id}": { "post": { "tags": [ "Graph", "Principal" ], "operationId": "assign_actor_group_role", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "actor_group_id", "in": "path", "description": "The ID of the actor group to add the member to", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } }, { "name": "role_name", "in": "path", "description": "The role to assign to the actor", "required": true, "schema": { "$ref": "#/components/schemas/RoleName" } }, { "name": "actor_id", "in": "path", "description": "The ID of the actor to add to the group", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "responses": { "200": { "description": "The actor group member was added", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RoleAssignmentStatus" } } } }, "403": { "description": "Permission denied" }, "500": { "description": "Store error occurred" } } }, "delete": { "tags": [ "Graph", "Principal" ], "operationId": "unassign_actor_group_role", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "actor_group_id", "in": "path", "description": "The ID of the actor group to remove the member from", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } }, { "name": "role_name", "in": "path", "description": "The role to remove from the actor", "required": true, "schema": { "$ref": "#/components/schemas/RoleName" } }, { "name": "actor_id", "in": "path", "description": "The ID of the actor to remove from the group", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "responses": { "200": { "description": "The actor group member was removed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RoleUnassignmentStatus" } } } }, "403": { "description": "Permission denied" }, "500": { "description": "Store error occurred" } } } }, "/actors/ai": { "post": { "tags": [ "Graph", "Principal" ], "operationId": "create_ai_actor", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAiActorParams" } } }, "required": true }, "responses": { "200": { "description": "The schema of the created actor", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AiId" } } } }, "500": { "description": "Store error occurred" } } } }, "/actors/ai/identifier/{identifier}": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_ai_by_identifier", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "identifier", "in": "path", "description": "The identifier of the AI to get", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The AI was retrieved successfully", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } } }, "/actors/machine/identifier/system/{identifier}": { "get": { "tags": [ "Graph", "Principal" ], "operationId": "get_or_create_system_machine", "parameters": [ { "name": "identifier", "in": "path", "description": "The identifier of the actor to get", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The schema of the created actor", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MachineId" } } } }, "500": { "description": "Store error occurred" } } } }, "/actors/machine/identifier/{identifier}": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_machine_by_identifier", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "identifier", "in": "path", "description": "The identifier of the machine to get", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The machine was retrieved successfully", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } } }, "/actors/user": { "post": { "tags": [ "Graph", "Principal" ], "operationId": "create_user_actor", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUserActorParams" } } }, "required": true }, "responses": { "200": { "description": "The schema of the created actor", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUserActorResponse" } } } }, "500": { "description": "Store error occurred" } } } }, "/data-types": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "create_data_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDataTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the created data type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MaybeListOfDataTypeMetadata" } } } }, "409": { "description": "Unable to create data type in the store as the base data type URL already exists" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } }, "put": { "tags": [ "Graph", "DataType" ], "operationId": "update_data_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateDataTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated data type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataTypeMetadata" } } } }, "404": { "description": "Base data type ID was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/archive": { "put": { "tags": [ "Graph", "DataType" ], "operationId": "archive_data_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ArchiveDataTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated data type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Data type ID was not found" }, "409": { "description": "Data type ID is already archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/bulk": { "put": { "tags": [ "Graph", "DataType" ], "operationId": "update_data_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateDataTypeRequest" } } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated data types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeMetadata" } } } } }, "404": { "description": "Base data types ID were not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/embeddings": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "update_data_type_embeddings", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateDataTypeEmbeddingParams" } } }, "required": true }, "responses": { "204": { "description": "The embeddings were created" }, "403": { "description": "Insufficient permissions to update the data type" }, "500": { "description": "Store error occurred" } } } }, "/data-types/find/conversions": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "find_data_type_conversion_targets", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FindDataTypeConversionTargetsParams" } } }, "required": true }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FindDataTypeConversionTargetsResponse" } } } }, "500": { "description": "Store error occurred" } } } }, "/data-types/load": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "load_external_data_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoadExternalDataTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the loaded data type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataTypeMetadata" } } } }, "409": { "description": "Unable to load data type in the store as the base data type ID already exists" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/permissions": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "has_permission_for_data_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HasPermissionForDataTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Information if the actor has the permission for the data types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } } } }, "500": { "description": "Internal error occurred" } } } }, "/data-types/query": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "query_data_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryDataTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of data types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryDataTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/query/subgraph": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "query_data_type_subgraph", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryDataTypeSubgraphParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a subgraph rooted at all data types that satisfy the given query, each resolved to the requested depth.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryDataTypeSubgraphResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/unarchive": { "put": { "tags": [ "Graph", "DataType" ], "operationId": "unarchive_data_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnarchiveDataTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The temporal metadata of the updated data type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Data type ID was not found" }, "409": { "description": "Data type ID already exists and is not archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "create_entity", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEntityParams" } } }, "required": true }, "responses": { "200": { "description": "The created entity", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Entity" } } } }, "404": { "description": "Entity Type URL was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } }, "patch": { "tags": [ "Graph", "Entity" ], "operationId": "patch_entity", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchEntityParams" } } }, "required": true }, "responses": { "200": { "description": "The updated entity", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Entity" } } } }, "404": { "description": "Entity ID or Entity Type URL was not found" }, "422": { "description": "Provided request body is invalid" }, "423": { "description": "The entity that should be updated was unexpectedly updated at the same time" }, "500": { "description": "Store error occurred" } } } }, "/entities/bulk": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "create_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CreateEntityParams" } } } }, "required": true }, "responses": { "200": { "description": "The created entities", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Entity" } } } } }, "404": { "description": "Entity Type URL was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/diff": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "diff_entity", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiffEntityParams" } } }, "required": true }, "responses": { "200": { "description": "The difference between the two entities", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiffEntityResult" } } } }, "404": { "description": "Entity ID was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/embeddings": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "update_entity_embeddings", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityEmbeddingsParams" } } }, "required": true }, "responses": { "204": { "description": "The embeddings were created" }, "403": { "description": "Insufficient permissions to update the entity" }, "500": { "description": "Store error occurred" } } } }, "/entities/embeddings/clusters": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "cluster_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClusterEntitiesParams" } } }, "required": true }, "responses": { "200": { "description": "Clusters of entities by embedding similarity", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClusterEntitiesResponse" } } } }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/permissions": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "has_permission_for_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HasPermissionForEntitiesParams" } } }, "required": true }, "responses": { "200": { "description": "Information if the actor has the permission for the entities", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/components/schemas/EntityEditionId" } } } } } }, "500": { "description": "Internal error occurred" } } } }, "/entities/query": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "query_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitiesRequest" } } }, "required": true }, "responses": { "200": { "description": "A list of entities that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitiesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/query/subgraph": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "query_entity_subgraph", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitySubgraphRequest" } } }, "required": true }, "responses": { "200": { "description": "A subgraph rooted at entities that satisfy the given query, each resolved to the requested depth.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitySubgraphResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/query/summarize": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "summarize_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SummarizeEntitiesParams" } } }, "required": true }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SummarizeEntitiesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/query/table": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "query_entities_table", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitiesTableParams" } } }, "required": true }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntitiesTableResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/search": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "search_entities", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchEntitiesRequest" } } }, "required": true }, "responses": { "200": { "description": "Entities ordered by ascending cosine distance to the query embedding.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchEntitiesResponse" } } } }, "400": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/validate": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "validate_entity", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidateEntityParams" } } }, "required": true }, "responses": { "200": { "description": "The validation report", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/EntityValidationReport" } } } } }, "400": { "description": "The entity validation failed" }, "404": { "description": "Entity Type URL was not found" }, "500": { "description": "Store error occurred" } } } }, "/entity-types": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "create_entity_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEntityTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the created entity type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MaybeListOfEntityTypeMetadata" } } } }, "400": { "description": "Provided request body is invalid", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } }, "409": { "description": "Unable to create entity type in the datastore as the base entity type ID already exists", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } }, "500": { "description": "Store error occurred", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } } } }, "put": { "tags": [ "Graph", "EntityType" ], "operationId": "update_entity_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated entity type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityTypeMetadata" } } } }, "404": { "description": "Base entity type ID was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/archive": { "put": { "tags": [ "Graph", "EntityType" ], "operationId": "archive_entity_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ArchiveEntityTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated entity type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Entity type ID was not found" }, "409": { "description": "Entity type ID is already archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/bulk": { "put": { "tags": [ "Graph", "EntityType" ], "operationId": "update_entity_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateEntityTypeRequest" } } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated entity types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeMetadata" } } } } }, "404": { "description": "Base entity types ID were not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/embeddings": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "update_entity_type_embeddings", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityTypeEmbeddingParams" } } }, "required": true }, "responses": { "204": { "description": "The embeddings were created" }, "403": { "description": "Insufficient permissions to update the entity type" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/load": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "load_external_entity_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoadExternalEntityTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the created entity type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityTypeMetadata" } } } }, "400": { "description": "Provided request body is invalid", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } }, "409": { "description": "Unable to load entity type in the datastore as the entity type ID already exists", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } }, "500": { "description": "Store error occurred", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } } } } } }, "/entity-types/permissions": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "has_permission_for_entity_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HasPermissionForEntityTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Information if the actor has the permission for the entity types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } } } }, "500": { "description": "Internal error occurred" } } } }, "/entity-types/query": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "query_entity_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntityTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of entity types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntityTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/query/multi": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "get_closed_multi_entity_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetClosedMultiEntityTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a list of multi-entity types that satisfy the given query. A multi-entity type is the combination of multiple entity types.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetClosedMultiEntityTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/query/subgraph": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "query_entity_type_subgraph", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntityTypeSubgraphParams" } } }, "required": true }, "responses": { "200": { "description": "A subgraph rooted at entity types that satisfy the given query, each resolved to the requested depth.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryEntityTypeSubgraphResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/search": { "post": { "tags": [ "Graph", "EntityType" ], "operationId": "search_entity_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchEntityTypesRequest" } } }, "required": true }, "responses": { "200": { "description": "Entity types ordered by ascending cosine distance to the query embedding.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchEntityTypesResponse" } } } }, "400": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entity-types/unarchive": { "put": { "tags": [ "Graph", "EntityType" ], "operationId": "unarchive_entity_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnarchiveEntityTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The temporal metadata of the updated entity type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Entity type ID was not found" }, "409": { "description": "Entity type ID already exists and is not archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/hashql": { "post": { "tags": [ "Graph", "HashQL" ], "operationId": "query_hashql", "parameters": [ { "name": "Interactive", "in": "header", "description": "When true, error responses are rendered as HTML instead of JSON", "required": false, "schema": { "type": "boolean", "nullable": true } }, { "name": "Json-Compat", "in": "header", "description": "When true, serializes the result as plain JSON values, stripping HashQL-specific type wrappers", "required": false, "schema": { "type": "boolean", "nullable": true } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HashQlRequest" } } }, "required": true }, "responses": { "200": { "description": "Query executed successfully" }, "400": { "description": "Query compilation or validation error" }, "500": { "description": "Internal compiler or database error" } } } }, "/policies": { "post": { "tags": [ "Graph", "Permission" ], "operationId": "create_policy", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": {} } }, "required": true }, "responses": { "200": { "description": "The policy ID of the created policy", "content": { "application/json": { "schema": {} } } }, "500": { "description": "Store error occurred" } } } }, "/policies/query": { "post": { "tags": [ "Graph", "Permission" ], "operationId": "query_policies", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": {} } }, "required": true }, "responses": { "200": { "description": "List of policies matching the filter", "content": { "application/json": { "schema": { "type": "array", "items": {} } } } }, "500": { "description": "Store error occurred" } } } }, "/policies/resolve/actor": { "post": { "tags": [ "Graph", "Permission" ], "operationId": "resolve_policies_for_actor", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": {} } }, "required": true }, "responses": { "200": { "description": "List of policies found for the actor", "content": { "application/json": { "schema": { "type": "array", "items": {} } } } }, "500": { "description": "Store error occurred" } } } }, "/policies/seed": { "get": { "tags": [ "Graph", "Permission" ], "operationId": "seed_system_policies", "responses": { "204": { "description": "The system policies were created successfully" }, "500": { "description": "Store error occurred" } } } }, "/policies/{policy_id}": { "get": { "tags": [ "Graph", "Permission" ], "operationId": "get_policy_by_id", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "policy_id", "in": "path", "description": "The ID of the policy to find", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "description": "The policy with the specified id or `null`", "content": { "application/json": { "schema": { "nullable": true } } } }, "500": { "description": "Store error occurred" } } }, "put": { "tags": [ "Graph", "Permission" ], "operationId": "update_policy_by_id", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "policy_id", "in": "path", "description": "The ID of the policy to update", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": {} } } }, "required": true }, "responses": { "200": { "description": "The updated policy", "content": { "application/json": { "schema": {} } } }, "500": { "description": "Store error occurred" } } }, "delete": { "tags": [ "Graph", "Permission" ], "operationId": "archive_policy_by_id", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "policy_id", "in": "path", "description": "The ID of the policy to delete", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "204": { "description": "The policy was removed successfully" }, "500": { "description": "Store error occurred" } } } }, "/policies/{policy_id}/delete": { "delete": { "tags": [ "Graph", "Permission" ], "operationId": "delete_policy_by_id", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } }, { "name": "policy_id", "in": "path", "description": "The ID of the policy to delete", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "204": { "description": "The policy was removed successfully" }, "500": { "description": "Store error occurred" } } } }, "/property-types": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "create_property_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreatePropertyTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the created property type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MaybeListOfPropertyTypeMetadata" } } } }, "409": { "description": "Unable to create property type in the store as the base property type ID already exists" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } }, "put": { "tags": [ "Graph", "PropertyType" ], "operationId": "update_property_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdatePropertyTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated property type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PropertyTypeMetadata" } } } }, "404": { "description": "Base property type ID was not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/archive": { "put": { "tags": [ "Graph", "PropertyType" ], "operationId": "archive_property_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ArchivePropertyTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated property type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Property type ID was not found" }, "409": { "description": "Property type ID is already archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/bulk": { "put": { "tags": [ "Graph", "PropertyType" ], "operationId": "update_property_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UpdatePropertyTypeRequest" } } } }, "required": true }, "responses": { "200": { "description": "The metadata of the updated property types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeMetadata" } } } } }, "404": { "description": "Base property types ID were not found" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/embeddings": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "update_property_type_embeddings", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdatePropertyTypeEmbeddingParams" } } }, "required": true }, "responses": { "204": { "description": "The embeddings were created" }, "403": { "description": "Insufficient permissions to update the property type" }, "500": { "description": "Store error occurred" } } } }, "/property-types/load": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "load_external_property_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LoadExternalPropertyTypeRequest" } } }, "required": true }, "responses": { "200": { "description": "The metadata of the loaded property type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PropertyTypeMetadata" } } } }, "409": { "description": "Unable to load property type in the store as the base property type ID already exists" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/permissions": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "has_permission_for_property_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HasPermissionForPropertyTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Information if the actor has the permission for the property types", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } } } }, "500": { "description": "Internal error occurred" } } } }, "/property-types/query": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "query_property_types", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryPropertyTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of property types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryPropertyTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/query/subgraph": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "query_property_type_subgraph", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryPropertyTypeSubgraphParams" } } }, "required": true }, "responses": { "200": { "description": "A subgraph rooted at property types that satisfy the given query, each resolved to the requested depth.", "headers": { "Link": { "schema": { "type": "string" }, "description": "The link to be used to query the next page of property types" } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryPropertyTypeSubgraphResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/unarchive": { "put": { "tags": [ "Graph", "PropertyType" ], "operationId": "unarchive_property_type", "parameters": [ { "name": "X-Authenticated-User-Actor-Id", "in": "header", "description": "The ID of the actor which is used to authorize the request", "required": true, "schema": { "$ref": "#/components/schemas/ActorEntityUuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnarchivePropertyTypeParams" } } }, "required": true }, "responses": { "200": { "description": "The temporal metadata of the updated property type", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } }, "404": { "description": "Property type ID was not found" }, "409": { "description": "Property type ID already exists and is not archived" }, "422": { "description": "Provided request body is invalid" }, "500": { "description": "Store error occurred" } } } } }, "components": { "schemas": { "ActorEntityUuid": { "$ref": "#/components/schemas/EntityUuid" }, "ActorGroupEntityUuid": { "$ref": "#/components/schemas/EntityUuid" }, "ActorGroupId": { "oneOf": [ { "type": "object", "required": [ "actorGroupType", "id" ], "properties": { "actorGroupType": { "type": "string", "enum": [ "web" ] }, "id": { "$ref": "#/components/schemas/WebId" } } }, { "type": "object", "required": [ "actorGroupType", "id" ], "properties": { "actorGroupType": { "type": "string", "enum": [ "team" ] }, "id": { "$ref": "#/components/schemas/TeamId" } } } ], "description": "Type-safe identifier for an actor group in the system.\n\nWraps specific actor group ID types ([`WebId`], [`TeamId`]) in a tagged enumeration,\nallowing different actor group types to be handled uniformly while preserving type information.", "discriminator": { "propertyName": "actorGroupType" } }, "ActorId": { "oneOf": [ { "type": "object", "required": [ "actorType", "id" ], "properties": { "actorType": { "type": "string", "enum": [ "user" ] }, "id": { "$ref": "#/components/schemas/UserId" } } }, { "type": "object", "required": [ "actorType", "id" ], "properties": { "actorType": { "type": "string", "enum": [ "machine" ] }, "id": { "$ref": "#/components/schemas/MachineId" } } }, { "type": "object", "required": [ "actorType", "id" ], "properties": { "actorType": { "type": "string", "enum": [ "ai" ] }, "id": { "$ref": "#/components/schemas/AiId" } } } ], "description": "Type-safe identifier for an actor in the system.\n\nWraps specific actor ID types ([`UserId`], [`MachineId`], [`AiId`]) in a tagged enumeration,\nallowing different actor types to be handled uniformly while preserving type information.", "discriminator": { "propertyName": "actorType" } }, "ActorType": { "type": "string", "description": "Types of individual actors in the system.\n\nRepresents the different categories of entities that can perform actions.", "enum": [ "user", "machine", "ai" ] }, "AiId": { "$ref": "#/components/schemas/ActorEntityUuid" }, "ArchiveDataTypeParams": { "type": "object", "required": [ "dataTypeId" ], "properties": { "dataTypeId": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "ArchiveEntityTypeParams": { "type": "object", "required": [ "entityTypeId" ], "properties": { "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "ArchivePropertyTypeParams": { "type": "object", "required": [ "propertyTypeId" ], "properties": { "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "ArrayItemNumberMismatch": { "oneOf": [ { "type": "object", "required": [ "type", "data" ], "properties": { "data": { "type": "object", "required": [ "actual", "min" ], "properties": { "actual": { "type": "integer", "minimum": 0 }, "min": { "type": "integer", "minimum": 0 } } }, "type": { "type": "string", "enum": [ "tooFew" ] } } }, { "type": "object", "required": [ "type", "data" ], "properties": { "data": { "type": "object", "required": [ "actual", "max" ], "properties": { "actual": { "type": "integer", "minimum": 0 }, "max": { "type": "integer", "minimum": 0 } } }, "type": { "type": "string", "enum": [ "tooMany" ] } } } ], "discriminator": { "propertyName": "type" } }, "ArrayMetadata": { "type": "object", "properties": { "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "provenance": { "$ref": "#/components/schemas/PropertyProvenance" } }, "additionalProperties": false }, "ArrayValidationReport": { "type": "object", "properties": { "items": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PropertyValidationReport" } }, "numItems": { "allOf": [ { "$ref": "#/components/schemas/ArrayItemNumberMismatch" } ], "nullable": true } } }, "BaseUrl": { "type": "string", "title": "Base URL", "format": "uri", "description": "The base URL of a Block Protocol ontology type (the $id of the schema, without the versioned suffix). It should be a valid URL, with a trailing slash.", "maxLength": 2048 }, "ClosedDataType": { "$ref": "./models/closed_data_type.json" }, "ClosedDataTypeDefinition": { "type": "object", "required": [ "schema", "parents" ], "properties": { "parents": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "schema": { "$ref": "#/components/schemas/ClosedDataType" } } }, "ClosedEntityType": { "$ref": "./models/closed_entity_type.json" }, "ClosedMultiEntityType": { "$ref": "./models/closed_multi_entity_type.json" }, "ClosedMultiEntityTypeMap": { "type": "object", "description": "A recursive map structure representing a hierarchical combination of entity types.\n\nThis data structure stores the schema information for a combination of entity types,\norganized in a tree-like structure. Each level in the hierarchy represents the addition\nof one more entity type to the combination.\n\n# Structure\n\n- `schema`: Contains the combined closed type information for all entity types in the current\npath of the hierarchy\n- `inner`: Maps from additional entity types to deeper levels in the hierarchy, where each\ndeeper level represents the schema when that entity type is added to the current combination\n\n# Example Hierarchy\n\nFor entity types A, B, and C, the structure might look like:\n```text\nA (schema: closed type for A)\n└── B (schema: combined closed type for A+B)\n└── C (schema: combined closed type for A+B+C)\n```\n\nThis allows efficient lookup of type information for any combination of entity types\nby traversing the hierarchy from root to leaf, accumulating type constraints along the way.", "required": [ "schema" ], "properties": { "inner": { "type": "object", "description": "Maps from additional entity types to deeper levels in the hierarchy.\nEach entry represents adding one more entity type to the current combination.", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "schema": { "$ref": "#/components/schemas/ClosedMultiEntityType" } } }, "ClosedTemporalBound": { "oneOf": [ { "type": "object", "title": "InclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "inclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } } ], "discriminator": { "propertyName": "kind" } }, "ClusterEntitiesParams": { "type": "object", "required": [ "entityIds", "clusterCount" ], "properties": { "clusterCount": { "type": "integer", "format": "int32", "description": "Desired number of clusters.\n\nClamped to the number of entities with embeddings when that is smaller.", "maximum": 64, "minimum": 0 }, "dimension": { "type": "integer", "format": "int32", "description": "Embedding dimension after matryoshka truncation.\n\nMust be a positive multiple of 8; values above 512 are rejected. Defaults to 256.", "default": 256, "example": 256, "multipleOf": 8, "maximum": 512, "minimum": 8 }, "entityIds": { "type": "array", "items": { "$ref": "#/components/schemas/EntityId" } }, "seed": { "type": "integer", "format": "int64", "description": "Seed for the random number generator used in clustering.\n\nIf not provided, a random seed will be used.", "nullable": true, "minimum": 0 } }, "additionalProperties": false }, "ClusterEntitiesResponse": { "type": "object", "description": "Result of [`EntityStore::cluster_entities`].", "required": [ "clusters", "missingEmbeddings", "inertia" ], "properties": { "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/EntityCluster" }, "description": "One entry per non-empty cluster. Empty clusters (no points assigned)\nare omitted." }, "inertia": { "type": "number", "format": "float", "description": "Sum of squared chord distances from every clustered entity to its\nassigned centroid. Lower is tighter; comparable across runs over the\nsame entities, e.g. to choose a cluster count. `0.0` when nothing was\nclustered." }, "missingEmbeddings": { "type": "array", "items": { "$ref": "#/components/schemas/EntityId" }, "description": "Entities from the request that were not clustered (either because no embedding exists, or\nbecause the actor lacks permission to view the entity).", "uniqueItems": true } } }, "CommonQueryEntityTypesParams": { "type": "object", "required": [ "filter", "temporalAxes" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeWebIds": { "type": "boolean" }, "limit": { "type": "integer", "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "Confidence": { "type": "number", "format": "double", "maximum": 1, "minimum": 0 }, "ConversionDefinition": { "type": "object", "required": [ "expression" ], "properties": { "expression": { "$ref": "#/components/schemas/ConversionExpression" } }, "additionalProperties": false }, "ConversionExpression": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/Operator" }, { "$ref": "#/components/schemas/ConversionValue" } ] }, "maxItems": 3, "minItems": 3 }, "ConversionValue": { "oneOf": [ { "$ref": "#/components/schemas/Variable" }, { "type": "object", "required": [ "const", "type" ], "properties": { "const": { "$ref": "#/components/schemas/Real" }, "type": { "type": "string", "enum": [ "number" ] } } }, { "$ref": "#/components/schemas/ConversionExpression" } ] }, "Conversions": { "type": "object", "required": [ "from", "to" ], "properties": { "from": { "$ref": "#/components/schemas/ConversionDefinition" }, "to": { "$ref": "#/components/schemas/ConversionDefinition" } }, "additionalProperties": false }, "CreateAiActorParams": { "type": "object", "required": [ "identifier" ], "properties": { "identifier": { "type": "string" } }, "additionalProperties": false }, "CreateDataTypeRequest": { "type": "object", "required": [ "schema", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/DataType" }, { "type": "array", "items": { "$ref": "#/components/schemas/DataType" } } ] } }, "additionalProperties": false }, "CreateEntityParams": { "type": "object", "required": [ "webId", "entityTypeIds", "properties", "draft", "provenance" ], "properties": { "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "decisionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "draft": { "type": "boolean" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "entityUuid": { "allOf": [ { "$ref": "#/components/schemas/EntityUuid" } ] }, "linkData": { "allOf": [ { "$ref": "#/components/schemas/LinkData" } ] }, "policies": { "type": "array", "items": { "type": "object" } }, "properties": { "$ref": "#/components/schemas/PropertyObjectWithMetadata" }, "provenance": { "$ref": "#/components/schemas/ProvidedEntityEditionProvenance" }, "readOnly": { "type": "boolean", "description": "Marks the entity read-only, blocking later updates and archival by user actors.\n\nSet once at creation, e.g. by a one-way integration sync." }, "webId": { "$ref": "#/components/schemas/WebId" } }, "additionalProperties": false }, "CreateEntityTypeRequest": { "type": "object", "required": [ "schema", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/EntityType" }, { "type": "array", "items": { "$ref": "#/components/schemas/EntityType" } } ] } }, "additionalProperties": false }, "CreateOrgWebParams": { "type": "object", "required": [ "shortname" ], "properties": { "administrator": { "allOf": [ { "$ref": "#/components/schemas/ActorEntityUuid" } ], "nullable": true }, "shortname": { "type": "string" } }, "additionalProperties": false }, "CreatePropertyTypeRequest": { "type": "object", "required": [ "schema", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/PropertyType" }, { "type": "array", "items": { "$ref": "#/components/schemas/PropertyType" } } ] } }, "additionalProperties": false }, "CreateUserActorParams": { "type": "object", "required": [ "registrationComplete" ], "properties": { "registrationComplete": { "type": "boolean" }, "shortname": { "type": "string", "nullable": true } }, "additionalProperties": false }, "CreateUserActorResponse": { "type": "object", "required": [ "userId", "machineId" ], "properties": { "machineId": { "$ref": "#/components/schemas/MachineId" }, "userId": { "$ref": "#/components/schemas/UserId" } }, "additionalProperties": false }, "CreateWebResponse": { "type": "object", "required": [ "webId", "machineId" ], "properties": { "machineId": { "$ref": "#/components/schemas/MachineId" }, "webId": { "$ref": "#/components/schemas/WebId" } }, "additionalProperties": false }, "DataType": { "$ref": "./models/data_type.json" }, "DataTypeCanonicalCalculation": { "oneOf": [ { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "retrieval" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/JsonSchemaValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } } ], "discriminator": { "propertyName": "type" } }, "DataTypeConversionError": { "oneOf": [ { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "retrieval" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/JsonSchemaValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } } ], "discriminator": { "propertyName": "type" } }, "DataTypeConversionTargets": { "type": "object", "required": [ "title", "conversions" ], "properties": { "conversions": { "type": "array", "items": { "$ref": "#/components/schemas/ConversionDefinition" } }, "title": { "type": "string" } } }, "DataTypeInferenceError": { "oneOf": [ { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "retrieval" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/VersionedUrl" }, "type": { "type": "string", "enum": [ "abstract" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "type": { "type": "string", "enum": [ "ambiguous" ] } } } ], "discriminator": { "propertyName": "type" } }, "DataTypeMetadata": { "oneOf": [ { "type": "object", "title": "OwnedDataTypeMetadata", "required": [ "recordId", "webId", "temporalVersioning", "provenance" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" }, "webId": { "$ref": "#/components/schemas/WebId" } } }, { "type": "object", "title": "ExternalDataTypeMetadata", "required": [ "recordId", "fetchedAt", "temporalVersioning", "provenance" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "fetchedAt": { "$ref": "#/components/schemas/Timestamp" }, "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } ] }, "DataTypeQueryToken": { "type": "string", "description": "A single token in a [`DataTypeQueryPath`].", "enum": [ "baseUrl", "version", "versionedUrl", "webId", "title", "description", "type", "inheritsFrom", "children", "editionProvenance", "embedding" ] }, "DataTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "DataTypeWithMetadata": { "type": "object", "required": [ "schema", "metadata" ], "properties": { "metadata": { "$ref": "#/components/schemas/DataTypeMetadata" }, "schema": { "$ref": "#/components/schemas/DataType" } } }, "DecisionTime": { "type": "string", "description": "Time axis for the decision time.\n\nThis is used as the generic argument to time-related structs and can be used as tag value.", "enum": [ "decisionTime" ] }, "DiffEntityParams": { "type": "object", "required": [ "firstEntityId", "firstDecisionTime", "firstTransactionTime", "secondEntityId", "secondDecisionTime", "secondTransactionTime" ], "properties": { "firstDecisionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ], "nullable": true }, "firstEntityId": { "$ref": "#/components/schemas/EntityId" }, "firstTransactionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ], "nullable": true }, "secondDecisionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ], "nullable": true }, "secondEntityId": { "$ref": "#/components/schemas/EntityId" }, "secondTransactionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ], "nullable": true } }, "additionalProperties": false }, "DiffEntityResult": { "type": "object", "properties": { "draftState": { "type": "boolean" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeIdDiff" } }, "properties": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyDiff" } } }, "additionalProperties": false }, "EdgeDirection": { "type": "string", "enum": [ "incoming", "outgoing" ] }, "Edges": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/OntologyOutwardEdge" }, { "$ref": "#/components/schemas/KnowledgeGraphOutwardEdge" } ] } } } }, "Embedding": { "type": "array", "items": { "type": "number", "format": "float" } }, "Entity": { "type": "object", "description": "A record of an entity that has been persisted in the datastore, with its associated metadata.\n\nAn [`Entity`] represents a real-world object, concept, or thing within the knowledge graph.\nIt contains structured data in the form of properties, optional link data for establishing\nrelationships with other entities, and comprehensive metadata that describes the entity's\nprovenance, types, temporal information, and more.\n\nEach entity is an instance of one or more [`EntityType`]s defined in the ontology. The\nrelationship is similar to objects and classes in object-oriented programming:\n- [`EntityType`]s define the schema, structure, and constraints that entities must follow\n- [`Entity`] instances contain actual data conforming to those schemas\n\nAn entity:\n- Is identified by a unique [`EntityId`]\n- Has one or more [`VersionedUrl`]s in its `entity_type_ids` field linking to its types\n- Contains a set of properties structured according to the schemas defined in its types\n- May have links to other entities, establishing relationships in the knowledge graph\n- Includes comprehensive metadata for tracking provenance, versioning, and confidence\n\n[`EntityType`]: crate::ontology::entity_type::EntityType\n[`VersionedUrl`]: crate::ontology::VersionedUrl", "required": [ "properties", "metadata" ], "properties": { "linkData": { "allOf": [ { "$ref": "#/components/schemas/LinkData" } ] }, "metadata": { "$ref": "#/components/schemas/EntityMetadata" }, "properties": { "$ref": "#/components/schemas/PropertyObject" } } }, "EntityCluster": { "type": "object", "description": "One cluster from a spherical k-means run over entity embeddings.", "required": [ "clusterId", "entityIds", "centroid" ], "properties": { "centroid": { "type": "array", "items": { "type": "number", "format": "float" }, "description": "Centroid with length equal to the requested dimension.\n\nTypically unit-normalized, but may be the all-zero vector if all assigned points have zero\nnorm." }, "clusterId": { "type": "integer", "format": "int32", "description": "Index in `0..min(cluster_count, n)`.", "minimum": 0 }, "entityIds": { "type": "array", "items": { "$ref": "#/components/schemas/EntityId" } } } }, "EntityDeletionProvenance": { "type": "object", "required": [ "deletedById", "deletedAtTransactionTime", "deletedAtDecisionTime" ], "properties": { "deletedAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "deletedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" }, "deletedById": { "$ref": "#/components/schemas/ActorEntityUuid" } }, "additionalProperties": false }, "EntityEditionId": { "type": "string", "format": "uuid" }, "EntityEditionProvenance": { "allOf": [ { "$ref": "#/components/schemas/ProvidedEntityEditionProvenance" }, { "type": "object", "required": [ "createdById" ], "properties": { "archivedById": { "allOf": [ { "$ref": "#/components/schemas/ActorEntityUuid" } ] }, "createdById": { "$ref": "#/components/schemas/ActorEntityUuid" } } } ] }, "EntityEmbedding": { "type": "object", "required": [ "embedding" ], "properties": { "embedding": { "$ref": "#/components/schemas/Embedding" }, "property": { "allOf": [ { "$ref": "#/components/schemas/BaseUrl" } ], "nullable": true } } }, "EntityId": { "type": "string" }, "EntityIdWithInterval": { "type": "object", "required": [ "entityId", "interval" ], "properties": { "entityId": { "$ref": "#/components/schemas/EntityId" }, "interval": { "$ref": "#/components/schemas/LeftClosedTemporalInterval" } } }, "EntityMetadata": { "type": "object", "description": "Comprehensive metadata for an entity in the knowledge graph.\n\n[`EntityMetadata`] contains essential information about an entity beyond its properties,\nincluding its identity, temporal versioning, type information, provenance, and confidence.\nThis metadata provides context for interpreting and validating the entity's properties.", "required": [ "recordId", "temporalVersioning", "entityTypeIds", "archived", "provenance" ], "properties": { "archived": { "type": "boolean", "description": "Whether this entity has been archived.\n\nArchived entities are generally not included in regular queries but remain\nin the system for historical purposes.\n\nNote, that this will be replaced by cutting off the temporal versioning interval at the\ncurrent transaction time in the future. This is a stopgap measure to ensure that archived\nentities are possible at the time of writing." }, "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" }, "description": "The set of entity types this entity conforms to.\n\nEach entity must conform to at least one entity type, and may conform to multiple\ntypes simultaneously." }, "properties": { "$ref": "#/components/schemas/PropertyObjectMetadata" }, "provenance": { "$ref": "#/components/schemas/EntityProvenance" }, "readOnly": { "type": "boolean", "description": "Whether this entity is read-only and must not be modified by user actors." }, "recordId": { "$ref": "#/components/schemas/EntityRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/EntityTemporalMetadata" } }, "additionalProperties": false }, "EntityPermissions": { "type": "object", "properties": { "update": { "type": "array", "items": { "$ref": "#/components/schemas/EntityEditionId" } } } }, "EntityProvenance": { "type": "object", "required": [ "createdById", "createdAtTransactionTime", "createdAtDecisionTime", "edition" ], "properties": { "createdAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdById": { "$ref": "#/components/schemas/ActorEntityUuid" }, "deletedAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "deletedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" }, "deletedById": { "$ref": "#/components/schemas/ActorEntityUuid" }, "edition": { "$ref": "#/components/schemas/EntityEditionProvenance" }, "firstNonDraftCreatedAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "firstNonDraftCreatedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" } } }, "EntityQueryCursor": { "type": "array", "items": { "type": "object" } }, "EntityQuerySortingPath": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/EntityQuerySortingToken" }, { "type": "string" }, { "type": "number" } ] } }, "EntityQuerySortingRecord": { "type": "object", "required": [ "path", "ordering", "nulls" ], "properties": { "nulls": { "$ref": "#/components/schemas/NullOrdering" }, "ordering": { "$ref": "#/components/schemas/Ordering" }, "path": { "$ref": "#/components/schemas/EntityQuerySortingPath" } } }, "EntityQuerySortingToken": { "type": "string", "enum": [ "uuid", "archived", "label", "editionCreatedAtTransactionTime", "editionCreatedAtDecisionTime", "createdAtTransactionTime", "createdAtDecisionTime", "typeTitle" ] }, "EntityQueryToken": { "type": "string", "description": "A single token in an [`EntityQueryPath`].", "enum": [ "uuid", "editionId", "draftId", "archived", "webId", "type", "properties", "label", "createdById", "editionCreatedById", "createdAtTransactionTime", "createdAtDecisionTime", "provenance", "editionProvenance", "embedding", "incomingLinks", "outgoingLinks", "leftEntity", "rightEntity" ] }, "EntityRecordId": { "type": "object", "required": [ "entityId", "editionId" ], "properties": { "editionId": { "$ref": "#/components/schemas/EntityEditionId" }, "entityId": { "$ref": "#/components/schemas/EntityId" } } }, "EntityTableCursor": { "type": "string", "description": "An opaque continuation token for the entities table" }, "EntityTableFilter": { "type": "object", "description": "The scope of the entities table.", "properties": { "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" }, "description": "The types the rows are narrowed to, as the versioned selections a\nfilter UI works with.\n\nLeft out for no narrowing at all, where the table spans every type its\nscope holds. An empty list narrows to nothing and matches no rows.", "nullable": true }, "excludedTypeBaseUrls": { "type": "array", "items": { "$ref": "#/components/schemas/BaseUrl" }, "description": "Types the table never shows, whatever\n[`entity_type_ids`](Self::entity_type_ids) selects.\n\nEntities carrying one of these types are left out entirely — of the\nrows, the count, and the type summary alike — so a selection cannot\nbring them back. Base URLs rather than versioned ids on purpose: an\nexclusion is meant to hide a type regardless of which version an\nentity carries, and it covers inherited types as well as direct ones." }, "includeArchived": { "type": "boolean" }, "propertyFilters": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTablePropertyFilter" }, "description": "Conditions on property columns, all of which a row has to satisfy." }, "webs": { "$ref": "#/components/schemas/EntityTableWebScope" } }, "additionalProperties": false }, "EntityTableLinkEndpoint": { "type": "object", "description": "One endpoint of a link row: its identity, display label, and direct types.", "required": [ "entityId", "entityTypeIds" ], "properties": { "entityId": { "$ref": "#/components/schemas/EntityId" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" }, "description": "The endpoint's direct types." }, "label": { "type": "string" } } }, "EntityTablePropertyFilter": { "oneOf": [ { "type": "object", "required": [ "property", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "hasAnyValue" ] } } }, { "type": "object", "required": [ "property", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "isEmpty" ] } } }, { "type": "object", "required": [ "property", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "isTrue" ] } } }, { "type": "object", "required": [ "property", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "isFalse" ] } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "equals" ] }, "value": { "$ref": "#/components/schemas/EntityTablePropertyValue" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "notEquals" ] }, "value": { "$ref": "#/components/schemas/EntityTablePropertyValue" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "greaterThan" ] }, "value": { "$ref": "#/components/schemas/Real" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "greaterThanOrEqual" ] }, "value": { "$ref": "#/components/schemas/Real" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "lessThan" ] }, "value": { "$ref": "#/components/schemas/Real" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "lessThanOrEqual" ] }, "value": { "$ref": "#/components/schemas/Real" } } }, { "type": "object", "description": "Matches anywhere inside the property's text.", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "containsSegment" ] }, "value": { "type": "string" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "startsWith" ] }, "value": { "type": "string" } } }, { "type": "object", "required": [ "property", "value", "type" ], "properties": { "property": { "$ref": "#/components/schemas/BaseUrl" }, "type": { "type": "string", "enum": [ "endsWith" ] }, "value": { "type": "string" } } } ], "description": "A filter on one of the table's property columns, mirroring the operators the table's filter\nUI offers.\n\nThe `type` tag selects the operator, `property` names the column, and each operator carries\nexactly the value fields it needs, so a value-less operator with a value (or the reverse) is\nunrepresentable.", "discriminator": { "propertyName": "type" } }, "EntityTablePropertyValue": { "oneOf": [ { "$ref": "#/components/schemas/Real" }, { "type": "string" } ], "description": "A property value a table filter compares against." }, "EntityTableRow": { "type": "object", "description": "One row of the entities table, built entirely from materialized columns\nplus the raw property object.", "required": [ "entityId", "entityEditionId", "entityTypeIds", "entityTypeTitles", "createdAtTransactionTime", "createdAtDecisionTime", "editionCreatedAtDecisionTime", "createdBy", "lastEditedBy", "archived", "properties", "propertiesMetadata" ], "properties": { "archived": { "type": "boolean" }, "createdAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdBy": { "$ref": "#/components/schemas/ActorEntityUuid" }, "editionCreatedAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "entityEditionId": { "$ref": "#/components/schemas/EntityEditionId" }, "entityId": { "$ref": "#/components/schemas/EntityId" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" }, "description": "The entity's direct types, parallel to\n[`entity_type_titles`](Self::entity_type_titles)." }, "entityTypeTitles": { "type": "array", "items": { "type": "string" } }, "label": { "type": "string" }, "lastEditedBy": { "$ref": "#/components/schemas/ActorEntityUuid" }, "properties": { "$ref": "#/components/schemas/PropertyObject" }, "propertiesMetadata": { "$ref": "#/components/schemas/PropertyObjectMetadata" }, "sourceEntity": { "allOf": [ { "$ref": "#/components/schemas/EntityTableLinkEndpoint" } ] }, "targetEntity": { "allOf": [ { "$ref": "#/components/schemas/EntityTableLinkEndpoint" } ] } } }, "EntityTableSortKey": { "type": "string", "description": "Sort key of the entities table, closed over the materialized, indexable\ncolumns. Extending the table's sortable columns means adding a variant\nhere, never a free-form path.", "enum": [ "createdAtDecisionTime", "editionCreatedAtDecisionTime", "label", "typeTitle", "archived" ] }, "EntityTableSorting": { "type": "object", "required": [ "key", "ordering" ], "properties": { "key": { "$ref": "#/components/schemas/EntityTableSortKey" }, "ordering": { "$ref": "#/components/schemas/Ordering" } }, "additionalProperties": false }, "EntityTableSummary": { "type": "object", "description": "The summary of the entities table.\n\nThe two halves have different scopes on purpose: [`count`] reflects the\npage's full filters, where the type maps span the whole scope so a filter\nUI can widen a narrowed selection.\n\n[`count`]: Self::count", "required": [ "count", "entityTypeIds", "entityTypeTitles" ], "properties": { "count": { "type": "integer", "description": "How many entities match the page's full filters.", "minimum": 0 }, "entityTypeIds": { "type": "object", "description": "How many entities in the scope carry each (direct) type.", "additionalProperties": { "type": "integer", "minimum": 0 } }, "entityTypeTitles": { "type": "object", "description": "The display titles of the types in [`entity_type_ids`].\n\n[`entity_type_ids`]: Self::entity_type_ids", "additionalProperties": { "type": "string" } } } }, "EntityTableWebScope": { "oneOf": [ { "type": "object", "description": "Only the listed webs, where an empty list matches no rows at all.", "required": [ "webs", "type" ], "properties": { "type": { "type": "string", "enum": [ "include" ] }, "webs": { "type": "array", "items": { "$ref": "#/components/schemas/WebId" } } } }, { "type": "object", "description": "Every web the actor may see except the listed ones.", "required": [ "webs", "type" ], "properties": { "type": { "type": "string", "enum": [ "exclude" ] }, "webs": { "type": "array", "items": { "$ref": "#/components/schemas/WebId" } } } } ], "description": "Which webs the table draws rows from.\n\nThe default is [`Exclude`] with an empty list: every web the actor may\nsee.\n\n[`Exclude`]: Self::Exclude", "discriminator": { "propertyName": "type" } }, "EntityTemporalMetadata": { "type": "object", "description": "Temporal metadata for tracking entity versions over time.\n\n[`EntityTemporalMetadata`] tracks two distinct time dimensions:\n- Decision time: When the entity was decided to exist in the real world\n- Transaction time: When the entity was recorded in the system\n\nThis bi-temporal approach allows precise tracking of when information was known\nversus when it was recorded, enabling accurate historical queries.", "required": [ "decisionTime", "transactionTime" ], "properties": { "decisionTime": { "$ref": "#/components/schemas/LeftClosedTemporalInterval" }, "transactionTime": { "$ref": "#/components/schemas/LeftClosedTemporalInterval" } }, "additionalProperties": false }, "EntityTraversalEdge": { "oneOf": [ { "type": "object", "title": "HasLeftEntityEdge", "required": [ "direction", "kind" ], "properties": { "direction": { "$ref": "#/components/schemas/EdgeDirection" }, "kind": { "type": "string", "enum": [ "has-left-entity" ] } } }, { "type": "object", "title": "HasRightEntityEdge", "required": [ "direction", "kind" ], "properties": { "direction": { "$ref": "#/components/schemas/EdgeDirection" }, "kind": { "type": "string", "enum": [ "has-right-entity" ] } } } ], "discriminator": { "propertyName": "kind" } }, "EntityTraversalPath": { "type": "object", "required": [ "edges" ], "properties": { "edges": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTraversalEdge" } } }, "additionalProperties": false }, "EntityType": { "$ref": "./models/entity_type.json" }, "EntityTypeEmbedding": { "type": "object", "required": [ "entityTypeId", "embedding" ], "properties": { "embedding": { "$ref": "#/components/schemas/Embedding" }, "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, "EntityTypeIdDiff": { "oneOf": [ { "type": "object", "required": [ "added", "op" ], "properties": { "added": { "$ref": "#/components/schemas/VersionedUrl" }, "op": { "type": "string", "enum": [ "added" ] } } }, { "type": "object", "required": [ "removed", "op" ], "properties": { "op": { "type": "string", "enum": [ "removed" ] }, "removed": { "$ref": "#/components/schemas/VersionedUrl" } } } ], "discriminator": { "propertyName": "op" } }, "EntityTypeMetadata": { "oneOf": [ { "type": "object", "title": "OwnedEntityTypeMetadata", "required": [ "recordId", "webId", "temporalVersioning", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" }, "webId": { "$ref": "#/components/schemas/WebId" } } }, { "type": "object", "title": "ExternalEntityTypeMetadata", "required": [ "recordId", "fetchedAt", "temporalVersioning", "provenance" ], "properties": { "fetchedAt": { "$ref": "#/components/schemas/Timestamp" }, "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } ] }, "EntityTypeQueryToken": { "type": "string", "description": "A single token in a [`EntityTypeQueryPath`].", "enum": [ "baseUrl", "version", "versionedUrl", "webId", "title", "description", "properties", "required", "labelProperty", "icon", "editionProvenance", "links", "linkDestinations", "inheritsFrom", "children", "embedding" ] }, "EntityTypeResolveDefinitions": { "type": "object", "required": [ "dataTypes", "propertyTypes", "entityTypes" ], "properties": { "dataTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedDataTypeDefinition" } }, "entityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PartialEntityType" } }, "propertyTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PropertyType" } } } }, "EntityTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "EntityTypeWithMetadata": { "type": "object", "required": [ "schema", "metadata" ], "properties": { "metadata": { "$ref": "#/components/schemas/EntityTypeMetadata" }, "schema": { "$ref": "#/components/schemas/EntityType" } } }, "EntityTypesError": { "oneOf": [ { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "empty" ] } } }, { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "entityTypeRetrieval" ] } } }, { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "resolveClosedEntityType" ] } } } ], "discriminator": { "propertyName": "type" } }, "EntityUuid": { "type": "string", "format": "uuid" }, "EntityValidationReport": { "type": "object", "properties": { "link": { "$ref": "#/components/schemas/LinkValidationReport" }, "metadata": { "$ref": "#/components/schemas/MetadataValidationReport" }, "properties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ObjectPropertyValidationReport" } } } }, "EntityValidationType": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "EntityVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/EntityId" }, "revisionId": { "$ref": "#/components/schemas/Timestamp" } } }, "Filter": { "oneOf": [ { "type": "object", "title": "AllFilter", "required": [ "all" ], "properties": { "all": { "type": "array", "items": { "$ref": "#/components/schemas/Filter" } } } }, { "type": "object", "title": "AnyFilter", "required": [ "any" ], "properties": { "any": { "type": "array", "items": { "$ref": "#/components/schemas/Filter" } } } }, { "type": "object", "title": "NotFilter", "required": [ "not" ], "properties": { "not": { "$ref": "#/components/schemas/Filter" } } }, { "type": "object", "title": "EqualFilter", "required": [ "equal" ], "properties": { "equal": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "NotEqualFilter", "required": [ "notEqual" ], "properties": { "notEqual": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "ExistsFilter", "required": [ "exists" ], "properties": { "exists": { "$ref": "#/components/schemas/PathExpression" } } }, { "type": "object", "title": "GreaterFilter", "required": [ "notEqual" ], "properties": { "greater": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "GreaterOrEqualFilter", "required": [ "notEqual" ], "properties": { "greaterOrEqual": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "LessFilter", "required": [ "notEqual" ], "properties": { "less": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "LessOrEqualFilter", "required": [ "notEqual" ], "properties": { "lessOrEqual": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "StartsWithFilter", "required": [ "startsWith" ], "properties": { "startsWith": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "EndsWithFilter", "required": [ "endsWith" ], "properties": { "endsWith": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } }, { "type": "object", "title": "ContainsSegmentFilter", "required": [ "containsSegment" ], "properties": { "containsSegment": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 2, "minItems": 2 } } } ] }, "FilterExpression": { "oneOf": [ { "$ref": "#/components/schemas/PathExpression" }, { "$ref": "#/components/schemas/ParameterExpression" } ] }, "FindDataTypeConversionTargetsParams": { "type": "object", "required": [ "dataTypeIds" ], "properties": { "dataTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "additionalProperties": false }, "FindDataTypeConversionTargetsResponse": { "type": "object", "required": [ "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/DataTypeConversionTargets" } } } } }, "GetClosedMultiEntityTypesParams": { "type": "object", "required": [ "entityTypeIds", "temporalAxes" ], "properties": { "entityTypeIds": { "type": "array", "items": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "includeResolved": { "allOf": [ { "$ref": "#/components/schemas/IncludeResolvedEntityTypeOption" } ] }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetClosedMultiEntityTypesResponse": { "type": "object", "required": [ "entityTypes" ], "properties": { "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "entityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } } } }, "GraphElementVertexId": { "oneOf": [ { "$ref": "#/components/schemas/DataTypeVertexId" }, { "$ref": "#/components/schemas/PropertyTypeVertexId" }, { "$ref": "#/components/schemas/EntityTypeVertexId" }, { "$ref": "#/components/schemas/EntityVertexId" } ] }, "GraphResolveDepths": { "type": "object", "properties": { "constrainsLinkDestinationsOn": { "type": "integer", "format": "int32", "minimum": 0 }, "constrainsLinksOn": { "type": "integer", "format": "int32", "minimum": 0 }, "constrainsPropertiesOn": { "type": "integer", "format": "int32", "minimum": 0 }, "constrainsValuesOn": { "type": "integer", "format": "int32", "minimum": 0 }, "inheritsFrom": { "type": "integer", "format": "int32", "minimum": 0 }, "isOfType": { "type": "boolean" } }, "additionalProperties": false }, "HasPermissionForDataTypesParams": { "type": "object", "required": [ "action", "dataTypeIds" ], "properties": { "action": { "type": "string" }, "dataTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "additionalProperties": false }, "HasPermissionForEntitiesParams": { "type": "object", "required": [ "action", "entityIds", "temporalAxes", "includeDrafts" ], "properties": { "action": { "type": "string" }, "entityIds": { "type": "array", "items": { "$ref": "#/components/schemas/EntityId" } }, "includeDrafts": { "type": "boolean" }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "HasPermissionForEntityTypesParams": { "type": "object", "required": [ "action", "entityTypeIds" ], "properties": { "action": { "type": "string" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "additionalProperties": false }, "HasPermissionForPropertyTypesParams": { "type": "object", "required": [ "action", "propertyTypeIds" ], "properties": { "action": { "type": "string" }, "propertyTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "additionalProperties": false }, "HashQlRequest": { "type": "object", "description": "Request body for the `/hashql` endpoint.", "required": [ "query", "inputs" ], "properties": { "inputs": { "type": "array", "items": { "default": null, "nullable": true }, "description": "Input values for the query. Must be an empty list until input support ships." }, "query": {} }, "additionalProperties": false }, "IncludeEntityTypeOption": { "type": "string", "enum": [ "closed", "resolved", "resolvedWithDataTypeChildren" ] }, "IncludeResolvedEntityTypeOption": { "type": "string", "enum": [ "resolved", "resolvedWithDataTypeChildren" ] }, "JsonSchemaValueType": { "type": "string", "enum": [ "null", "boolean", "number", "string", "array", "object" ] }, "JsonSchemaValueTypeMismatch": { "type": "object", "required": [ "actual", "expected" ], "properties": { "actual": { "$ref": "#/components/schemas/JsonSchemaValueType" }, "expected": { "$ref": "#/components/schemas/JsonSchemaValueType" } } }, "KnowledgeGraphEdgeKind": { "type": "string", "enum": [ "HAS_LEFT_ENTITY", "HAS_RIGHT_ENTITY" ] }, "KnowledgeGraphOutwardEdge": { "oneOf": [ { "type": "object", "title": "KnowledgeGraphToKnowledgeGraphOutwardEdge", "required": [ "kind", "reversed", "rightEndpoint" ], "properties": { "kind": { "$ref": "#/components/schemas/KnowledgeGraphEdgeKind" }, "reversed": { "type": "boolean" }, "rightEndpoint": { "$ref": "#/components/schemas/EntityIdWithInterval" } } }, { "type": "object", "title": "KnowledgeGraphToOntologyOutwardEdge", "required": [ "kind", "reversed", "rightEndpoint" ], "properties": { "kind": { "$ref": "#/components/schemas/SharedEdgeKind" }, "reversed": { "type": "boolean" }, "rightEndpoint": { "$ref": "#/components/schemas/OntologyTypeVertexId" } } } ] }, "KnowledgeGraphVertex": { "oneOf": [ { "type": "object", "title": "EntityVertex", "required": [ "kind", "inner" ], "properties": { "inner": { "$ref": "#/components/schemas/Entity" }, "kind": { "type": "string", "enum": [ "entity" ] } } } ], "discriminator": { "propertyName": "kind" } }, "KnowledgeGraphVertices": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/KnowledgeGraphVertex" } } }, "LeftClosedTemporalInterval": { "type": "object", "required": [ "start", "end" ], "properties": { "end": { "$ref": "#/components/schemas/OpenTemporalBound" }, "start": { "$ref": "#/components/schemas/ClosedTemporalBound" } } }, "LimitedTemporalBound": { "oneOf": [ { "type": "object", "title": "InclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "inclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } }, { "type": "object", "title": "ExclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "exclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } } ], "discriminator": { "propertyName": "kind" } }, "LinkData": { "type": "object", "description": "The associated information for 'Link' entities.", "required": [ "leftEntityId", "rightEntityId" ], "properties": { "leftEntityConfidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "leftEntityId": { "$ref": "#/components/schemas/EntityId" }, "leftEntityProvenance": { "$ref": "#/components/schemas/PropertyProvenance" }, "rightEntityConfidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "rightEntityId": { "$ref": "#/components/schemas/EntityId" }, "rightEntityProvenance": { "$ref": "#/components/schemas/PropertyProvenance" } }, "additionalProperties": false }, "LinkDataStateError": { "oneOf": [ { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "missing" ] } } }, { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "unexpected" ] } } } ], "discriminator": { "propertyName": "type" } }, "LinkDataValidationReport": { "type": "object", "properties": { "leftEntity": { "allOf": [ { "$ref": "#/components/schemas/LinkedEntityError" } ], "nullable": true }, "linkType": { "allOf": [ { "$ref": "#/components/schemas/LinkError" } ], "nullable": true }, "rightEntity": { "allOf": [ { "$ref": "#/components/schemas/LinkedEntityError" } ], "nullable": true }, "targetType": { "allOf": [ { "$ref": "#/components/schemas/LinkTargetError" } ], "nullable": true } } }, "LinkError": { "oneOf": [ { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/UnexpectedEntityType" }, "type": { "type": "string", "enum": [ "unexpectedEntityType" ] } } } ], "discriminator": { "propertyName": "type" } }, "LinkTargetError": { "oneOf": [ { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/UnexpectedEntityType" }, "type": { "type": "string", "enum": [ "unexpectedEntityType" ] } } } ], "discriminator": { "propertyName": "type" } }, "LinkValidationReport": { "allOf": [ { "$ref": "#/components/schemas/LinkDataValidationReport" }, { "type": "object", "properties": { "linkData": { "allOf": [ { "$ref": "#/components/schemas/LinkDataStateError" } ], "nullable": true } } } ] }, "LinkedEntityError": { "oneOf": [ { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "entityRetrieval" ] } } }, { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "entityTypeRetrieval" ] } } }, { "type": "object", "required": [ "type", "error" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "resolveClosedEntityType" ] } } } ], "discriminator": { "propertyName": "type" } }, "LoadExternalDataTypeRequest": { "oneOf": [ { "type": "object", "required": [ "dataTypeId" ], "properties": { "dataTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, { "type": "object", "required": [ "schema", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/DataType" } } } ] }, "LoadExternalEntityTypeRequest": { "oneOf": [ { "type": "object", "required": [ "entityTypeId" ], "properties": { "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, { "type": "object", "required": [ "schema", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/EntityType" } } } ] }, "LoadExternalPropertyTypeRequest": { "oneOf": [ { "type": "object", "required": [ "propertyTypeId" ], "properties": { "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, { "type": "object", "required": [ "schema", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/PropertyType" } } } ] }, "Location": { "type": "object", "description": "A location where the source material can be found.", "properties": { "description": { "type": "string", "description": "Encapsulates a message intended to be read by the end user." }, "name": { "type": "string", "description": "A string containing the name of the location." }, "uri": { "type": "string", "format": "uri", "description": "A string containing a valid relative or absolute URI." } }, "additionalProperties": false }, "MachineId": { "$ref": "#/components/schemas/ActorEntityUuid" }, "MaybeListOfDataTypeMetadata": { "oneOf": [ { "$ref": "#/components/schemas/DataTypeMetadata" }, { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeMetadata" } } ] }, "MaybeListOfEntityTypeMetadata": { "oneOf": [ { "$ref": "#/components/schemas/EntityTypeMetadata" }, { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeMetadata" } } ] }, "MaybeListOfPropertyTypeMetadata": { "oneOf": [ { "$ref": "#/components/schemas/PropertyTypeMetadata" }, { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeMetadata" } } ] }, "MetadataValidationReport": { "type": "object", "properties": { "entityTypes": { "allOf": [ { "$ref": "#/components/schemas/EntityTypesError" } ], "nullable": true }, "properties": { "$ref": "#/components/schemas/PropertyMetadataValidationReport" } } }, "MultiReport": { "$ref": "./models/multi_report.json" }, "NullOrdering": { "type": "string", "enum": [ "first", "last" ] }, "NullableTimestamp": { "type": "string", "format": "date-time", "nullable": true }, "ObjectMetadata": { "type": "object", "properties": { "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "provenance": { "$ref": "#/components/schemas/PropertyProvenance" } }, "additionalProperties": false }, "ObjectPropertyValidationReport": { "oneOf": [ { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "unexpected" ] } } }, { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "retrieval" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/PropertyValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } }, { "allOf": [ { "$ref": "#/components/schemas/OneOfPropertyValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "value" ] } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/OneOfArrayValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "array" ] } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/OneOfObjectValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "object" ] } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/ArrayValidationReport" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "propertyArray" ] } } } ] }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "missing" ] } } } ], "discriminator": { "propertyName": "type" } }, "ObjectValidationReport": { "type": "object", "properties": { "properties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ObjectPropertyValidationReport" } } } }, "OneOfArrayValidationReports": { "type": "object", "properties": { "validations": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyArrayValidationReport" }, "nullable": true } } }, "OneOfObjectValidationReports": { "type": "object", "properties": { "validations": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyObjectValidationReport" }, "nullable": true } } }, "OneOfPropertyValidationReports": { "type": "object", "properties": { "canonicalValue": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeCanonicalCalculation" } }, "dataTypeInference": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeInferenceError" } }, "validations": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyValueValidationReport" }, "nullable": true }, "valueConversion": { "allOf": [ { "$ref": "#/components/schemas/DataTypeConversionError" } ], "nullable": true } } }, "OntologyEdgeKind": { "type": "string", "enum": [ "INHERITS_FROM", "CONSTRAINS_VALUES_ON", "CONSTRAINS_PROPERTIES_ON", "CONSTRAINS_LINKS_ON", "CONSTRAINS_LINK_DESTINATIONS_ON" ] }, "OntologyEditionProvenance": { "allOf": [ { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, { "type": "object", "required": [ "createdById" ], "properties": { "archivedById": { "allOf": [ { "$ref": "#/components/schemas/ActorEntityUuid" } ] }, "createdById": { "$ref": "#/components/schemas/ActorEntityUuid" } } } ], "description": "Provenance information for a specific edition of an ontology type.\n\nContains comprehensive tracking of who created and potentially archived this\nedition, along with user-provided context about the creation process." }, "OntologyOutwardEdge": { "oneOf": [ { "type": "object", "title": "OntologyToOntologyOutwardEdge", "required": [ "kind", "reversed", "rightEndpoint" ], "properties": { "kind": { "$ref": "#/components/schemas/OntologyEdgeKind" }, "reversed": { "type": "boolean" }, "rightEndpoint": { "$ref": "#/components/schemas/OntologyTypeVertexId" } } }, { "type": "object", "title": "OntologyToKnowledgeGraphOutwardEdge", "required": [ "kind", "reversed", "rightEndpoint" ], "properties": { "kind": { "$ref": "#/components/schemas/SharedEdgeKind" }, "reversed": { "type": "boolean" }, "rightEndpoint": { "$ref": "#/components/schemas/EntityIdWithInterval" } } } ] }, "OntologyProvenance": { "type": "object", "description": "Provenance information for an ontology type.\n\nContains tracking information about the creation, modification, and origin of an ontology type.", "required": [ "edition" ], "properties": { "edition": { "$ref": "#/components/schemas/OntologyEditionProvenance" } }, "additionalProperties": false }, "OntologyTemporalMetadata": { "type": "object", "required": [ "transactionTime" ], "properties": { "transactionTime": { "$ref": "#/components/schemas/LeftClosedTemporalInterval" } }, "additionalProperties": false }, "OntologyTypeRecordId": { "type": "object", "description": "An identifier for an ontology type record consisting of a base URL and version.\n\nThis type provides a structured representation of an ontology type identifier\nthat can be used in database records and type definitions. It contains the same\ncomponents as a [`VersionedUrl`] but in a structured form rather than a string.\n\n# Examples\n\n```\nuse std::str::FromStr;\n\nuse type_system::ontology::id::{\nBaseUrl, OntologyTypeRecordId, OntologyTypeVersion, VersionedUrl,\n};\n\n// Create from individual components\nlet base_url = BaseUrl::new(\"https://example.com/types/data-type/text/\".to_owned())?;\nlet version = OntologyTypeVersion::from_str(\"1\")?;\nlet record_id = OntologyTypeRecordId { base_url, version };\n\n// Convert between VersionedUrl and OntologyTypeRecordId\nlet url = VersionedUrl::from_str(\"https://example.com/types/data-type/text/v/1\")?;\nlet record_id = OntologyTypeRecordId::from(url.clone());\nlet url2 = VersionedUrl::from(record_id);\nassert_eq!(url, url2);\n# Ok::<(), Box>(())\n```", "required": [ "baseUrl", "version" ], "properties": { "baseUrl": { "$ref": "#/components/schemas/BaseUrl" }, "version": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "OntologyTypeVersion": { "type": "string" }, "OntologyTypeVertexId": { "oneOf": [ { "$ref": "#/components/schemas/DataTypeVertexId" }, { "$ref": "#/components/schemas/PropertyTypeVertexId" }, { "$ref": "#/components/schemas/EntityTypeVertexId" } ] }, "OntologyVertex": { "oneOf": [ { "type": "object", "title": "DataTypeVertex", "required": [ "kind", "inner" ], "properties": { "inner": { "$ref": "#/components/schemas/DataTypeWithMetadata" }, "kind": { "type": "string", "enum": [ "dataType" ] } } }, { "type": "object", "title": "PropertyTypeVertex", "required": [ "kind", "inner" ], "properties": { "inner": { "$ref": "#/components/schemas/PropertyTypeWithMetadata" }, "kind": { "type": "string", "enum": [ "propertyType" ] } } }, { "type": "object", "title": "EntityTypeVertex", "required": [ "kind", "inner" ], "properties": { "inner": { "$ref": "#/components/schemas/EntityTypeWithMetadata" }, "kind": { "type": "string", "enum": [ "entityType" ] } } } ], "discriminator": { "propertyName": "kind" } }, "OntologyVertices": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/OntologyVertex" } } }, "OpenTemporalBound": { "oneOf": [ { "type": "object", "title": "ExclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "exclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } }, { "type": "object", "title": "UnboundedBound", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "unbounded" ] } } } ], "discriminator": { "propertyName": "kind" } }, "Operator": { "type": "string", "enum": [ "+", "-", "*", "/" ] }, "Ordering": { "type": "string", "enum": [ "ascending", "descending" ] }, "OriginProvenance": { "oneOf": [ { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "type": { "type": "string", "enum": [ "web-app" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } }, { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "type": { "type": "string", "enum": [ "mobile-app" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } }, { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "type": { "type": "string", "enum": [ "browser-extension" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } }, { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "type": { "type": "string", "enum": [ "api" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } }, { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "stepIds": { "type": "array", "items": { "type": "string" } }, "type": { "type": "string", "enum": [ "flow" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } }, { "type": "object", "required": [ "type" ], "properties": { "apiKeyPublicId": { "type": "string" }, "deviceId": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "string" }, "semanticVersion": { "type": "string" }, "sessionId": { "type": "string" }, "type": { "type": "string", "enum": [ "migration" ] }, "userAgent": { "type": "string" }, "version": { "type": "string", "description": "The origin version, in whatever format the origin natively\nprovides." } } } ] }, "ParameterExpression": { "type": "object", "title": "ParameterExpression", "required": [ "parameter" ], "properties": { "convert": { "type": "object", "required": [ "from", "to" ], "properties": { "from": { "$ref": "#/components/schemas/VersionedUrl" }, "to": { "$ref": "#/components/schemas/VersionedUrl" } } }, "parameter": {} } }, "PartialEntityType": { "$ref": "./models/partial_entity_type.json" }, "PatchEntityParams": { "type": "object", "required": [ "entityId", "provenance" ], "properties": { "archived": { "type": "boolean" }, "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "decisionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "draft": { "type": "boolean" }, "entityId": { "$ref": "#/components/schemas/EntityId" }, "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "properties": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyPatchOperation" } }, "provenance": { "$ref": "#/components/schemas/ProvidedEntityEditionProvenance" } }, "additionalProperties": false }, "PathExpression": { "type": "object", "title": "PathExpression", "required": [ "path" ], "properties": { "path": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/DataTypeQueryToken" }, { "$ref": "#/components/schemas/PropertyTypeQueryToken" }, { "$ref": "#/components/schemas/EntityTypeQueryToken" }, { "$ref": "#/components/schemas/EntityQueryToken" }, { "$ref": "#/components/schemas/Selector" }, { "type": "string", "enum": [ "convert" ] }, { "type": "string" }, { "type": "number" } ] } } } }, "PermissionResponse": { "type": "object", "required": [ "has_permission" ], "properties": { "has_permission": { "type": "boolean" } } }, "Property": { "oneOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/Property" }, "description": "An ordered collection of properties.\n\nArrays can contain heterogeneous property types, though typically they\ncontain properties of the same structure based on the entity type definition." }, { "$ref": "#/components/schemas/PropertyObject" }, { "$ref": "#/components/schemas/PropertyValue" } ], "description": "Structured data that can be associated with an entity, conforming to property types defined in\nthe ontology.\n\nThe [`Property`] enum represents the hierarchical structure of data within an entity.\nProperties are instances of [`PropertyType`]s defined in the ontology. The relationship\nis similar to objects and classes in object-oriented programming:\n- [`PropertyType`]s define the schema, structure, and constraints that properties must follow\n- [`Property`] instances contain actual data conforming to those schemas\n\nProperties can be:\n\n- Arrays of other properties\n- Objects (maps) with property type URLs as keys and nested properties as values\n- Primitive values like strings, numbers, booleans, etc.\n\nEach property in an entity:\n- Corresponds to a specific [`PropertyType`] in the ontology\n- May have associated metadata tracking provenance, confidence, and other contextual information\n- Must satisfy the validation rules defined in its property type\n- Can be addressed using a [`PropertyPath`] for targeted access and modification\n\nProperties form the backbone of entity data representation in the system, allowing\nfor flexible and structured knowledge organization that aligns with the ontology.\n\n[`PropertyType`]: crate::ontology::property_type::PropertyType" }, "PropertyArrayMetadata": { "type": "object", "required": [ "value" ], "properties": { "metadata": { "$ref": "#/components/schemas/ArrayMetadata" }, "value": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyMetadata" }, "description": "Metadata for each item in the array." } }, "additionalProperties": false }, "PropertyArrayValidationReport": { "oneOf": [ { "type": "object", "required": [ "type", "data" ], "properties": { "data": { "$ref": "#/components/schemas/PropertyValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } }, { "type": "object", "required": [ "type", "data" ], "properties": { "data": { "$ref": "#/components/schemas/ArrayValidationReport" }, "type": { "type": "string", "enum": [ "arrayValidation" ] } } } ], "discriminator": { "propertyName": "type" } }, "PropertyArrayWithMetadata": { "type": "object", "required": [ "value" ], "properties": { "metadata": { "$ref": "#/components/schemas/ArrayMetadata" }, "value": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyWithMetadata" } } }, "additionalProperties": false }, "PropertyDiff": { "oneOf": [ { "type": "object", "description": "A property was added at the specified path.\n\nThis variant indicates that a property that didn't exist in the original\nstructure was added in the new one.", "required": [ "path", "added", "op" ], "properties": { "added": { "$ref": "#/components/schemas/Property" }, "op": { "type": "string", "enum": [ "added" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" } } }, { "type": "object", "description": "A property was removed from the specified path.\n\nThis variant indicates that a property that existed in the original\nstructure was removed in the new one.", "required": [ "path", "removed", "op" ], "properties": { "op": { "type": "string", "enum": [ "removed" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" }, "removed": { "$ref": "#/components/schemas/Property" } } }, { "type": "object", "description": "A property at the specified path changed value.\n\nThis variant indicates that a property existed in both structures\nbut had different values.", "required": [ "path", "old", "new", "op" ], "properties": { "new": { "$ref": "#/components/schemas/Property" }, "old": { "$ref": "#/components/schemas/Property" }, "op": { "type": "string", "enum": [ "changed" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" } } } ], "description": "A representation of a difference between two property structures.\n\n[`PropertyDiff`] captures the nature of a change between two property values,\nincluding the path where the change occurred and the relevant property values\n(added, removed, or changed). This structure enables precise tracking of\nproperty modifications throughout the system.\n\nWhen comparing two property hierarchies, multiple diffs may be generated to\nrepresent all changes, with each diff capturing a specific modification at a\nparticular path.", "discriminator": { "propertyName": "op" } }, "PropertyMetadata": { "oneOf": [ { "$ref": "#/components/schemas/PropertyArrayMetadata" }, { "$ref": "#/components/schemas/PropertyObjectMetadata" }, { "$ref": "#/components/schemas/PropertyValueMetadata" } ], "description": "Metadata for property values, structured to match the hierarchical nature of properties.\n\n[`PropertyMetadata`] follows the same structure as the [`Property`] enum, providing\nmetadata for arrays, objects, and values. This parallel structure ensures that\nevery property element can have associated metadata regardless of its type.\n\nThe metadata at each level includes relevant information like provenance, confidence,\nand type references, allowing for fine-grained tracking of data origins and reliability.\n\n[`Property`]: crate::knowledge::property::Property" }, "PropertyMetadataValidationReport": { "default": null, "nullable": true }, "PropertyObject": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Property" } }, "PropertyObjectMetadata": { "type": "object", "required": [ "value" ], "properties": { "metadata": { "$ref": "#/components/schemas/ObjectMetadata" }, "value": { "type": "object", "description": "Metadata for each field in the object.\n\nThe keys correspond to the property type URLs used in the object property.", "additionalProperties": { "$ref": "#/components/schemas/PropertyMetadata" } } }, "additionalProperties": false }, "PropertyObjectValidationReport": { "oneOf": [ { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/PropertyValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } }, { "allOf": [ { "$ref": "#/components/schemas/ObjectValidationReport" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "objectValidation" ] } } } ] } ], "discriminator": { "propertyName": "type" } }, "PropertyObjectWithMetadata": { "type": "object", "required": [ "value" ], "properties": { "metadata": { "$ref": "#/components/schemas/ObjectMetadata" }, "value": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PropertyWithMetadata" } } }, "additionalProperties": false }, "PropertyPatchOperation": { "oneOf": [ { "type": "object", "required": [ "path", "property", "op" ], "properties": { "op": { "type": "string", "enum": [ "add" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" }, "property": { "$ref": "#/components/schemas/PropertyWithMetadata" } } }, { "type": "object", "required": [ "path", "op" ], "properties": { "op": { "type": "string", "enum": [ "remove" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" } } }, { "type": "object", "required": [ "path", "property", "op" ], "properties": { "op": { "type": "string", "enum": [ "replace" ] }, "path": { "$ref": "#/components/schemas/PropertyPath" }, "property": { "$ref": "#/components/schemas/PropertyWithMetadata" } } } ], "discriminator": { "propertyName": "op" } }, "PropertyPath": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyPathElement" } }, "PropertyPathElement": { "oneOf": [ { "$ref": "#/components/schemas/BaseUrl" }, { "type": "integer", "description": "An array index that addresses a specific element in an array property.", "minimum": 0 } ], "description": "An element in a property path that identifies a specific property location.\n\n[`PropertyPathElement`] represents a single step in navigating a property hierarchy,\naddressing either:\n- A specific property by its type URL (for object properties)\n- A specific index (for array properties)\n\nThese elements can be chained together to form a [`PropertyPath`] that addresses\ndeeply nested properties within the property hierarchy." }, "PropertyProvenance": { "type": "object", "properties": { "sources": { "type": "array", "items": { "$ref": "#/components/schemas/SourceProvenance" } } }, "additionalProperties": false }, "PropertyType": { "$ref": "./models/property_type.json" }, "PropertyTypeEmbedding": { "type": "object", "required": [ "propertyTypeId", "embedding" ], "properties": { "embedding": { "$ref": "#/components/schemas/Embedding" }, "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, "PropertyTypeMetadata": { "oneOf": [ { "type": "object", "title": "OwnedPropertyTypeMetadata", "required": [ "recordId", "webId", "temporalVersioning", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" }, "webId": { "$ref": "#/components/schemas/WebId" } } }, { "type": "object", "title": "ExternalPropertyTypeMetadata", "required": [ "recordId", "fetchedAt", "temporalVersioning", "provenance" ], "properties": { "fetchedAt": { "$ref": "#/components/schemas/Timestamp" }, "provenance": { "$ref": "#/components/schemas/OntologyProvenance" }, "recordId": { "$ref": "#/components/schemas/OntologyTypeRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/OntologyTemporalMetadata" } } } ] }, "PropertyTypeQueryToken": { "type": "string", "description": "A single token in a [`DataTypeQueryPath`].", "enum": [ "baseUrl", "version", "versionedUrl", "webId", "title", "description", "editionProvenance", "dataTypes", "propertyTypes", "embedding" ] }, "PropertyTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "PropertyTypeWithMetadata": { "type": "object", "required": [ "schema", "metadata" ], "properties": { "metadata": { "$ref": "#/components/schemas/PropertyTypeMetadata" }, "schema": { "$ref": "#/components/schemas/PropertyType" } } }, "PropertyValidationReport": { "oneOf": [ { "allOf": [ { "$ref": "#/components/schemas/OneOfPropertyValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "value" ] } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/OneOfArrayValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "array" ] } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/OneOfObjectValidationReports" }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "object" ] } } } ] } ], "discriminator": { "propertyName": "type" } }, "PropertyValue": {}, "PropertyValueMetadata": { "type": "object", "required": [ "metadata" ], "properties": { "metadata": { "$ref": "#/components/schemas/ValueMetadata" } }, "additionalProperties": false }, "PropertyValueType": { "type": "string", "description": "Categorizes property value structures by their basic structural type.\n\nThis enum provides a simple classification of the different kinds of property\nvalue structures in the Block Protocol type system. It's used by the\n[`PropertyValues::property_value_type`] method to indicate which variant a particular property\nvalue represents.", "enum": [ "value", "array", "object" ] }, "PropertyValueTypeMismatch": { "type": "object", "required": [ "actual", "expected" ], "properties": { "actual": { "$ref": "#/components/schemas/PropertyValueType" }, "expected": { "$ref": "#/components/schemas/PropertyValueType" } } }, "PropertyValueValidationReport": { "oneOf": [ { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/PropertyValueTypeMismatch" }, "type": { "type": "string", "enum": [ "wrongType" ] } } }, { "type": "object", "required": [ "data", "type" ], "properties": { "data": { "$ref": "#/components/schemas/ValueValidationReport" }, "type": { "type": "string", "enum": [ "valueValidation" ] } } } ], "discriminator": { "propertyName": "type" } }, "PropertyValueWithMetadata": { "type": "object", "description": "A primitive value with its associated metadata.\n\n`PropertyValueWithMetadata` combines a [`PropertyValue`] (such as a string, number, or boolean)\nwith its [`ValueMetadata`] containing provenance, confidence, and type information.\n\nThis structure is used as the leaf node in the [`PropertyWithMetadata`] hierarchy,\nrepresenting atomic data values with their context.\n\n[`PropertyWithMetadata`]: crate::knowledge::property::PropertyWithMetadata", "required": [ "value", "metadata" ], "properties": { "metadata": { "$ref": "#/components/schemas/ValueMetadata" }, "value": { "$ref": "#/components/schemas/PropertyValue" } }, "additionalProperties": false }, "PropertyWithMetadata": { "oneOf": [ { "$ref": "#/components/schemas/PropertyArrayWithMetadata" }, { "$ref": "#/components/schemas/PropertyObjectWithMetadata" }, { "$ref": "#/components/schemas/PropertyValueWithMetadata" } ], "description": "Property data combined with its corresponding metadata.\n\n[`PropertyWithMetadata`] pairs each property with its metadata, maintaining the same\nhierarchical structure. This unified representation enables operations that need to\nmodify both properties and their metadata consistently, such as patching operations.\n\nThe structure mirrors the [`Property`] enum, with specialized types for arrays, objects,\nand values that maintain metadata at each level of the hierarchy." }, "ProvidedEntityEditionProvenance": { "type": "object", "required": [ "actorType", "origin" ], "properties": { "actorType": { "$ref": "#/components/schemas/ActorType" }, "origin": { "$ref": "#/components/schemas/OriginProvenance" }, "sources": { "type": "array", "items": { "$ref": "#/components/schemas/SourceProvenance" } } }, "additionalProperties": false }, "ProvidedOntologyEditionProvenance": { "type": "object", "description": "User-provided provenance information for an ontology type edition.\n\nContains information provided by the client about the creation context,\nincluding the acting entity's type and the origin of the creation action.", "required": [ "actorType", "origin" ], "properties": { "actorType": { "$ref": "#/components/schemas/ActorType" }, "origin": { "$ref": "#/components/schemas/OriginProvenance" }, "sources": { "type": "array", "items": { "$ref": "#/components/schemas/SourceProvenance" } } }, "additionalProperties": false }, "QueryConversion": { "type": "object", "required": [ "path", "dataTypeId" ], "properties": { "dataTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "path": { "$ref": "#/components/schemas/PropertyPath" } }, "additionalProperties": false }, "QueryDataTypeSubgraphParams": { "oneOf": [ { "allOf": [ { "$ref": "#/components/schemas/QueryDataTypesParams" }, { "type": "object", "required": [ "traversalPaths" ], "properties": { "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/TraversalPath" } } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/QueryDataTypesParams" }, { "type": "object", "required": [ "traversalPaths", "graphResolveDepths" ], "properties": { "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTraversalPath" } } } } ] } ] }, "QueryDataTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "subgraph": { "$ref": "#/components/schemas/Subgraph" } } }, "QueryDataTypesParams": { "type": "object", "required": [ "filter", "temporalAxes" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "limit": { "type": "integer", "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "QueryDataTypesResponse": { "type": "object", "required": [ "dataTypes" ], "properties": { "count": { "type": "integer", "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "dataTypes": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeWithMetadata" } } } }, "QueryEntitiesRequest": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts", "includePermissions" ], "properties": { "conversions": { "type": "array", "items": { "$ref": "#/components/schemas/QueryConversion" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeDrafts": { "type": "boolean" }, "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ], "nullable": true }, "includePermissions": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "sortingPaths": { "type": "array", "items": { "$ref": "#/components/schemas/EntityQuerySortingRecord" }, "nullable": true }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "QueryEntitiesResponse": { "type": "object", "required": [ "entities" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "entities": { "type": "array", "items": { "$ref": "#/components/schemas/Entity" } }, "permissions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/EntityPermissions" } } } }, "QueryEntitiesTableParams": { "type": "object", "description": "Parameters for [`EntityStore::query_entities_table`].\n\n[`EntityStore::query_entities_table`]: crate::entity::EntityStore::query_entities_table", "required": [ "filter", "limit" ], "properties": { "conversions": { "type": "array", "items": { "$ref": "#/components/schemas/QueryConversion" }, "description": "Converts the rows' property values at each conversion's path into its\ntarget data type, mirroring [`QueryEntitiesParams::conversions`].\n\n[`QueryEntitiesParams::conversions`]: crate::entity::QueryEntitiesParams::conversions" }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityTableCursor" } ] }, "filter": { "$ref": "#/components/schemas/EntityTableFilter" }, "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ] }, "includeSummary": { "type": "boolean" }, "limit": { "type": "integer", "minimum": 0 }, "sort": { "$ref": "#/components/schemas/EntityTableSorting" } }, "additionalProperties": false }, "QueryEntitiesTableResponse": { "type": "object", "required": [ "rows" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityTableCursor" } ] }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "rows": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTableRow" } }, "summary": { "allOf": [ { "$ref": "#/components/schemas/EntityTableSummary" } ] } } }, "QueryEntitySubgraphRequest": { "oneOf": [ { "allOf": [ { "$ref": "#/components/schemas/QueryEntitiesRequest" }, { "type": "object", "required": [ "traversalPaths", "graphResolveDepths" ], "properties": { "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTraversalPath" } } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/QueryEntitiesRequest" }, { "type": "object", "required": [ "traversalPaths" ], "properties": { "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/TraversalPath" } } } } ] } ] }, "QueryEntitySubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "entityPermissions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/EntityPermissions" } }, "subgraph": { "$ref": "#/components/schemas/Subgraph" } } }, "QueryEntityTypeSubgraphParams": { "oneOf": [ { "allOf": [ { "$ref": "#/components/schemas/CommonQueryEntityTypesParams" }, { "type": "object", "required": [ "traversalPaths", "graphResolveDepths" ], "properties": { "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTraversalPath" } } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/CommonQueryEntityTypesParams" }, { "type": "object", "required": [ "traversalPaths" ], "properties": { "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/TraversalPath" } } } } ] } ] }, "QueryEntityTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "count": { "type": "integer", "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "subgraph": { "$ref": "#/components/schemas/Subgraph" }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "QueryEntityTypesParams": { "allOf": [ { "$ref": "#/components/schemas/CommonQueryEntityTypesParams" }, { "type": "object", "properties": { "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ], "nullable": true } } } ] }, "QueryEntityTypesResponse": { "type": "object", "required": [ "entityTypes" ], "properties": { "closedEntityTypes": { "type": "array", "items": { "$ref": "#/components/schemas/ClosedEntityType" } }, "count": { "type": "integer", "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "entityTypes": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeWithMetadata" } }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "QueryPropertyTypeSubgraphParams": { "oneOf": [ { "allOf": [ { "$ref": "#/components/schemas/QueryPropertyTypesParams" }, { "type": "object", "required": [ "traversalPaths", "graphResolveDepths" ], "properties": { "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTraversalPath" } } } } ] }, { "allOf": [ { "$ref": "#/components/schemas/QueryPropertyTypesParams" }, { "type": "object", "required": [ "traversalPaths" ], "properties": { "traversalPaths": { "type": "array", "items": { "$ref": "#/components/schemas/TraversalPath" } } } } ] } ] }, "QueryPropertyTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "subgraph": { "$ref": "#/components/schemas/Subgraph" } } }, "QueryPropertyTypesParams": { "type": "object", "required": [ "filter", "temporalAxes" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "limit": { "type": "integer", "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "QueryPropertyTypesResponse": { "type": "object", "required": [ "propertyTypes" ], "properties": { "count": { "type": "integer", "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "propertyTypes": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeWithMetadata" } } } }, "QueryTemporalAxes": { "oneOf": [ { "type": "object", "title": "QueryTemporalAxesDecisionTime", "required": [ "pinned", "variable" ], "properties": { "pinned": { "type": "object", "title": "PinnedTransactionAxis", "required": [ "axis", "timestamp" ], "properties": { "axis": { "$ref": "#/components/schemas/TransactionTime" }, "timestamp": { "type": "string", "format": "date-time" } } }, "variable": { "type": "object", "title": "VariableDecisionAxis", "required": [ "axis", "interval" ], "properties": { "axis": { "$ref": "#/components/schemas/DecisionTime" }, "interval": { "$ref": "#/components/schemas/RightBoundedTemporalInterval" } } } } }, { "type": "object", "title": "QueryTemporalAxesTransactionTime", "required": [ "pinned", "variable" ], "properties": { "pinned": { "type": "object", "title": "PinnedDecisionAxis", "required": [ "axis", "timestamp" ], "properties": { "axis": { "$ref": "#/components/schemas/DecisionTime" }, "timestamp": { "type": "string", "format": "date-time" } } }, "variable": { "type": "object", "title": "VariableTransactionAxis", "required": [ "axis", "interval" ], "properties": { "axis": { "$ref": "#/components/schemas/TransactionTime" }, "interval": { "$ref": "#/components/schemas/RightBoundedTemporalInterval" } } } } } ], "description": "Defines the two possible combinations of pinned/variable temporal axes that are used in\nresponses to queries that return [`Subgraph`]s.\n\nWhen querying the Graph, temporal data is returned. The Graph is implemented as a bitemporal\ndata store, which means the knowledge data contains information about the time of when the\nknowledge was inserted into the Graph, the [`TransactionTime`], and when the knowledge was\ndecided to be inserted, the [`DecisionTime`].\n\nIn order to query data from the Graph, only one of the two time axes can be used. This is\nachieved by using a `TemporalAxes`. The `TemporalAxes` pins one axis to a specified\n[`Timestamp`], while the other axis can be a [`Interval`]. The pinned axis is called the\n[`PinnedTemporalAxis`] and the other axis is called the [`VariableTemporalAxis`]. The returned\ndata will then only contain temporal data that is contained in the [`Interval`] of the\n[`VariableTemporalAxis`] for the given [`Timestamp`] of the [`PinnedTemporalAxis`].\n\n[`Subgraph`]: crate::subgraph::Subgraph\n[`Interval`]: hash_graph_temporal_versioning::Interval" }, "QueryTemporalAxesUnresolved": { "oneOf": [ { "type": "object", "title": "QueryTemporalAxesUnresolvedDecisionTime", "required": [ "pinned", "variable" ], "properties": { "pinned": { "type": "object", "title": "UnresolvedPinnedTransactionAxis", "required": [ "axis", "timestamp" ], "properties": { "axis": { "$ref": "#/components/schemas/TransactionTime" }, "timestamp": { "$ref": "#/components/schemas/NullableTimestamp" } } }, "variable": { "type": "object", "title": "UnresolvedVariableDecisionAxis", "required": [ "axis", "interval" ], "properties": { "axis": { "$ref": "#/components/schemas/DecisionTime" }, "interval": { "$ref": "#/components/schemas/UnresolvedRightBoundedTemporalInterval" } } } } }, { "type": "object", "title": "QueryTemporalAxesUnresolvedTransactionTime", "required": [ "pinned", "variable" ], "properties": { "pinned": { "type": "object", "title": "UnresolvedPinnedDecisionAxis", "required": [ "axis", "timestamp" ], "properties": { "axis": { "$ref": "#/components/schemas/DecisionTime" }, "timestamp": { "$ref": "#/components/schemas/NullableTimestamp" } } }, "variable": { "type": "object", "title": "UnresolvedVariableTransactionAxis", "required": [ "axis", "interval" ], "properties": { "axis": { "$ref": "#/components/schemas/TransactionTime" }, "interval": { "$ref": "#/components/schemas/UnresolvedRightBoundedTemporalInterval" } } } } } ], "description": "Defines the two possible combinations of pinned/variable temporal axes that are used in queries\nthat return [`Subgraph`]s.\n\nThe [`VariableTemporalAxisUnresolved`] is optionally bounded, in the absence of provided\nbounds an inclusive bound at the timestamp at point of resolving is assumed.\n\n[`Subgraph`]: crate::subgraph::Subgraph" }, "Real": { "type": "number" }, "Report": { "$ref": "./models/report.json" }, "RightBoundedTemporalInterval": { "type": "object", "required": [ "start", "end" ], "properties": { "end": { "$ref": "#/components/schemas/LimitedTemporalBound" }, "start": { "$ref": "#/components/schemas/TemporalBound" } } }, "RoleAssignmentStatus": { "type": "string", "enum": [ "newly-assigned", "already-assigned" ] }, "RoleName": { "type": "string", "enum": [ "administrator", "member" ] }, "RoleUnassignmentStatus": { "type": "string", "enum": [ "unassigned", "not-assigned" ] }, "SearchEntitiesFilter": { "type": "object", "description": "Scope constraints for [`EntityStore::search_entities`].\n\nEmpty lists impose no restriction.", "properties": { "entityTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" }, "default": [] }, "includeDrafts": { "type": "boolean", "default": false }, "webIds": { "type": "array", "items": { "$ref": "#/components/schemas/WebId" }, "default": [] } }, "additionalProperties": false }, "SearchEntitiesRequest": { "type": "object", "description": "Request body for the entity embedding search endpoint.\n\nExactly one of `embedding` or `semanticString` must be provided. `semanticString` is converted\ninto an embedding by the server, which requires an embedding client to be configured.", "required": [ "maximumSemanticDistance" ], "properties": { "embedding": { "allOf": [ { "$ref": "#/components/schemas/Embedding" } ] }, "filter": { "$ref": "#/components/schemas/SearchEntitiesFilter" }, "includeEntityTypes": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "maximumSemanticDistance": { "type": "number", "format": "double" }, "semanticString": { "type": "string" } }, "additionalProperties": false }, "SearchEntitiesResponse": { "type": "object", "description": "Response for [`EntityStore::search_entities`].", "required": [ "entities" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "entities": { "type": "array", "items": { "$ref": "#/components/schemas/Entity" } } } }, "SearchEntityTypesRequest": { "type": "object", "description": "Request body for the entity type embedding search endpoint.\n\nExactly one of `embedding` or `semanticString` must be provided. `semanticString` is converted\ninto an embedding by the server, which requires an embedding client to be configured.", "required": [ "maximumSemanticDistance" ], "properties": { "embedding": { "allOf": [ { "$ref": "#/components/schemas/Embedding" } ] }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "maximumSemanticDistance": { "type": "number", "format": "double" }, "semanticString": { "type": "string" } }, "additionalProperties": false }, "SearchEntityTypesResponse": { "type": "object", "description": "Response for [`EntityTypeStore::search_entity_types`].", "required": [ "entityTypes" ], "properties": { "entityTypes": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeWithMetadata" } } } }, "Selector": { "type": "string", "enum": [ "*" ] }, "SharedEdgeKind": { "type": "string", "enum": [ "IS_OF_TYPE" ] }, "SourceProvenance": { "type": "object", "description": "The source material used in producing a value.", "required": [ "type" ], "properties": { "authors": { "type": "array", "items": { "type": "string" }, "description": "The people or organizations that authored the material." }, "entityId": { "allOf": [ { "$ref": "#/components/schemas/EntityId" } ] }, "firstPublished": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "lastUpdated": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "loadedAt": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "location": { "allOf": [ { "$ref": "#/components/schemas/Location" } ] }, "type": { "$ref": "#/components/schemas/SourceType" } }, "additionalProperties": false }, "SourceType": { "type": "string", "description": "The type of source material which was used to produce a value.", "enum": [ "webpage", "document", "integration" ] }, "Status": { "$ref": "./models/status.json" }, "Subgraph": { "type": "object", "required": [ "roots", "vertices", "edges", "temporalAxes" ], "properties": { "edges": { "$ref": "#/components/schemas/Edges" }, "roots": { "type": "array", "items": { "$ref": "#/components/schemas/GraphElementVertexId" } }, "temporalAxes": { "$ref": "#/components/schemas/SubgraphTemporalAxes" }, "vertices": { "$ref": "#/components/schemas/Vertices" } } }, "SubgraphTemporalAxes": { "type": "object", "required": [ "initial", "resolved" ], "properties": { "initial": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" }, "resolved": { "$ref": "#/components/schemas/QueryTemporalAxes" } } }, "SummarizeEntitiesParams": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeCreatedByIds": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeTypeIds": { "type": "boolean" }, "includeTypeTitles": { "type": "boolean" }, "includeWebIds": { "type": "boolean" }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "SummarizeEntitiesResponse": { "type": "object", "properties": { "count": { "type": "integer", "minimum": 0 }, "createdByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "typeIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "typeTitles": { "type": "object", "additionalProperties": { "type": "string" } }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "TeamId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" }, "TemporalBound": { "oneOf": [ { "type": "object", "title": "UnboundedBound", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "unbounded" ] } } }, { "type": "object", "title": "InclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "inclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } }, { "type": "object", "title": "ExclusiveBound", "required": [ "kind", "limit" ], "properties": { "kind": { "type": "string", "enum": [ "exclusive" ] }, "limit": { "$ref": "#/components/schemas/Timestamp" } } } ], "discriminator": { "propertyName": "kind" } }, "Timestamp": { "type": "string", "format": "date-time" }, "TransactionTime": { "type": "string", "description": "Time axis for the transaction time.\n\nThis is used as the generic argument to time-related structs and can be used as tag value.", "enum": [ "transactionTime" ] }, "TraversalEdge": { "oneOf": [ { "type": "object", "title": "InheritsFromEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "inherits-from" ] } } }, { "type": "object", "title": "ConstrainsValuesOnEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "constrains-values-on" ] } } }, { "type": "object", "title": "ConstrainsPropertiesOnEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "constrains-properties-on" ] } } }, { "type": "object", "title": "ConstrainsLinksOnEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "constrains-links-on" ] } } }, { "type": "object", "title": "ConstrainsLinkDestinationsOnEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "constrains-link-destinations-on" ] } } }, { "type": "object", "title": "IsOfTypeEdge", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "is-of-type" ] } } }, { "type": "object", "title": "HasLeftEntityEdge", "required": [ "direction", "kind" ], "properties": { "direction": { "$ref": "#/components/schemas/EdgeDirection" }, "kind": { "type": "string", "enum": [ "has-left-entity" ] } } }, { "type": "object", "title": "HasRightEntityEdge", "required": [ "direction", "kind" ], "properties": { "direction": { "$ref": "#/components/schemas/EdgeDirection" }, "kind": { "type": "string", "enum": [ "has-right-entity" ] } } } ], "discriminator": { "propertyName": "kind" } }, "TraversalPath": { "type": "object", "required": [ "edges" ], "properties": { "edges": { "type": "array", "items": { "$ref": "#/components/schemas/TraversalEdge" } } }, "additionalProperties": false }, "UnarchiveDataTypeParams": { "type": "object", "required": [ "dataTypeId", "provenance" ], "properties": { "dataTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" } }, "additionalProperties": false }, "UnarchiveEntityTypeParams": { "type": "object", "required": [ "entityTypeId", "provenance" ], "properties": { "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" } }, "additionalProperties": false }, "UnarchivePropertyTypeParams": { "type": "object", "required": [ "propertyTypeId", "provenance" ], "properties": { "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" } }, "additionalProperties": false }, "UnexpectedEntityType": { "type": "object", "required": [ "actual", "expected" ], "properties": { "actual": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } }, "expected": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } } }, "UnresolvedRightBoundedTemporalInterval": { "type": "object", "required": [ "start", "end" ], "properties": { "end": { "oneOf": [ { "$ref": "#/components/schemas/LimitedTemporalBound" } ], "nullable": true }, "start": { "oneOf": [ { "$ref": "#/components/schemas/TemporalBound" } ], "nullable": true } } }, "UpdateDataType": { "$ref": "./models/update_data_type.json" }, "UpdateDataTypeEmbeddingParams": { "type": "object", "required": [ "dataTypeId", "embedding", "updatedAtTransactionTime", "reset" ], "properties": { "dataTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "embedding": { "$ref": "#/components/schemas/Embedding" }, "reset": { "type": "boolean" }, "updatedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" } }, "additionalProperties": false }, "UpdateDataTypeRequest": { "type": "object", "required": [ "schema", "typeToUpdate", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/UpdateDataType" }, "typeToUpdate": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "UpdateEntityEmbeddingsParams": { "type": "object", "required": [ "entityId", "embeddings", "updatedAtTransactionTime", "updatedAtDecisionTime", "reset" ], "properties": { "embeddings": { "type": "array", "items": { "$ref": "#/components/schemas/EntityEmbedding" } }, "entityId": { "$ref": "#/components/schemas/EntityId" }, "reset": { "type": "boolean" }, "updatedAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "updatedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" } }, "additionalProperties": false }, "UpdateEntityType": { "$ref": "./models/update_entity_type.json" }, "UpdateEntityTypeEmbeddingParams": { "type": "object", "required": [ "entityTypeId", "embedding", "updatedAtTransactionTime", "reset" ], "properties": { "embedding": { "$ref": "#/components/schemas/Embedding" }, "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "reset": { "type": "boolean" }, "updatedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" } }, "additionalProperties": false }, "UpdateEntityTypeRequest": { "type": "object", "required": [ "schema", "typeToUpdate", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/UpdateEntityType" }, "typeToUpdate": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "UpdatePropertyType": { "$ref": "./models/update_property_type.json" }, "UpdatePropertyTypeEmbeddingParams": { "type": "object", "required": [ "propertyTypeId", "embedding", "updatedAtTransactionTime", "reset" ], "properties": { "embedding": { "$ref": "#/components/schemas/Embedding" }, "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" }, "reset": { "type": "boolean" }, "updatedAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" } }, "additionalProperties": false }, "UpdatePropertyTypeRequest": { "type": "object", "required": [ "schema", "typeToUpdate", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "schema": { "$ref": "#/components/schemas/UpdatePropertyType" }, "typeToUpdate": { "$ref": "#/components/schemas/VersionedUrl" } }, "additionalProperties": false }, "UpdateWebShortnameParams": { "type": "object", "required": [ "shortname" ], "properties": { "shortname": { "type": "string" } }, "additionalProperties": false }, "UserId": { "$ref": "#/components/schemas/ActorEntityUuid" }, "ValidateEntityComponents": { "type": "object", "properties": { "linkData": { "type": "boolean" }, "linkValidation": { "type": "boolean" }, "numItems": { "type": "boolean" }, "requiredProperties": { "type": "boolean" } }, "additionalProperties": false }, "ValidateEntityParams": { "type": "object", "required": [ "entityTypes", "properties" ], "properties": { "components": { "allOf": [ { "$ref": "#/components/schemas/ValidateEntityComponents" } ] }, "entityTypes": { "$ref": "#/components/schemas/EntityValidationType" }, "linkData": { "allOf": [ { "$ref": "#/components/schemas/LinkData" } ] }, "properties": { "$ref": "#/components/schemas/PropertyObjectWithMetadata" } }, "additionalProperties": false }, "ValueMetadata": { "type": "object", "required": [ "dataTypeId" ], "properties": { "canonical": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PropertyValue" } }, "confidence": { "allOf": [ { "$ref": "#/components/schemas/Confidence" } ] }, "dataTypeId": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "originalDataTypeId": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ] }, "provenance": { "$ref": "#/components/schemas/ValueProvenance" } }, "additionalProperties": false }, "ValueProvenance": { "type": "object", "properties": { "sources": { "type": "array", "items": { "$ref": "#/components/schemas/SourceProvenance" } } }, "additionalProperties": false }, "ValueValidationError": { "oneOf": [ { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "retrieval" ] } } }, { "type": "object", "required": [ "error", "type" ], "properties": { "error": { "$ref": "#/components/schemas/Report" }, "type": { "type": "string", "enum": [ "constraints" ] } } } ], "discriminator": { "propertyName": "type" } }, "ValueValidationReport": { "type": "object", "properties": { "abstract": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "incompatible": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "provided": { "allOf": [ { "$ref": "#/components/schemas/ValueValidationError" } ], "nullable": true }, "target": { "allOf": [ { "$ref": "#/components/schemas/ValueValidationError" } ], "nullable": true } } }, "Variable": { "type": "string", "enum": [ "self" ] }, "VersionedUrl": { "type": "string", "title": "Versioned URL", "format": "uri", "description": "The versioned URL of a Block Protocol ontology type (the $id of the schema). It should be of the form `${baseUrl}v/${versionNumber}`", "maxLength": 2048 }, "Vertex": { "oneOf": [ { "$ref": "#/components/schemas/OntologyVertex" }, { "$ref": "#/components/schemas/KnowledgeGraphVertex" } ] }, "Vertices": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "oneOf": [ { "$ref": "#/components/schemas/KnowledgeGraphVertex" }, { "$ref": "#/components/schemas/OntologyVertex" } ] } } }, "WebId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } }, "tags": [ { "name": "Graph", "description": "HASH Graph API" }, { "name": "DataType", "description": "Data Type management API" }, { "name": "PropertyType", "description": "Property type management API" }, { "name": "EntityType", "description": "Entity type management API" }, { "name": "Entity", "description": "entity management API" }, { "name": "Permission", "description": "Permission management API" }, { "name": "Principal", "description": "Principal management API" }, { "name": "HashQL", "description": "HashQL query execution API" } ] }