{ "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/relationships": { "post": { "tags": [ "Graph", "Web" ], "operationId": "modify_web_authorization_relationships", "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/ModifyWebAuthorizationRelationship" } } } }, "required": true }, "responses": { "204": { "description": "The relationship was modified for the web" }, "403": { "description": "Permission denied" } } } }, "/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}/permissions/{permission}": { "get": { "tags": [ "Graph", "Web" ], "operationId": "check_web_permission", "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 web ID to check if the actor has the permission", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } }, { "name": "permission", "in": "path", "description": "The permission to check for", "required": true, "schema": { "$ref": "#/components/schemas/WebPermission" } } ], "responses": { "200": { "description": "Information if the actor has the permission for the web", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionResponse" } } } }, "500": { "description": "Internal error occurred" } } } }, "/actor-groups/webs/{web_id}/relationships": { "get": { "tags": [ "Graph", "Web" ], "operationId": "get_web_authorization_relationships", "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 web to read the relations for", "required": true, "schema": { "$ref": "#/components/schemas/WebId" } } ], "responses": { "200": { "description": "The relations of the web", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/WebRelationAndSubject" } } } } }, "403": { "description": "Permission denied" } } } }, "/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/{actor_group_id}/permissions/{permission}": { "get": { "tags": [ "Graph", "Actor Group" ], "operationId": "check_account_group_permission", "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 if the actor has the permission", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } }, { "name": "permission", "in": "path", "description": "The permission to check for", "required": true, "schema": { "$ref": "#/components/schemas/AccountGroupPermission" } } ], "responses": { "200": { "description": "Information if the actor can add an owner", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionResponse" } } } }, "500": { "description": "Internal error occurred" } } } }, "/actor-groups/{actor_group_id}/relations": { "get": { "tags": [ "Graph", "Actor Group" ], "operationId": "get_actor_group_relations", "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 relations from", "required": true, "schema": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } ], "responses": { "200": { "description": "List of members and administrators of the actor group", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountGroupRelationAndSubject" } } } } }, "403": { "description": "Permission denied" }, "500": { "description": "Internal 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}": { "get": { "tags": [ "Graph", "Principal" ], "operationId": "has_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": "role_name", "in": "path", "description": "The role to be checked", "required": true, "schema": { "$ref": "#/components/schemas/RoleName" } }, { "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": { "type": "boolean" } } } }, "404": { "description": "The team was not found" }, "500": { "description": "Store error occurred" } } }, "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/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": "get_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/GetDataTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of data types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetDataTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/data-types/query/conversions": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "get_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/GetDataTypeConversionTargetsParams" } } }, "required": true }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetDataTypeConversionTargetsResponse" } } } }, "500": { "description": "Store error occurred" } } } }, "/data-types/query/subgraph": { "post": { "tags": [ "Graph", "DataType" ], "operationId": "get_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/GetDataTypeSubgraphParams" } } }, "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/GetDataTypeSubgraphResponse" } } } }, "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/CreateEntityRequest" } } }, "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/CreateEntityRequest" } } } }, "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/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": "get_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" } }, { "name": "after", "in": "query", "description": "The cursor to start reading from", "required": false, "schema": { "type": "string", "nullable": true } }, { "name": "limit", "in": "query", "description": "The maximum number of entities to read", "required": false, "schema": { "type": "integer", "nullable": true, "minimum": 0 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEntitiesRequest" } } }, "required": true }, "responses": { "200": { "description": "A list of entities that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEntitiesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/query/count": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "count_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/CountEntitiesParams" } } }, "required": true }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "integer", "minimum": 0 } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/query/subgraph": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "get_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" } }, { "name": "after", "in": "query", "description": "The cursor to start reading from", "required": false, "schema": { "type": "string", "nullable": true } }, { "name": "limit", "in": "query", "description": "The maximum number of entities to read", "required": false, "schema": { "type": "integer", "nullable": true, "minimum": 0 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEntitySubgraphRequest" } } }, "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/GetEntitySubgraphResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/entities/relationships": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "modify_entity_authorization_relationships", "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/ModifyEntityAuthorizationRelationship" } } } }, "required": true }, "responses": { "204": { "description": "The relationship was modified for the entity" }, "403": { "description": "Permission denied" } } } }, "/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" } } } }, "/entities/{entity_id}/administrators/{subject_id}": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "add_entity_administrator", "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": "entity_id", "in": "path", "description": "The Entity to add the administrator to", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } }, { "name": "subject_id", "in": "path", "description": "The administrator to add to the entity", "required": true, "schema": { "$ref": "#/components/schemas/EntityUuid" } } ], "responses": { "204": { "description": "The administrator was added to the entity" }, "403": { "description": "Permission denied" } } }, "delete": { "tags": [ "Graph", "Entity" ], "operationId": "remove_entity_administrator", "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": "entity_id", "in": "path", "description": "The Entity to remove the administrator from", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } }, { "name": "subject_id", "in": "path", "description": "The administrator to remove from the entity", "required": true, "schema": { "$ref": "#/components/schemas/EntityUuid" } } ], "responses": { "204": { "description": "The administrator was removed from the entity" }, "403": { "description": "Permission denied" } } } }, "/entities/{entity_id}/editors/{subject_id}": { "post": { "tags": [ "Graph", "Entity" ], "operationId": "add_entity_editor", "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": "entity_id", "in": "path", "description": "The Entity to add the editor to", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } }, { "name": "subject_id", "in": "path", "description": "The editor to add to the entity", "required": true, "schema": { "$ref": "#/components/schemas/EntityUuid" } } ], "responses": { "204": { "description": "The editor was added to the entity" }, "403": { "description": "Permission denied" } } }, "delete": { "tags": [ "Graph", "Entity" ], "operationId": "remove_entity_editor", "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": "entity_id", "in": "path", "description": "The Entity to remove the editor from", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } }, { "name": "subject_id", "in": "path", "description": "The editor to remove from the entity", "required": true, "schema": { "$ref": "#/components/schemas/EntityUuid" } } ], "responses": { "204": { "description": "The editor was removed from the entity" }, "403": { "description": "Permission denied" } } } }, "/entities/{entity_id}/relationships": { "get": { "tags": [ "Graph", "Entity" ], "operationId": "get_entity_authorization_relationships", "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": "entity_id", "in": "path", "description": "The Entity to read the relations for", "required": true, "schema": { "$ref": "#/components/schemas/EntityId" } } ], "responses": { "200": { "description": "The relations of the entity", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EntityRelationAndSubject" } } } } }, "403": { "description": "Permission denied" } } } }, "/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": "get_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/GetEntityTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of entity types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEntityTypesResponse" } } } }, "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": "get_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/GetEntityTypeSubgraphParams" } } }, "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/GetEntityTypeSubgraphResponse" } } } }, "422": { "description": "Provided query 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" } } } }, "/entity-types/{entity_type_id}/relationships": { "get": { "tags": [ "Graph", "EntityType" ], "operationId": "get_entity_type_authorization_relationships", "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": "entity_type_id", "in": "path", "description": "The Entity type to read the relations for", "required": true, "schema": { "$ref": "#/components/schemas/VersionedUrl" } } ], "responses": { "200": { "description": "The relations of the entity type", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeRelationAndSubject" } } } } }, "403": { "description": "Permission denied" } } } }, "/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": "get_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/GetPropertyTypesParams" } } }, "required": true }, "responses": { "200": { "description": "Gets a a list of property types that satisfy the given query.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPropertyTypesResponse" } } } }, "422": { "description": "Provided query is invalid" }, "500": { "description": "Store error occurred" } } } }, "/property-types/query/subgraph": { "post": { "tags": [ "Graph", "PropertyType" ], "operationId": "get_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/GetPropertyTypeSubgraphParams" } } }, "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/GetPropertyTypeSubgraphResponse" } } } }, "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" } } } }, "/property-types/{property_type_id}/relationships": { "get": { "tags": [ "Graph", "PropertyType" ], "operationId": "get_property_type_authorization_relationships", "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": "property_type_id", "in": "path", "description": "The Property type to read the relations for", "required": true, "schema": { "$ref": "#/components/schemas/VersionedUrl" } } ], "responses": { "200": { "description": "The relations of the property type", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeRelationAndSubject" } } } } }, "403": { "description": "Permission denied" } } } } }, "components": { "schemas": { "AccountGroupAdministratorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "AccountGroupMemberSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "AccountGroupPermission": { "type": "string", "enum": [ "add_member", "remove_member" ] }, "AccountGroupRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "administrator" ] }, "subject": { "$ref": "#/components/schemas/AccountGroupAdministratorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "member" ] }, "subject": { "$ref": "#/components/schemas/AccountGroupMemberSubject" } } } ], "discriminator": { "propertyName": "relation" } }, "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", "format": "uri" }, "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" } }, "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 }, "CountEntitiesParams": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "filter": { "$ref": "#/components/schemas/Filter" }, "includeDrafts": { "type": "boolean" }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "CreateAiActorParams": { "type": "object", "required": [ "identifier" ], "properties": { "identifier": { "type": "string" } }, "additionalProperties": false }, "CreateDataTypeRequest": { "type": "object", "required": [ "schema", "webId", "relationships", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeRelationAndSubject" } }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/DataType" }, { "type": "array", "items": { "$ref": "#/components/schemas/DataType" } } ] }, "webId": { "$ref": "#/components/schemas/WebId" } }, "additionalProperties": false }, "CreateEntityRequest": { "type": "object", "required": [ "webId", "entityTypeIds", "properties", "draft", "relationships", "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" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/EntityRelationAndSubject" } }, "webId": { "$ref": "#/components/schemas/WebId" } }, "additionalProperties": false }, "CreateEntityTypeRequest": { "type": "object", "required": [ "schema", "webId", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeRelationAndSubject" } }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/EntityType" }, { "type": "array", "items": { "$ref": "#/components/schemas/EntityType" } } ] }, "webId": { "$ref": "#/components/schemas/WebId" } }, "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", "webId", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeRelationAndSubject" } }, "schema": { "oneOf": [ { "$ref": "#/components/schemas/PropertyType" }, { "type": "array", "items": { "$ref": "#/components/schemas/PropertyType" } } ] }, "webId": { "$ref": "#/components/schemas/WebId" } }, "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" } } }, "DataTypeEditorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "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" } } } ] }, "DataTypeOwnerSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "web" ] }, "subjectId": { "$ref": "#/components/schemas/WebId" } } } ], "discriminator": { "propertyName": "kind" } }, "DataTypePermission": { "type": "string", "enum": [ "update", "view" ] }, "DataTypeQueryToken": { "type": "string", "description": "A single token in a [`DataTypeQueryPath`].", "enum": [ "baseUrl", "version", "versionedUrl", "webId", "title", "description", "type", "inheritsFrom", "children", "editionProvenance", "embedding" ] }, "DataTypeRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "owner" ] }, "subject": { "$ref": "#/components/schemas/DataTypeOwnerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "setting" ] }, "subject": { "$ref": "#/components/schemas/DataTypeSettingSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "editor" ] }, "subject": { "$ref": "#/components/schemas/DataTypeEditorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "viewer" ] }, "subject": { "$ref": "#/components/schemas/DataTypeViewerSubject" } } } ], "discriminator": { "propertyName": "relation" } }, "DataTypeSetting": { "type": "string", "enum": [ "updateFromWeb" ] }, "DataTypeSettingSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "setting" ] }, "subjectId": { "$ref": "#/components/schemas/DataTypeSetting" } } } ], "discriminator": { "propertyName": "kind" } }, "DataTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "DataTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "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 }, "EdgeResolveDepths": { "type": "object", "required": [ "incoming", "outgoing" ], "properties": { "incoming": { "type": "integer", "format": "int32", "minimum": 0 }, "outgoing": { "type": "integer", "format": "int32", "minimum": 0 } }, "additionalProperties": false }, "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" } } }, "EntityAdministratorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "subjectSet", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" }, "subjectSet": { "$ref": "#/components/schemas/EntitySubjectSet" } } } ], "discriminator": { "propertyName": "kind" } }, "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" } } } ] }, "EntityEditorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "subjectSet", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" }, "subjectSet": { "$ref": "#/components/schemas/EntitySubjectSet" } } } ], "discriminator": { "propertyName": "kind" } }, "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" }, "recordId": { "$ref": "#/components/schemas/EntityRecordId" }, "temporalVersioning": { "$ref": "#/components/schemas/EntityTemporalMetadata" } }, "additionalProperties": false }, "EntityOwnerSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "web" ] }, "subjectId": { "$ref": "#/components/schemas/WebId" } } } ], "discriminator": { "propertyName": "kind" } }, "EntityPermission": { "type": "string", "enum": [ "full_access", "update", "view" ] }, "EntityProvenance": { "allOf": [ { "$ref": "#/components/schemas/InferredEntityProvenance" }, { "type": "object", "required": [ "edition" ], "properties": { "edition": { "$ref": "#/components/schemas/EntityEditionProvenance" } } } ] }, "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", "properties", "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", "provenance", "editionProvenance", "embedding", "incomingLinks", "outgoingLinks", "leftEntity", "rightEntity" ] }, "EntityRecordId": { "type": "object", "required": [ "entityId", "editionId" ], "properties": { "editionId": { "$ref": "#/components/schemas/EntityEditionId" }, "entityId": { "$ref": "#/components/schemas/EntityId" } } }, "EntityRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "setting" ] }, "subject": { "$ref": "#/components/schemas/EntitySettingSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "owner" ] }, "subject": { "$ref": "#/components/schemas/EntityOwnerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "administrator" ] }, "subject": { "$ref": "#/components/schemas/EntityAdministratorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "editor" ] }, "subject": { "$ref": "#/components/schemas/EntityEditorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "viewer" ] }, "subject": { "$ref": "#/components/schemas/EntityViewerSubject" } } } ], "discriminator": { "propertyName": "relation" } }, "EntitySetting": { "type": "string", "enum": [ "administratorFromWeb", "updateFromWeb", "viewFromWeb" ] }, "EntitySettingSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "setting" ] }, "subjectId": { "$ref": "#/components/schemas/EntitySetting" } } } ], "discriminator": { "propertyName": "kind" } }, "EntitySubjectSet": { "type": "string", "enum": [ "administrator", "member" ] }, "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 }, "EntityType": { "$ref": "./models/entity_type.json" }, "EntityTypeEditorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "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" } }, "EntityTypeInstantiatorSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "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" } } } ] }, "EntityTypeOwnerSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "web" ] }, "subjectId": { "$ref": "#/components/schemas/WebId" } } } ], "discriminator": { "propertyName": "kind" } }, "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" ] }, "EntityTypeRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "owner" ] }, "subject": { "$ref": "#/components/schemas/EntityTypeOwnerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "setting" ] }, "subject": { "$ref": "#/components/schemas/EntityTypeSettingSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "editor" ] }, "subject": { "$ref": "#/components/schemas/EntityTypeEditorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "viewer" ] }, "subject": { "$ref": "#/components/schemas/EntityTypeViewerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "instantiator" ] }, "subject": { "$ref": "#/components/schemas/EntityTypeInstantiatorSubject" } } } ], "discriminator": { "propertyName": "relation" } }, "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" } } } }, "EntityTypeSetting": { "type": "string", "enum": [ "updateFromWeb" ] }, "EntityTypeSettingSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "setting" ] }, "subjectId": { "$ref": "#/components/schemas/EntityTypeSetting" } } } ], "discriminator": { "propertyName": "kind" } }, "EntityTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "EntityTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "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" } } }, "EntityViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "subjectSet", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" }, "subjectSet": { "$ref": "#/components/schemas/EntitySubjectSet" } } } ], "discriminator": { "propertyName": "kind" } }, "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": "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": "CosineDistanceFilter", "required": [ "cosineDistance" ], "properties": { "cosineDistance": { "type": "array", "items": { "$ref": "#/components/schemas/FilterExpression" }, "maxItems": 3, "minItems": 3 } } }, { "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": [ { "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" } ] } } } }, { "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": {} } } ] }, "GetClosedMultiEntityTypesParams": { "type": "object", "required": [ "entityTypeIds", "temporalAxes" ], "properties": { "entityTypeIds": { "type": "array", "items": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "includeResolved": { "allOf": [ { "$ref": "#/components/schemas/IncludeResolvedEntityTypeOption" } ], "nullable": true }, "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" } } } }, "GetDataTypeConversionTargetsParams": { "type": "object", "required": [ "dataTypeIds" ], "properties": { "dataTypeIds": { "type": "array", "items": { "$ref": "#/components/schemas/VersionedUrl" } } }, "additionalProperties": false }, "GetDataTypeConversionTargetsResponse": { "type": "object", "required": [ "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/DataTypeConversionTargets" } } } } }, "GetDataTypeSubgraphParams": { "type": "object", "required": [ "filter", "graphResolveDepths", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetDataTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "subgraph": { "$ref": "#/components/schemas/Subgraph" } } }, "GetDataTypesParams": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetDataTypesResponse": { "type": "object", "required": [ "dataTypes" ], "properties": { "count": { "type": "integer", "nullable": true, "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "dataTypes": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeWithMetadata" } } } }, "GetEntitiesRequest": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "conversions": { "type": "array", "items": { "$ref": "#/components/schemas/QueryConversion" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeCreatedByIds": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ], "nullable": true }, "includeTypeIds": { "type": "boolean" }, "includeTypeTitles": { "type": "boolean" }, "includeWebIds": { "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 }, "GetEntitiesResponse": { "type": "object", "required": [ "entities" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "count": { "type": "integer", "nullable": true, "minimum": 0 }, "createdByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "entities": { "type": "array", "items": { "$ref": "#/components/schemas/Entity" } }, "typeIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "typeTitles": { "type": "object", "additionalProperties": { "type": "string" } }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "GetEntitySubgraphRequest": { "type": "object", "required": [ "filter", "graphResolveDepths", "temporalAxes", "includeDrafts" ], "properties": { "conversions": { "type": "array", "items": { "$ref": "#/components/schemas/QueryConversion" } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "includeCount": { "type": "boolean" }, "includeCreatedByIds": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ], "nullable": true }, "includeTypeIds": { "type": "boolean" }, "includeTypeTitles": { "type": "boolean" }, "includeWebIds": { "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 }, "GetEntitySubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "closedMultiEntityTypes": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ClosedMultiEntityTypeMap" } }, "count": { "type": "integer", "nullable": true, "minimum": 0 }, "createdByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/EntityQueryCursor" } ], "nullable": true }, "definitions": { "allOf": [ { "$ref": "#/components/schemas/EntityTypeResolveDefinitions" } ] }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "subgraph": { "$ref": "#/components/schemas/Subgraph" }, "typeIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "typeTitles": { "type": "object", "additionalProperties": { "type": "string" } }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "GetEntityTypeSubgraphParams": { "type": "object", "required": [ "filter", "graphResolveDepths", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeWebIds": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetEntityTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "count": { "type": "integer", "nullable": true, "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "editionCreatedByIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } }, "subgraph": { "$ref": "#/components/schemas/Subgraph" }, "webIds": { "type": "object", "additionalProperties": { "type": "integer", "minimum": 0 } } } }, "GetEntityTypesParams": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "includeEditionCreatedByIds": { "type": "boolean" }, "includeEntityTypes": { "allOf": [ { "$ref": "#/components/schemas/IncludeEntityTypeOption" } ], "nullable": true }, "includeWebIds": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetEntityTypesResponse": { "type": "object", "required": [ "entityTypes" ], "properties": { "closedEntityTypes": { "type": "array", "items": { "$ref": "#/components/schemas/ClosedEntityType" } }, "count": { "type": "integer", "nullable": true, "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "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 } } } }, "GetPropertyTypeSubgraphParams": { "type": "object", "required": [ "filter", "graphResolveDepths", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "graphResolveDepths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetPropertyTypeSubgraphResponse": { "type": "object", "required": [ "subgraph" ], "properties": { "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "subgraph": { "$ref": "#/components/schemas/Subgraph" } } }, "GetPropertyTypesParams": { "type": "object", "required": [ "filter", "temporalAxes", "includeDrafts" ], "properties": { "after": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "filter": { "$ref": "#/components/schemas/Filter" }, "includeCount": { "type": "boolean" }, "includeDrafts": { "type": "boolean" }, "limit": { "type": "integer", "nullable": true, "minimum": 0 }, "temporalAxes": { "$ref": "#/components/schemas/QueryTemporalAxesUnresolved" } }, "additionalProperties": false }, "GetPropertyTypesResponse": { "type": "object", "required": [ "propertyTypes" ], "properties": { "count": { "type": "integer", "nullable": true, "minimum": 0 }, "cursor": { "allOf": [ { "$ref": "#/components/schemas/VersionedUrl" } ], "nullable": true }, "propertyTypes": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeWithMetadata" } } } }, "GraphElementVertexId": { "oneOf": [ { "$ref": "#/components/schemas/DataTypeVertexId" }, { "$ref": "#/components/schemas/PropertyTypeVertexId" }, { "$ref": "#/components/schemas/EntityTypeVertexId" }, { "$ref": "#/components/schemas/EntityVertexId" } ] }, "GraphResolveDepths": { "type": "object", "required": [ "inheritsFrom", "constrainsValuesOn", "constrainsPropertiesOn", "constrainsLinksOn", "constrainsLinkDestinationsOn", "isOfType", "hasLeftEntity", "hasRightEntity" ], "properties": { "constrainsLinkDestinationsOn": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" }, "constrainsLinksOn": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" }, "constrainsPropertiesOn": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" }, "constrainsValuesOn": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" }, "hasLeftEntity": { "$ref": "#/components/schemas/EdgeResolveDepths" }, "hasRightEntity": { "$ref": "#/components/schemas/EdgeResolveDepths" }, "inheritsFrom": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" }, "isOfType": { "$ref": "#/components/schemas/OutgoingEdgeResolveDepth" } }, "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 }, "IncludeEntityTypeOption": { "type": "string", "enum": [ "closed", "resolved", "resolvedWithDataTypeChildren" ] }, "IncludeResolvedEntityTypeOption": { "type": "string", "enum": [ "resolved", "resolvedWithDataTypeChildren" ] }, "InferredEntityProvenance": { "type": "object", "required": [ "createdById", "createdAtTransactionTime", "createdAtDecisionTime" ], "properties": { "createdAtDecisionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdAtTransactionTime": { "$ref": "#/components/schemas/Timestamp" }, "createdById": { "$ref": "#/components/schemas/ActorEntityUuid" }, "firstNonDraftCreatedAtDecisionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] }, "firstNonDraftCreatedAtTransactionTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" } ] } }, "additionalProperties": false }, "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", "relationships", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeRelationAndSubject" } }, "schema": { "$ref": "#/components/schemas/DataType" } } } ] }, "LoadExternalEntityTypeRequest": { "oneOf": [ { "type": "object", "required": [ "entityTypeId" ], "properties": { "entityTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, { "type": "object", "required": [ "schema", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeRelationAndSubject" } }, "schema": { "$ref": "#/components/schemas/EntityType" } } } ] }, "LoadExternalPropertyTypeRequest": { "oneOf": [ { "type": "object", "required": [ "propertyTypeId" ], "properties": { "propertyTypeId": { "$ref": "#/components/schemas/VersionedUrl" } } }, { "type": "object", "required": [ "schema", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeRelationAndSubject" } }, "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" } } }, "ModifyEntityAuthorizationRelationship": { "type": "object", "required": [ "operation", "resource", "relationSubject" ], "properties": { "operation": { "$ref": "#/components/schemas/ModifyRelationshipOperation" }, "relationSubject": { "$ref": "#/components/schemas/EntityRelationAndSubject" }, "resource": { "$ref": "#/components/schemas/EntityId" } } }, "ModifyRelationshipOperation": { "type": "string", "description": "Used for mutating a single relationship within the service.", "enum": [ "touch", "create", "delete" ] }, "ModifyWebAuthorizationRelationship": { "type": "object", "required": [ "operation", "resource", "relationAndSubject" ], "properties": { "operation": { "$ref": "#/components/schemas/ModifyRelationshipOperation" }, "relationAndSubject": { "$ref": "#/components/schemas/WebRelationAndSubject" }, "resource": { "$ref": "#/components/schemas/WebId" } } }, "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::new(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", "description": "A strongly-typed wrapper for ontology type version numbers.\n\n[`OntologyTypeVersion`] represents the version number component of a [`VersionedUrl`].\nIt ensures that version numbers are always valid unsigned integers and provides\ntype safety throughout the system.\n\n# Examples\n\n```\nuse type_system::ontology::id::OntologyTypeVersion;\n\nlet version = OntologyTypeVersion::new(1);\nassert_eq!(version.inner(), 1);\n```" }, "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." } } } ] }, "OutgoingEdgeResolveDepth": { "type": "object", "required": [ "outgoing" ], "properties": { "outgoing": { "type": "integer", "format": "int32", "minimum": 0 } }, "additionalProperties": false }, "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 }, "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" }, "PropertyTypeEditorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "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" } } } ] }, "PropertyTypeOwnerSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "web" ] }, "subjectId": { "$ref": "#/components/schemas/WebId" } } } ], "discriminator": { "propertyName": "kind" } }, "PropertyTypePermission": { "type": "string", "enum": [ "update", "view" ] }, "PropertyTypeQueryToken": { "type": "string", "description": "A single token in a [`DataTypeQueryPath`].", "enum": [ "baseUrl", "version", "versionedUrl", "webId", "title", "description", "editionProvenance", "dataTypes", "propertyTypes", "embedding" ] }, "PropertyTypeRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "owner" ] }, "subject": { "$ref": "#/components/schemas/PropertyTypeOwnerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "setting" ] }, "subject": { "$ref": "#/components/schemas/PropertyTypeSettingSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "editor" ] }, "subject": { "$ref": "#/components/schemas/PropertyTypeEditorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "viewer" ] }, "subject": { "$ref": "#/components/schemas/PropertyTypeViewerSubject" } } } ], "discriminator": { "propertyName": "relation" } }, "PropertyTypeSetting": { "type": "string", "enum": [ "updateFromWeb" ] }, "PropertyTypeSettingSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "setting" ] }, "subjectId": { "$ref": "#/components/schemas/PropertyTypeSetting" } } } ], "discriminator": { "propertyName": "kind" } }, "PropertyTypeVertexId": { "type": "object", "required": [ "baseId", "revisionId" ], "properties": { "baseId": { "$ref": "#/components/schemas/BaseUrl" }, "revisionId": { "$ref": "#/components/schemas/OntologyTypeVersion" } } }, "PropertyTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "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 }, "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" ] }, "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" ] }, "Status": { "$ref": "./models/status.json" }, "Subgraph": { "type": "object", "required": [ "roots", "vertices", "edges", "depths", "temporalAxes" ], "properties": { "depths": { "$ref": "#/components/schemas/GraphResolveDepths" }, "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" } } }, "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" ] }, "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", "relationships", "provenance", "conversions" ], "properties": { "conversions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Conversions" } }, "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/DataTypeRelationAndSubject" } }, "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", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/EntityTypeRelationAndSubject" } }, "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", "relationships", "provenance" ], "properties": { "provenance": { "$ref": "#/components/schemas/ProvidedOntologyEditionProvenance" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/PropertyTypeRelationAndSubject" } }, "schema": { "$ref": "#/components/schemas/UpdatePropertyType" }, "typeToUpdate": { "$ref": "#/components/schemas/VersionedUrl" } }, "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", "format": "uri" }, "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" } ] } } }, "WebDataTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "WebEntityCreatorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "WebEntityEditorSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "WebEntityTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "WebEntityViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "WebId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" }, "WebOwnerSubject": { "oneOf": [ { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "account" ] }, "subjectId": { "$ref": "#/components/schemas/ActorEntityUuid" } } }, { "type": "object", "required": [ "subjectId", "kind" ], "properties": { "kind": { "type": "string", "enum": [ "accountGroup" ] }, "subjectId": { "$ref": "#/components/schemas/ActorGroupEntityUuid" } } } ], "discriminator": { "propertyName": "kind" } }, "WebPermission": { "type": "string", "enum": [ "change_permission", "create_entity", "update_entity", "view_entity", "create_entity_type", "create_property_type", "create_data_type" ] }, "WebPropertyTypeViewerSubject": { "oneOf": [ { "type": "object", "required": [ "kind" ], "properties": { "kind": { "type": "string", "enum": [ "public" ] } } } ] }, "WebRelationAndSubject": { "oneOf": [ { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "owner" ] }, "subject": { "$ref": "#/components/schemas/WebOwnerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "entityCreator" ] }, "subject": { "$ref": "#/components/schemas/WebEntityCreatorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "entityEditor" ] }, "subject": { "$ref": "#/components/schemas/WebEntityEditorSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "entityViewer" ] }, "subject": { "$ref": "#/components/schemas/WebEntityViewerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "entityTypeViewer" ] }, "subject": { "$ref": "#/components/schemas/WebEntityTypeViewerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "propertyTypeViewer" ] }, "subject": { "$ref": "#/components/schemas/WebPropertyTypeViewerSubject" } } }, { "type": "object", "required": [ "subject", "relation" ], "properties": { "relation": { "type": "string", "enum": [ "dataTypeViewer" ] }, "subject": { "$ref": "#/components/schemas/WebDataTypeViewerSubject" } } } ], "discriminator": { "propertyName": "relation" } } } }, "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": "ActorGroup", "description": "ActorGroup management API" }, { "name": "Permission", "description": "Permission management API" }, { "name": "Principal", "description": "Principal management API" } ] }