blob: 61aab484ab49f9adbd138b0219cfe2dfc5af6f19 [file] [log] [blame]
{
"openapi": "3.0.1",
"info": {
"title": "BaSyx Asset Administration Shell HTTP REST-API",
"description": "The full description of the generic BaSyx Asset Administration Shell HTTP REST-API",
"contact": {
"name": "Constantin Ziesche",
"url": "https://www.bosch.com/de/",
"email": "constantin.ziesche@bosch.com"
},
"license": {
"name": "EPL-2.0",
"url": "https://www.eclipse.org/legal/epl-2.0/"
},
"version": "v1"
},
"paths": {
"/aas": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the Asset Administration Shell Descriptor",
"operationId": "GetAssetAdministrationShell",
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AssetAdministrationShellDescriptor"
}
}
}
}
}
}
},
"/aas/submodels": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves all Submodels from the Asset Administration Shell",
"operationId": "GetSubmodelsFromShell",
"responses": {
"200": {
"description": "Returns a list of found Submodels",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Submodel"
}
}
}
}
},
"404": {
"description": "No Submodel Service Providers found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
}
},
"/aas/submodels/{submodelIdShort}": {
"put": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Creates or updates a Submodel to an existing Asset Administration Shell",
"operationId": "PutSubmodelToShell",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"requestBody": {
"description": "The serialized Submodel object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Submodel"
}
}
}
},
"responses": {
"201": {
"description": "Submodel created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Submodel"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
},
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the Submodel from the Asset Administration Shell",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Submodel retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Submodel"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"404": {
"description": "No Submodel Service Provider found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
},
"delete": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Deletes a specific Submodel from the Asset Administration Shell",
"operationId": "DeleteSubmodelFromShellByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"responses": {
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"204": {
"description": "Submodel deleted successfully"
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the Submodel from the Asset Administration Shell",
"operationId": "GetSubmodelFromShellByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Submodel retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Submodel"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"404": {
"description": "No Submodel Service Provider found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/values": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the minimized version of a Submodel, i.e. only the values of SubmodelElements are serialized and returned",
"operationId": "Shell_GetSubmodelValues",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"responses": {
"404": {
"description": "Submodel not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"200": {
"description": "Success"
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/submodelElements": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves all Submodel-Elements from the Submodel",
"operationId": "Shell_GetSubmodelElements",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Returns a list of found Submodel-Elements",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SubmodelElement"
}
}
}
}
},
"404": {
"description": "Submodel not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/submodelElements/{seIdShortPath}": {
"put": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Creates or updates a Submodel-Element at the Submodel",
"operationId": "Shell_PutSubmodelElement",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
},
{
"name": "seIdShortPath",
"in": "path",
"description": "The Submodel-Element's IdShort-Path",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel-Element's IdShort-Path",
"nullable": true
}
}
],
"requestBody": {
"description": "The Submodel-Element object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ISubmodelElement"
}
}
}
},
"responses": {
"201": {
"description": "Submodel-Element created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubmodelElement"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"404": {
"description": "Submodel not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
},
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves a specific Submodel-Element from the Submodel",
"operationId": "Shell_GetSubmodelElementByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
},
{
"name": "seIdShortPath",
"in": "path",
"description": "The Submodel-Element's IdShort-Path",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel-Element's IdShort-Path",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Returns the requested Submodel-Element",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubmodelElement"
}
}
}
},
"404": {
"description": "Submodel / Submodel-Element not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
},
"delete": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Deletes a specific Submodel-Element from the Submodel",
"operationId": "Shell_DeleteSubmodelElementByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
},
{
"name": "seIdShortPath",
"in": "path",
"description": "The Submodel-Element's IdShort-Path",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel-Element's IdShort-Path",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"204": {
"description": "Submodel-Element deleted successfully"
},
"404": {
"description": "Submodel / Submodel-Element not found"
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/submodelElements/{seIdShortPath}/value": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the value of a specific Submodel-Element from the Submodel",
"operationId": "Shell_GetSubmodelElementValueByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
},
{
"name": "seIdShortPath",
"in": "path",
"description": "The Submodel-Element's IdShort-Path",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel-Element's IdShort-Path",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Returns the value of a specific Submodel-Element",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Submodel / Submodel-Element not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"405": {
"description": "Method not allowed",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
},
"put": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Updates the Submodel-Element's value",
"operationId": "Shell_PutSubmodelElementValueByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "The Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel's short id",
"nullable": true
}
},
{
"name": "seIdShortPath",
"in": "path",
"description": "The Submodel-Element's IdShort-Path",
"required": true,
"schema": {
"type": "string",
"description": "The Submodel-Element's IdShort-Path",
"nullable": true
}
}
],
"requestBody": {
"description": "The new value",
"content": {
"application/json": {
"schema": {
"type": "object",
"description": "The new value",
"nullable": true
}
}
}
},
"responses": {
"200": {
"description": "Submodel-Element's value changed successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ElementValue"
}
}
}
},
"404": {
"description": "Submodel / Submodel-Element not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"405": {
"description": "Method not allowed"
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/submodelElements/{idShortPathToOperation}/invoke": {
"post": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Invokes a specific operation from the Submodel synchronously or asynchronously",
"operationId": "Shell_InvokeOperationByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "Submodel's short id",
"nullable": true
}
},
{
"name": "idShortPathToOperation",
"in": "path",
"description": "The IdShort path to the Operation",
"required": true,
"schema": {
"type": "string",
"description": "The IdShort path to the Operation",
"nullable": true
}
},
{
"name": "async",
"in": "query",
"description": "Determines whether the execution of the operation is asynchronous (true) or not (false)",
"schema": {
"type": "boolean",
"description": "Determines whether the execution of the operation is asynchronous (true) or not (false)"
}
}
],
"requestBody": {
"description": "The parameterized request object for the invocation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InvocationRequest"
}
}
}
},
"responses": {
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"404": {
"description": "Submodel / Method handler not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"200": {
"description": "Operation invoked successfully"
}
}
}
},
"/aas/submodels/{submodelIdShort}/submodel/submodelElements/{idShortPathToOperation}/invocationList/{requestId}": {
"get": {
"tags": [
"AssetAdministrationShell"
],
"summary": "Retrieves the result of an asynchronously started operation",
"operationId": "Shell_GetInvocationResultByIdShort",
"parameters": [
{
"name": "submodelIdShort",
"in": "path",
"description": "Submodel's short id",
"required": true,
"schema": {
"type": "string",
"description": "Submodel's short id",
"nullable": true
}
},
{
"name": "idShortPathToOperation",
"in": "path",
"description": "The IdShort path to the Operation",
"required": true,
"schema": {
"type": "string",
"description": "The IdShort path to the Operation",
"nullable": true
}
},
{
"name": "requestId",
"in": "path",
"description": "The request id",
"required": true,
"schema": {
"type": "string",
"description": "The request id",
"nullable": true
}
}
],
"responses": {
"200": {
"description": "Result found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InvocationResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
},
"404": {
"description": "Submodel / Operation / Request not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Result"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"KeyType": {
"enum": [
"Undefined",
"Custom",
"IRI",
"URI",
"IRDI",
"IdShort",
"FragmentId"
],
"type": "string"
},
"Identifier": {
"required": [
"id",
"idType"
],
"type": "object",
"properties": {
"id": {
"type": "string"
},
"idType": {
"$ref": "#/components/schemas/KeyType"
}
}
},
"AdministrativeInformation": {
"type": "object",
"properties": {
"version": {
"type": "string",
"nullable": true
},
"revision": {
"type": "string",
"nullable": true
}
}
},
"LangString": {
"type": "object",
"properties": {
"language": {
"type": "string",
"nullable": true
},
"text": {
"type": "string",
"nullable": true
}
}
},
"IEndpointSecurity": {
"type": "object"
},
"IEndpoint": {
"type": "object",
"properties": {
"address": {
"type": "string",
"nullable": true,
"readOnly": true
},
"type": {
"type": "string",
"nullable": true,
"readOnly": true
},
"security": {
"$ref": "#/components/schemas/IEndpointSecurity"
}
}
},
"ModelType": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true,
"readOnly": true
}
}
},
"AssetKind": {
"enum": [
"Type",
"Instance"
],
"type": "string"
},
"KeyElements": {
"enum": [
"Undefined",
"GlobalReference",
"FragmentReference",
"AccessPermissionRule",
"AnnotatedRelationshipElement",
"BasicEvent",
"Blob",
"Capability",
"ConceptDictionary",
"DataElement",
"File",
"Entity",
"Event",
"MultiLanguageProperty",
"Operation",
"Property",
"Range",
"ReferenceElement",
"RelationshipElement",
"SubmodelElement",
"SubmodelElementCollection",
"View",
"Asset",
"AssetAdministrationShell",
"ConceptDescription",
"Submodel"
],
"type": "string"
},
"Key": {
"required": [
"idType",
"local",
"type",
"value"
],
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/KeyElements"
},
"idType": {
"$ref": "#/components/schemas/KeyType"
},
"value": {
"type": "string"
},
"local": {
"type": "boolean"
}
}
},
"SubmodelReference": {
"type": "object",
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Key"
},
"nullable": true
}
}
},
"Reference": {
"type": "object",
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Key"
},
"nullable": true
}
}
},
"IDataSpecificationContent": {
"type": "object"
},
"IEmbeddedDataSpecification": {
"type": "object",
"properties": {
"hasDataSpecification": {
"$ref": "#/components/schemas/Reference"
},
"dataSpecificationContent": {
"$ref": "#/components/schemas/IDataSpecificationContent"
}
}
},
"Asset": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"kind": {
"$ref": "#/components/schemas/AssetKind"
},
"assetIdentificationModel": {
"$ref": "#/components/schemas/SubmodelReference"
},
"billOfMaterial": {
"$ref": "#/components/schemas/SubmodelReference"
},
"embeddedDataSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEmbeddedDataSpecification"
},
"nullable": true,
"readOnly": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"identification": {
"$ref": "#/components/schemas/Identifier"
},
"administration": {
"$ref": "#/components/schemas/AdministrativeInformation"
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
}
}
},
"SubmodelDescriptor": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"identification": {
"$ref": "#/components/schemas/Identifier"
},
"administration": {
"$ref": "#/components/schemas/AdministrativeInformation"
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
},
"semanticId": {
"$ref": "#/components/schemas/Reference"
},
"endpoints": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEndpoint"
},
"nullable": true
},
"category": {
"type": "string",
"nullable": true,
"readOnly": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
}
}
},
"AssetAdministrationShellDescriptor": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"identification": {
"$ref": "#/components/schemas/Identifier"
},
"administration": {
"$ref": "#/components/schemas/AdministrativeInformation"
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
},
"endpoints": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEndpoint"
},
"nullable": true
},
"category": {
"type": "string",
"nullable": true,
"readOnly": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"asset": {
"$ref": "#/components/schemas/Asset"
},
"submodels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SubmodelDescriptor"
},
"nullable": true
}
}
},
"ModelingKind": {
"enum": [
"Instance",
"Template"
],
"type": "string"
},
"IConstraint": {
"type": "object",
"properties": {
"modelType": {
"$ref": "#/components/schemas/ModelType"
}
}
},
"ISubmodelElement": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true,
"readOnly": true
},
"semanticId": {
"$ref": "#/components/schemas/Reference"
},
"constraints": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IConstraint"
},
"nullable": true,
"readOnly": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true,
"readOnly": true
},
"category": {
"type": "string",
"nullable": true,
"readOnly": true
},
"kind": {
"$ref": "#/components/schemas/ModelingKind"
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"embeddedDataSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEmbeddedDataSpecification"
},
"nullable": true,
"readOnly": true
}
}
},
"Submodel": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"kind": {
"$ref": "#/components/schemas/ModelingKind"
},
"semanticId": {
"$ref": "#/components/schemas/Reference"
},
"submodelElements": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ISubmodelElement"
},
"nullable": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"embeddedDataSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEmbeddedDataSpecification"
},
"nullable": true
},
"qualifiers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IConstraint"
},
"nullable": true
},
"identification": {
"$ref": "#/components/schemas/Identifier"
},
"administration": {
"$ref": "#/components/schemas/AdministrativeInformation"
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
}
}
},
"MessageType": {
"enum": [
"Unspecified",
"Debug",
"Information",
"Warning",
"Error",
"Fatal",
"Exception"
],
"type": "string"
},
"Message": {
"type": "object",
"properties": {
"messageType": {
"$ref": "#/components/schemas/MessageType"
},
"text": {
"type": "string",
"nullable": true
},
"code": {
"type": "string",
"nullable": true
}
}
},
"Result": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"isException": {
"type": "boolean",
"nullable": true,
"readOnly": true
},
"entity": {
"type": "object",
"nullable": true
},
"entityType": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Message"
},
"nullable": true
}
}
},
"SubmodelElement": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"semanticId": {
"$ref": "#/components/schemas/Reference"
},
"qualifiers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IConstraint"
},
"nullable": true
},
"kind": {
"$ref": "#/components/schemas/ModelingKind"
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"embeddedDataSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEmbeddedDataSpecification"
},
"nullable": true
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
}
}
},
"ElementValue": {
"type": "object",
"properties": {
"value": {
"type": "object",
"nullable": true
}
}
},
"OperationVariable": {
"type": "object",
"properties": {
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"value": {
"$ref": "#/components/schemas/ISubmodelElement"
}
}
},
"InvocationRequest": {
"type": "object",
"properties": {
"requestId": {
"type": "string",
"nullable": true
},
"inputArguments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OperationVariable"
},
"nullable": true
},
"inoutputArguments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OperationVariable"
},
"nullable": true
},
"timeout": {
"type": "integer",
"format": "int32",
"nullable": true
}
}
},
"OperationResult": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"isException": {
"type": "boolean",
"nullable": true,
"readOnly": true
},
"entity": {
"type": "object",
"nullable": true
},
"entityType": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Message"
},
"nullable": true
}
}
},
"ExecutionState": {
"enum": [
"Initiated",
"Running",
"Completed",
"Canceled",
"Failed",
"Timeout"
],
"type": "string"
},
"InvocationResponse": {
"type": "object",
"properties": {
"requestId": {
"type": "string",
"nullable": true
},
"inoutputArguments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OperationVariable"
},
"nullable": true
},
"outputArguments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OperationVariable"
},
"nullable": true
},
"operationResult": {
"$ref": "#/components/schemas/OperationResult"
},
"executionState": {
"$ref": "#/components/schemas/ExecutionState"
}
}
},
"AssetAdministrationShellReference": {
"type": "object",
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Key"
},
"nullable": true
}
}
},
"View": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"containedElements": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Reference"
},
"nullable": true
},
"semanticId": {
"$ref": "#/components/schemas/Reference"
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
}
}
},
"ConceptDescriptionReference": {
"type": "object",
"properties": {
"keys": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Key"
},
"nullable": true
}
}
},
"ConceptDictionary": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
},
"metaData": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"nullable": true
},
"conceptDescriptions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConceptDescriptionReference"
},
"nullable": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
}
}
},
"AssetAdministrationShell": {
"type": "object",
"properties": {
"idShort": {
"type": "string",
"nullable": true
},
"asset": {
"$ref": "#/components/schemas/Asset"
},
"submodels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Submodel"
},
"nullable": true
},
"derivedFrom": {
"$ref": "#/components/schemas/AssetAdministrationShellReference"
},
"views": {
"type": "array",
"items": {
"$ref": "#/components/schemas/View"
},
"nullable": true
},
"modelType": {
"$ref": "#/components/schemas/ModelType"
},
"embeddedDataSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IEmbeddedDataSpecification"
},
"nullable": true,
"readOnly": true
},
"conceptDictionaries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConceptDictionary"
},
"nullable": true
},
"identification": {
"$ref": "#/components/schemas/Identifier"
},
"administration": {
"$ref": "#/components/schemas/AdministrativeInformation"
},
"category": {
"type": "string",
"nullable": true
},
"description": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LangString"
},
"nullable": true
}
}
}
}
}
}