diff --git a/AasxFileServerServiceSpecification/V3.0_SSP-001.yaml b/AasxFileServerServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index a33fc703..00000000 --- a/AasxFileServerServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,259 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | AASX File Server Service Specification - description: >- - The File Server Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001 - termsOfService: https://github.com/admin-shell-io/aas-specs -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /packages: - get: - tags: - - AASX File Server API - summary: Returns a list of available AASX packages at the server - operationId: GetAllAASXPackageIds - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAASXPackageIds/3/0 - parameters: - - name: aasId - in: query - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested package list - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPackageDescriptionsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - AASX File Server API - summary: Stores the AASX package at the server - operationId: PostAASXPackage - x-semanticIds: - - https://admin-shell.io/aas/API/PostAASXPackage/3/0 - requestBody: - description: AASX package - content: - multipart/form-data: - schema: - type: object - properties: - aasIds: - type: array - items: - type: string - file: - type: string - format: binary - fileName: - type: string - encoding: - file: - contentType: application/asset-administration-shell-package - required: true - responses: - '201': - description: AASX package stored successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PackageDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /packages/{packageId}: - parameters: - - name: packageId - in: path - description: The package Id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: true - schema: - type: string - format: byte - get: - tags: - - AASX File Server API - summary: Returns a specific AASX package from the server - operationId: GetAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/GetAASXByPackageId/3/0 - responses: - '200': - description: Requested AASX package - headers: - X-FileName: - schema: - type: string - description: Filename of the package - content: - application/asset-administration-shell-package: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - AASX File Server API - summary: Updates the AASX package at the server - operationId: PutAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/PutAASXByPackageId/3/0 - requestBody: - description: AASX package - content: - multipart/form-data: - schema: - type: object - properties: - aasIds: - type: array - items: - type: string - file: - type: string - format: binary - fileName: - type: string - encoding: - file: - contentType: application/asset-administration-shell-package - required: true - responses: - '204': - description: AASX package updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - AASX File Server API - summary: Deletes a specific AASX package from the server - operationId: DeleteAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAASXByPackageId/3/0 - responses: - '204': - description: Deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-001.yaml b/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 4bbb4718..00000000 --- a/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,365 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Asset Administration Shell Registry Service Specification - description: >- - The Full Profile of the Asset Administration Shell Registry Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /shell-descriptors: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Asset Administration Shell Descriptors - operationId: GetAllAssetAdministrationShellDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptors/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetKind/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetType/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetKind' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetType' - responses: - '200': - description: Requested Asset Administration Shell Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Registry API - summary: Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS - operationId: PostAssetAdministrationShellDescriptor - x-semanticIds: - - https://admin-shell.io/aas/API/PostAssetAdministrationShellDescriptor/3/0 - requestBody: - description: Asset Administration Shell Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - required: true - responses: - '201': - description: Asset Administration Shell Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Asset Administration Shell Descriptor - operationId: GetAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '200': - description: Requested Asset Administration Shell Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Registry API - summary: Updates an existing Asset Administration Shell Descriptor - operationId: PutAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - requestBody: - description: Asset Administration Shell Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - required: true - responses: - '204': - description: Asset Administration Shell Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Registry API - summary: Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS - operationId: DeleteAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '204': - description: Asset Administration Shell Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptorsThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Registry API - summary: Creates a new Submodel Descriptor, i.e. registers a submodel - operationId: PostSubmodelDescriptor-ThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '201': - description: Submodel Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Registry API - summary: Updates an existing Submodel Descriptor - operationId: PutSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '204': - description: Submodel Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Registry API - summary: Deletes a Submodel Descriptor, i.e. de-registers a submodel - operationId: DeleteSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0 - responses: - '204': - description: Submodel Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-002.yaml b/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index b02f52ac..00000000 --- a/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,181 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Registry Service Specification - description: >- - The Read Profile of the Asset Administration Shell Registry Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /shell-descriptors: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Asset Administration Shell Descriptors - operationId: GetAllAssetAdministrationShellDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptors/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetKind/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetType/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetKind' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetType' - responses: - '200': - description: Requested Asset Administration Shell Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Asset Administration Shell Descriptor - operationId: GetAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '200': - description: Requested Asset Administration Shell Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptorsThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001.yaml b/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 862bd2f5..00000000 --- a/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,1845 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Asset Administration Shell Repository Service Specification - description: >- - The Full Profile of the Asset Administration Shell Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /shells: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all Asset Administration Shells - operationId: GetAllAssetAdministrationShells - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new Asset Administration Shell - operationId: PostAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/PostAssetAdministrationShell/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '201': - description: Asset Administration Shell created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/$reference: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns References to all Asset Administration Shells - operationId: GetAllAssetAdministrationShells-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells as a list of References - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing Asset Administration Shell - operationId: PutAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShellById/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '204': - description: Asset Administration Shell updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes an Asset Administration Shell - operationId: DeleteAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAssetAdministrationShellById/3/0 - responses: - '204': - description: Asset Administration Shell deleted successfully - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - description: Not Found - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - /shells/{aasIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShellById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Asset Information - operationId: GetAssetInformation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates the Asset Information - operationId: PutAssetInformation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetInformation/3/0 - requestBody: - description: Asset Information object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - required: true - responses: - '204': - description: Asset Information updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information/thumbnail: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - operationId: GetThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - operationId: PutThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutThumbnail/3/0 - requestBody: - description: Thumbnail to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Thumbnail updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - operationId: DeleteThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteThumbnail/3/0 - responses: - '200': - description: Thumbnail deletion successful - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodel-refs: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a submodel reference at the Asset Administration Shell - operationId: PostSubmodelReference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelReference/3/0 - requestBody: - description: Reference to the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - required: true - responses: - '201': - description: Submodel reference created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodel-refs/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes the submodel reference from the Asset Administration Shell. Does not delete the submodel itself! - operationId: DeleteSubmodelReferenceById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0 - responses: - '204': - description: Submodel reference deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel - operationId: GetSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates the Submodel - operationId: PutSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the Submodel - operationId: PatchSubmodel_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes the submodel from the Asset Administration Shell and the Repository. - operationId: DeleteSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodelById-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodelById-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates teh values of the Submodel - operationId: PatchSubmodelById-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object in the ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new submodel element - operationId: PostSubmodelElement_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElements-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the metadata attributes of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated metadata attributes of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the value of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified path - operationId: GetSubmodelElementByPath-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Operation status of an asynchronous invoked Operation - operationId: GetOperationAsyncStatus_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the ValueOnly notation of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-002.yaml b/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index efd04241..00000000 --- a/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,893 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Asset Administration Shell Repository Service Specification - description: >- - The Read Profile of the Asset Administration Shell Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /shells: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all Asset Administration Shells - operationId: GetAllAssetAdministrationShells - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/$reference: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns References to all Asset Administration Shells - operationId: GetAllAssetAdministrationShells-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells as a list of References - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShellById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Asset Information - operationId: GetAssetInformation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information/thumbnail: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - operationId: GetThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodel-refs: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel - operationId: GetSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodelById-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElements-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified path - operationId: GetSubmodelElementByPath-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/AssetAdministrationShellServiceSpecification/V3.0_SSP-001.yaml b/AssetAdministrationShellServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 229e6e10..00000000 --- a/AssetAdministrationShellServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,1691 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Asset Adminstration Shell Service Specification - description: >- - The Full Profile of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub) for the use case of a standalone Asset Administration Shell, e.g., an Asset Administration Shell running in a Docker container. - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /aas: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShell/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates an existing Asset Administration Shell - operationId: PutAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShell/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '204': - description: Asset Administration Shell updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/$reference: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShell-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShel/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/asset-information: - get: - tags: - - Asset Administration Shell API - summary: Returns the Asset Information - operationId: GetAssetInformation - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates the Asset Information - operationId: PutAssetInformation - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetInformation/3/0 - requestBody: - description: Asset Information object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - required: true - responses: - '204': - description: Asset Information updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/asset-information/thumbnail: - get: - tags: - - Asset Administration Shell API - operationId: GetThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - operationId: PutThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/PutThumbnail/3/0 - requestBody: - description: Thumbnail to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Thumbnail updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - operationId: DeleteThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteThumbnail/3/0 - responses: - '200': - description: Thumbnail deletion successful - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodel-refs: - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a submodel reference at the Asset Administration Shell - operationId: PostSubmodelReference - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelReference/3/0 - requestBody: - description: Reference to the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - required: true - responses: - '201': - description: Submodel reference created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodel-refs/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - delete: - tags: - - Asset Administration Shell API - summary: Deletes the submodel reference from the Asset Administration Shell. Does not delete the submodel itself! - operationId: DeleteSubmodelReferenceById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0 - responses: - '204': - description: Submodel reference deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates the Submodel - operationId: PutSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the Submodel - operationId: PatchSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes the submodel from the Asset Administration Shell. - operationId: DeleteSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodelMetadata - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates teh values of the Submodel - operationId: PatchSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object in the ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelMetadata-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a new submodel element - operationId: PostSubmodelElement - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElementsReference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElementsPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the metadata attributes of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated metadata attributes of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the value of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPathValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-asnyc: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the status of an asynchronously invoked Operation - operationId: GetOperationAsyncStatus - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the value of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/AssetAdministrationShellServiceSpecification/V3.0_SSP-002.yaml b/AssetAdministrationShellServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index d7799fb5..00000000 --- a/AssetAdministrationShellServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,807 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Asset Adminstration Shell Service Specification - description: >- - The Read Profile of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub) for the use case of a standalone Asset Administration Shell, e.g., an Asset Administration Shell running in a Docker container. - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /aas: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShell/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/$reference: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShell-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShel/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/asset-information: - get: - tags: - - Asset Administration Shell API - summary: Returns the Asset Information - operationId: GetAssetInformation - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/asset-information/thumbnail: - get: - tags: - - Asset Administration Shell API - operationId: GetThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodel-refs: - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelMetadata-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElementsReference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElementsPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/ConceptDescriptionServiceSpecification/V3.0_SSP-001.yaml b/ConceptDescriptionServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index eabb0a17..00000000 --- a/ConceptDescriptionServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,307 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Concept Description Repository Service Specification - description: >- - The ConceptDescription Repository Service Specification as part of [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) March 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/ConceptDescriptionRepositoryServiceSpecification/SSP-001 - termsOfService: https://github.com/admin-shell-io/aas-specs -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /concept-descriptions: - get: - tags: - - Concept Description Repository API - summary: Returns all Concept Descriptions - operationId: GetAllConceptDescriptions - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllConceptDescriptions/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIdShort/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIsCaseOf/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByDataSpecificationReference/3/0 - parameters: - - name: idShort - in: query - description: The Concept Description’s IdShort - required: false - style: form - explode: true - schema: - type: string - - name: isCaseOf - in: query - description: IsCaseOf reference (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - name: dataSpecificationRef - in: query - description: DataSpecification reference (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Concept Descriptions - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetConceptDescriptionsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Concept Description Repository API - summary: Creates a new Concept Description - operationId: PostConceptDescription - x-semanticIds: - - https://admin-shell.io/aas/API/PostConceptDescription/3/0 - requestBody: - description: Concept Description object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - required: true - responses: - '201': - description: Concept Description created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /concept-descriptions/{cdIdentifier}: - get: - tags: - - Concept Description Repository API - summary: Returns a specific Concept Description - operationId: GetConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/GetConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: true - schema: - type: string - format: byte - responses: - '200': - description: Requested Concept Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Concept Description Repository API - summary: Updates an existing Concept Description - operationId: PutConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/PutConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - requestBody: - description: Concept Description object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - required: true - responses: - '204': - description: Concept Description updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Concept Description Repository API - summary: Deletes a Concept Description - operationId: DeleteConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '204': - description: Concept Description deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/DINSPEC16593-Schemas/openapi.yaml b/DINSPEC16593-Schemas/openapi.yaml deleted file mode 100644 index e5cc0d36..00000000 --- a/DINSPEC16593-Schemas/openapi.yaml +++ /dev/null @@ -1,51 +0,0 @@ -# OpenAPI version identifier - required for OpenAPI 3.0 domains -openapi: 3.0.3 -info: - title: DotAAS Part 2 | DIN SPEC 16593 | Schemas - description: The depricated schemas implementing DIN SPEC 16593. This file is out of date. The publication of the DINSPEC16593 schemas never happened officially. The mirror standard in Part II DINSPEC16593 schemas is therefore obsolete. The specification of the ProtocolInformation is defined in Part2 API schemas. - contact: - name: Michael Hoffmeister, Torben Miny, Andreas Orzelski, Manuel Sauer, Constantin Ziesche, Sebastian Bader, Marko Ristin, Nico Braunisch - version: V3.0.1 - termsOfService: https://github.com/admin-shell-io/aas-specs -components: - schemas: - Endpoint: - properties: - interface: - type: string - protocolInformation: - $ref: "#/components/schemas/ProtocolInformation" - required: - - protocolInformation - - interface - type: object - ProtocolInformation: - properties: - endpointAddress: - type: string - endpointProtocol: - type: string - endpointProtocolVersion: - type: string - subprotocol: - type: string - subprotocolBody: - type: string - subprotocolBodyEncoding: - type: string - securityAttributes: - type: array - items: - $ref: "#/components/schemas/SecurityAttribute" - required: - - endpointAddress - type: object - SecurityAttribute: - type: object - properties: - type: - type: string - key: - type: string - value: - type: string diff --git a/DiscoveryServiceSpecification/V3.0_SSP-001.yaml b/DiscoveryServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 57f1e2c0..00000000 --- a/DiscoveryServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,153 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Discovery Service Specification - description: >- - The entire Full Profile of the Discovery Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /lookup/shells: - get: - tags: - - Asset Administration Shell Basic Discovery API - summary: Returns a list of Asset Administration Shell ids linked to specific Asset identifiers - operationId: GetAllAssetAdministrationShellIdsByAssetLink - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellIdsByAssetLink/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shell ids - content: - application/json: - schema: - allOf: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - type: string - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /lookup/shells/{aasIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Basic Discovery API - summary: Returns a list of specific Asset identifiers based on an Asset Administration Shell id to edit discoverable content - operationId: GetAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetLinksById/3/0 - responses: - '200': - description: Requested specific Asset identifiers - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Basic Discovery API - summary: Creates specific Asset identifiers linked to an Asset Administration Shell to edit discoverable content - operationId: PostAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/PostAllAssetLinksById/3/0 - requestBody: - description: A list of specific Asset identifiers - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - required: true - responses: - '201': - description: Specific Asset identifiers created successfully - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Basic Discovery API - summary: Deletes all specific Asset identifiers linked to an Asset Administration Shell to edit discoverable content - operationId: DeleteAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAllAssetLinksById/3/0 - responses: - '204': - description: Specific Asset identifiers deleted successfully - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/Entire-API-Collection/V3.0.yaml b/Entire-API-Collection/V3.0.yaml deleted file mode 100644 index be72ae7f..00000000 --- a/Entire-API-Collection/V3.0.yaml +++ /dev/null @@ -1,7012 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Entire API Collection - description: >- - All APIs of the Specification of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub) in one collection. Please not that this API is not intended to generate productive code but only for overview purposes. - - Publisher: Industrial Digital Twin Association (IDTA) 2023" - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1 - termsOfService: https://github.com/admin-shell-io/aas-specs -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /aas: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShell/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates an existing Asset Administration Shell - operationId: PutAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShell/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '204': - description: Asset Administration Shell updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/$reference: - get: - tags: - - Asset Administration Shell API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShell-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShel/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/asset-information: - get: - tags: - - Asset Administration Shell API - summary: Returns the Asset Information - operationId: GetAssetInformation - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates the Asset Information - operationId: PutAssetInformation - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetInformation/3/0 - requestBody: - description: Asset Information object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - required: true - responses: - '204': - description: Asset Information updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/asset-information/thumbnail: - get: - tags: - - Asset Administration Shell API - operationId: GetThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - operationId: PutThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/PutThumbnail/3/0 - requestBody: - description: Thumbnail to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Thumbnail updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - operationId: DeleteThumbnail - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteThumbnail/3/0 - responses: - '200': - description: Thumbnail deletion successful - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodel-refs: - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a submodel reference at the Asset Administration Shell - operationId: PostSubmodelReference - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelReference/3/0 - requestBody: - description: Reference to the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - required: true - responses: - '201': - description: Submodel reference created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodel-refs/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - delete: - tags: - - Asset Administration Shell API - summary: Deletes the submodel reference from the Asset Administration Shell. Does not delete the submodel itself! - operationId: DeleteSubmodelReferenceById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0 - responses: - '204': - description: Submodel reference deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel - operationId: GetSubmodel_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates the Submodel - operationId: PutSubmodel_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the Submodel - operationId: PatchSubmodel_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes the submodel from the Asset Administration Shell. - operationId: DeleteSubmodelById_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Metadata_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodelMetadata_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodel-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates teh values of the Submodel - operationId: PatchSubmodel-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object in the ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelMetadata-Reference_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /aas/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodel-Path_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a new submodel element - operationId: PostSubmodelElement_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElementsReference_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElementsPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the metadata attributes of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-Metadata_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated metadata attributes of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell API - summary: Updates the value of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPathValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-Reference_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-asnyc/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the Operation status of an asynchronous invoked Operation - operationId: GetOperationAsyncStatus_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /aas/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell API - summary: Returns the value of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly_AAS - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /submodel: - get: - tags: - - Submodel API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Updates the Submodel - operationId: PutSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the Submodel - operationId: PatchSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The metadata attributes of the Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$value: - get: - tags: - - Submodel API - summary: Returns the Submodel in the ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: ValueOnly representation of the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the values of the Submodel - operationId: PatchSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$reference: - get: - tags: - - Submodel API - summary: Returns the Reference of the Submodel - operationId: GetSubmodel-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$path: - get: - tags: - - Submodel API - summary: Returns the Submodel in the Path notation - operationId: GetSubmodel-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel API - summary: Creates a new submodel element - operationId: PostSubmodelElement - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$value: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$reference: - get: - tags: - - Submodel API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$path: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates an existing SubmodelElement - operationId: PatchSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: SubmodelElement object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the metadata attributes an existing SubmodelElement - operationId: PatchSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Metadata attributes of the SubmodelElement - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the value of an existing SubmodelElement - operationId: PatchSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The SubmodelElement in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Upload only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the Operation status of an asynchronous invoked Operation - operationId: GetOperationAsyncStatus - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the value of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /shells: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all Asset Administration Shells - operationId: GetAllAssetAdministrationShells - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new Asset Administration Shell - operationId: PostAssetAdministrationShell - x-semanticIds: - - https://admin-shell.io/aas/API/PostAssetAdministrationShell/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '201': - description: Asset Administration Shell created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/$reference: - get: - tags: - - Asset Administration Shell Repository API - summary: Returns References to all Asset Administration Shells - operationId: GetAllAssetAdministrationShells-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shells as a list of References - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell - operationId: GetAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing Asset Administration Shell - operationId: PutAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShellById/3/0 - requestBody: - description: Asset Administration Shell object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - required: true - responses: - '204': - description: Asset Administration Shell updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes an Asset Administration Shell - operationId: DeleteAssetAdministrationShellById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAssetAdministrationShellById/3/0 - responses: - '204': - description: Asset Administration Shell deleted successfully - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - description: Not Found - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - /shells/{aasIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific Asset Administration Shell as a Reference - operationId: GetAssetAdministrationShellById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 - responses: - '200': - description: Requested Asset Administration Shell - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Asset Information - operationId: GetAssetInformation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetInformation/3/0 - responses: - '200': - description: Requested Asset Information - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates the Asset Information - operationId: PutAssetInformation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetInformation/3/0 - requestBody: - description: Asset Information object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetInformation' - required: true - responses: - '204': - description: Asset Information updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/asset-information/thumbnail: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - operationId: GetThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetThumbnail/3/0 - responses: - '200': - description: The thumbnail of the Asset Information. - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - operationId: PutThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutThumbnail/3/0 - requestBody: - description: Thumbnail to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Thumbnail updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - operationId: DeleteThumbnail_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteThumbnail/3/0 - responses: - '200': - description: Thumbnail deletion successful - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodel-refs: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel references - operationId: GetAllSubmodelReferences_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested submodel references - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a submodel reference at the Asset Administration Shell - operationId: PostSubmodelReference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelReference/3/0 - requestBody: - description: Reference to the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - required: true - responses: - '201': - description: Submodel reference created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodel-refs/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes the submodel reference from the Asset Administration Shell. Does not delete the submodel itself! - operationId: DeleteSubmodelReferenceById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0 - responses: - '204': - description: Submodel reference deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel - operationId: GetSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates the Submodel - operationId: PutSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the Submodel - operationId: PatchSubmodel_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes the submodel from the Asset Administration Shell and the Repository. - operationId: DeleteSubmodelById_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodelById-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's ValueOnly representation - operationId: GetSubmodelById-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates teh values of the Submodel - operationId: PatchSubmodelById-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'deep' is allowed for PUT - requestBody: - description: Submodel object in the ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel as a Reference - operationId: GetSubmodelById-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - responses: - '200': - description: Requested Submodel as a Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Submodel's metadata elements - operationId: GetSubmodelById-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new submodel element - operationId: PostSubmodelElement_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in their ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements as a list of References - operationId: GetAllSubmodelElements-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of References of the found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Repository API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the metadata attributes if a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the metadata attributes of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated metadata attributes of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Asset Administration Shell Repository API - summary: Updates the value of an existing submodel element value at a specified path within submodel elements hierarchy - operationId: PatchSubmodelElementValueByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - requestBody: - description: The updated value of the submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Reference of a specific submodel element from the Submodel at a specified path - operationId: GetSubmodelElementByPath-Reference_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns a specific submodel element from the Submodel at a specified path in the Path notation - operationId: GetSubmodelElementByPath-Path_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Asset Administration Shell Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Repository API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Repository API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Asset Administration Shell Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Operation status of an asynchronous invoked Operation - operationId: GetOperationAsyncStatus_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shells/{aasIdentifier}/submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Asset Administration Shell Repository API - summary: Returns the ValueOnly notation of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly_AasRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /submodels: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels - operationId: GetAllSubmodels - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySupplementalSemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new Submodel - operationId: PostSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodel/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '201': - description: Submodel created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$metadata: - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all Submodels - operationId: GetAllSubmodels-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySupplementalSemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$value: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in their ValueOnly representation - operationId: GetAllSubmodels-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySupplementalSemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$reference: - get: - tags: - - Submodel Repository API - summary: Returns the References for all Submodels - operationId: GetAllSubmodels-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySupplementalSemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: References of the requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$path: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in the Path notation - operationId: GetAllSubmodels-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySupplementalSemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel - operationId: GetSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PutSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelById/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PatchSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a Submodel - operationId: DeleteSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes of an existing Submodel - operationId: PatchSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The metadata attributes of the Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the ValueOnly representation - operationId: GetSubmodelById-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the values of an existing Submodel - operationId: PatchSubmodelById-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the Reference of a specific Submodel - operationId: GetSubmodelById-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the Path notation - operationId: GetSubmodelById-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements_SubmodelRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element - operationId: PostSubmodelElement_SubmodelRepository - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_SubmodelRepository - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing SubmodelElement - operationId: PatchSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: SubmodelElement object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes an existing SubmodelElement - operationId: PatchSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Metadata attributes of the SubmodelElement - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the value of an existing SubmodelElement - operationId: PatchSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The SubmodelElement in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Upload only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - parameters: - - name: async - in: query - description: Determines whether an operation invocation is performed asynchronously or synchronously - schema: - type: boolean - default: false - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - parameters: - - name: async - in: query - description: Determines whether an operation invocation is performed asynchronously or synchronously - schema: - type: boolean - default: false - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the Operation status of an asynchronous invoked Operation - operationId: GetOperationAsyncStatus_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation status object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Value of the operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /concept-descriptions: - get: - tags: - - Concept Description Repository API - summary: Returns all Concept Descriptions - operationId: GetAllConceptDescriptions - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllConceptDescriptions/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIdShort/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIsCaseOf/3/0 - - https://admin-shell.io/aas/API/GetAllConceptDescriptionsByDataSpecificationReference/3/0 - parameters: - - name: idShort - in: query - description: The Concept Description’s IdShort - required: false - style: form - explode: true - schema: - type: string - - name: isCaseOf - in: query - description: IsCaseOf reference (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - name: dataSpecificationRef - in: query - description: DataSpecification reference (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Concept Descriptions - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetConceptDescriptionsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Concept Description Repository API - summary: Creates a new Concept Description - operationId: PostConceptDescription - x-semanticIds: - - https://admin-shell.io/aas/API/PostConceptDescription/3/0 - requestBody: - description: Concept Description object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - required: true - responses: - '201': - description: Concept Description created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /concept-descriptions/{cdIdentifier}: - get: - tags: - - Concept Description Repository API - summary: Returns a specific Concept Description - operationId: GetConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/GetConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: true - schema: - type: string - format: byte - responses: - '200': - description: Requested Concept Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Concept Description Repository API - summary: Updates an existing Concept Description - operationId: PutConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/PutConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - requestBody: - description: Concept Description object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription' - required: true - responses: - '204': - description: Concept Description updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Concept Description Repository API - summary: Deletes a Concept Description - operationId: DeleteConceptDescriptionById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteConceptDescriptionById/3/0 - parameters: - - name: cdIdentifier - in: path - description: The Concept Description’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '204': - description: Concept Description deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - - - - /shell-descriptors: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Asset Administration Shell Descriptors - operationId: GetAllAssetAdministrationShellDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptors/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetKind/3/0 - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptorsByAssetType/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetKind' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetType' - responses: - '200': - description: Requested Asset Administration Shell Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetAssetAdministrationShellDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Registry API - summary: Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS - operationId: PostAssetAdministrationShellDescriptor - x-semanticIds: - - https://admin-shell.io/aas/API/PostAssetAdministrationShellDescriptor/3/0 - requestBody: - description: Asset Administration Shell Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - required: true - responses: - '201': - description: Asset Administration Shell Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}: - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Asset Administration Shell Descriptor - operationId: GetAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '200': - description: Requested Asset Administration Shell Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Registry API - summary: Updates an existing Asset Administration Shell Descriptor - operationId: PutAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/PutAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - requestBody: - description: Asset Administration Shell Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/AssetAdministrationShellDescriptor' - required: true - responses: - '204': - description: Asset Administration Shell Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Registry API - summary: Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS - operationId: DeleteAssetAdministrationShellDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAssetAdministrationShellDescriptorById/3/0 - parameters: - - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - responses: - '204': - description: Asset Administration Shell Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptorsThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Registry API - summary: Creates a new Submodel Descriptor, i.e. registers a submodel - operationId: PostSubmodelDescriptor-ThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '201': - description: Submodel Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /shell-descriptors/{aasIdentifier}/submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Asset Administration Shell Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Asset Administration Shell Registry API - summary: Updates an existing Submodel Descriptor - operationId: PutSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '204': - description: Submodel Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Registry API - summary: Deletes a Submodel Descriptor, i.e. de-registers a submodel - operationId: DeleteSubmodelDescriptorByIdThroughSuperpath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0 - responses: - '204': - description: Submodel Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /submodel-descriptors: - get: - tags: - - Submodel Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Registry API - summary: Creates a new Submodel Descriptor, i.e. registers a submodel - operationId: PostSubmodelDescriptor - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '201': - description: Submodel Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Registry API - summary: Updates an existing Submodel Descriptor - operationId: PutSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '204': - description: Submodel Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Registry API - summary: Deletes a Submodel Descriptor, i.e. de-registers a submodel - operationId: DeleteSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0 - responses: - '204': - description: Submodel Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - - - /lookup/shells: - get: - tags: - - Asset Administration Shell Basic Discovery API - summary: Returns a list of Asset Administration Shell ids linked to specific Asset identifiers - operationId: GetAllAssetAdministrationShellIdsByAssetLink - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetAdministrationShellIdsByAssetLink/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetIds' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Asset Administration Shell ids - content: - application/json: - schema: - allOf: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - type: string - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /lookup/shells/{aasIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - get: - tags: - - Asset Administration Shell Basic Discovery API - summary: Returns a list of specific Asset identifiers based on an Asset Administration Shell id to edit discoverable content - operationId: GetAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAssetLinksById/3/0 - responses: - '200': - description: Requested specific Asset identifiers - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Asset Administration Shell Basic Discovery API - summary: Creates specific Asset identifiers linked to an Asset Administration Shell to edit discoverable content - operationId: PostAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/PostAllAssetLinksById/3/0 - requestBody: - description: A list of specific Asset identifiers - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - required: true - responses: - '201': - description: Specific Asset identifiers created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Asset Administration Shell Basic Discovery API - summary: Deletes all specific Asset identifiers linked to an Asset Administration Shell to edit discoverable content - operationId: DeleteAllAssetLinksById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAllAssetLinksById/3/0 - responses: - '204': - description: Specific Asset identifiers deleted successfully - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /packages: - get: - tags: - - AASX File Server API - summary: Returns a list of available AASX packages at the server - operationId: GetAllAASXPackageIds - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllAASXPackageIds/3/0 - parameters: - - name: aasId - in: query - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: false - style: form - explode: true - schema: - type: string - format: byte - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested package list - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPackageDescriptionsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - AASX File Server API - summary: Stores the AASX package at the server - operationId: PostAASXPackage - x-semanticIds: - - https://admin-shell.io/aas/API/PostAASXPackage/3/0 - requestBody: - description: AASX package - content: - multipart/form-data: - schema: - type: object - properties: - aasIds: - type: array - items: - type: string - file: - type: string - format: binary - fileName: - type: string - encoding: - file: - contentType: application/asset-administration-shell-package - required: true - responses: - '201': - description: AASX package stored successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PackageDescription' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /packages/{packageId}: - parameters: - - name: packageId - in: path - description: The package Id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: true - schema: - type: string - format: byte - get: - tags: - - AASX File Server API - summary: Returns a specific AASX package from the server - operationId: GetAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/GetAASXByPackageId/3/0 - responses: - '200': - description: Requested AASX package - headers: - X-FileName: - schema: - type: string - description: Filename of the package - content: - application/asset-administration-shell-package: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - AASX File Server API - summary: Updates the AASX package at the server - operationId: PutAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/PutAASXByPackageId/3/0 - requestBody: - description: AASX package - content: - multipart/form-data: - schema: - type: object - properties: - aasIds: - type: array - items: - type: string - file: - type: string - format: binary - fileName: - type: string - encoding: - file: - contentType: application/asset-administration-shell-package - required: true - responses: - '204': - description: AASX package updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - AASX File Server API - summary: Deletes a specific AASX package from the server - operationId: DeleteAASXByPackageId - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteAASXByPackageId/3/0 - responses: - '204': - description: Deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' \ No newline at end of file diff --git a/Part1-MetaModel-Schemas/openapi.yaml b/Part1-MetaModel-Schemas/openapi.yaml deleted file mode 100644 index ab3e7eaf..00000000 --- a/Part1-MetaModel-Schemas/openapi.yaml +++ /dev/null @@ -1,970 +0,0 @@ -# OpenAPI version identifier - required for OpenAPI 3.0 domains -openapi: 3.0.3 -info: - title: DotAAS Part 1 | Metamodel | Schemas - description: >- - The schemas implementing the [Specification of the Asset Administration Shell: Part 1](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1 -components: - schemas: - AasSubmodelElements: - type: string - enum: - - AnnotatedRelationshipElement - - BasicEventElement - - Blob - - Capability - - DataElement - - Entity - - EventElement - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - AbstractLangString: - type: object - properties: - language: - type: string - pattern: "^(([a-zA-Z]{2,3}(-[a-zA-Z]{3}(-[a-zA-Z]{3}){2})?|[a-zA-Z]{4}|[a-zA-Z]{5,8})(-[a-zA-Z]{4})?(-([a-zA-Z]{2}|[0-9]{3}))?(-(([a-zA-Z0-9]){5,8}|[0-9]([a-zA-Z0-9]){3}))*(-[0-9A-WY-Za-wy-z](-([a-zA-Z0-9]){2,8})+)*(-[xX](-([a-zA-Z0-9]){1,8})+)?|[xX](-([a-zA-Z0-9]){1,8})+|((en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE)|(art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang)))$" - text: - type: string - minLength: 1 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - required: - - language - - text - AdministrativeInformation: - allOf: - - "$ref": "#/components/schemas/HasDataSpecification" - - properties: - version: - type: string - allOf: - - minLength: 1 - maxLength: 4 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^(0|[1-9][0-9]*)$" - revision: - type: string - allOf: - - minLength: 1 - maxLength: 4 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^(0|[1-9][0-9]*)$" - creator: - "$ref": "#/components/schemas/Reference" - templateId: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - AnnotatedRelationshipElement: - allOf: - - "$ref": "#/components/schemas/RelationshipElement_abstract" - - properties: - annotations: - type: array - items: - "$ref": "#/components/schemas/DataElement_choice" - minItems: 1 - modelType: - type: string - pattern: AnnotatedRelationshipElement - AssetAdministrationShell: - allOf: - - "$ref": "#/components/schemas/Identifiable" - - "$ref": "#/components/schemas/HasDataSpecification" - - properties: - derivedFrom: - "$ref": "#/components/schemas/Reference" - assetInformation: - "$ref": "#/components/schemas/AssetInformation" - submodels: - type: array - items: - "$ref": "#/components/schemas/Reference" - minItems: 1 - modelType: - type: string - pattern: AssetAdministrationShell - required: - - assetInformation - AssetInformation: - type: object - properties: - assetKind: - "$ref": "#/components/schemas/AssetKind" - globalAssetId: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - specificAssetIds: - type: array - items: - "$ref": "#/components/schemas/SpecificAssetId" - minItems: 1 - assetType: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - defaultThumbnail: - "$ref": "#/components/schemas/Resource" - required: - - assetKind - AssetKind: - type: string - enum: - - Instance - - NotApplicable - - Type - BasicEventElement: - allOf: - - "$ref": "#/components/schemas/EventElement" - - properties: - observed: - "$ref": "#/components/schemas/Reference" - direction: - "$ref": "#/components/schemas/Direction" - state: - "$ref": "#/components/schemas/StateOfEvent" - messageTopic: - type: string - minLength: 1 - maxLength: 255 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - messageBroker: - "$ref": "#/components/schemas/Reference" - lastUpdate: - type: string - pattern: "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" - minInterval: - type: string - pattern: "^-?P((([0-9]+Y([0-9]+M)?([0-9]+D)?|([0-9]+M)([0-9]+D)?|([0-9]+D))(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S)))?)|(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S))))$" - maxInterval: - type: string - pattern: "^-?P((([0-9]+Y([0-9]+M)?([0-9]+D)?|([0-9]+M)([0-9]+D)?|([0-9]+D))(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S)))?)|(T(([0-9]+H)([0-9]+M)?([0-9]+(\\.[0-9]+)?S)?|([0-9]+M)([0-9]+(\\.[0-9]+)?S)?|([0-9]+(\\.[0-9]+)?S))))$" - modelType: - type: string - pattern: BasicEventElement - required: - - observed - - direction - - state - Blob: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - value: - type: string - format: byte - contentType: - type: string - allOf: - - minLength: 1 - maxLength: 100 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ - \\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t - !#-\\[\\]-~]|[\x80-ÿ])|\\\\([\\t !-~]|[\x80-ÿ]))*\"))*$" - modelType: - type: string - pattern: Blob - required: - - contentType - Capability: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - - properties: - modelType: - type: string - pattern: Capability - ConceptDescription: - allOf: - - "$ref": "#/components/schemas/Identifiable" - - "$ref": "#/components/schemas/HasDataSpecification" - - properties: - isCaseOf: - type: array - items: - "$ref": "#/components/schemas/Reference" - minItems: 1 - modelType: - type: string - pattern: ConceptDescription - DataElement: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - DataElement_choice: - oneOf: - - "$ref": "#/components/schemas/Blob" - - "$ref": "#/components/schemas/File" - - "$ref": "#/components/schemas/MultiLanguageProperty" - - "$ref": "#/components/schemas/Property" - - "$ref": "#/components/schemas/Range" - - "$ref": "#/components/schemas/ReferenceElement" - DataSpecificationContent: - type: object - properties: - modelType: - "$ref": "#/components/schemas/ModelType" - required: - - modelType - DataSpecificationContent_choice: - oneOf: - - "$ref": "#/components/schemas/DataSpecificationIec61360" - DataSpecificationIec61360: - allOf: - - "$ref": "#/components/schemas/DataSpecificationContent" - - properties: - preferredName: - type: array - items: - "$ref": "#/components/schemas/LangStringPreferredNameTypeIec61360" - minItems: 1 - shortName: - type: array - items: - "$ref": "#/components/schemas/LangStringShortNameTypeIec61360" - minItems: 1 - unit: - type: string - minLength: 1 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - unitId: - "$ref": "#/components/schemas/Reference" - sourceOfDefinition: - type: string - minLength: 1 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - symbol: - type: string - minLength: 1 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - dataType: - "$ref": "#/components/schemas/DataTypeIec61360" - definition: - type: array - items: - "$ref": "#/components/schemas/LangStringDefinitionTypeIec61360" - minItems: 1 - valueFormat: - type: string - minLength: 1 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - valueList: - "$ref": "#/components/schemas/ValueList" - value: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - levelType: - "$ref": "#/components/schemas/LevelType" - modelType: - type: string - pattern: DataSpecificationIec61360 - required: - - preferredName - DataTypeDefXsd: - type: string - enum: - - xs:anyURI - - xs:base64Binary - - xs:boolean - - xs:byte - - xs:date - - xs:dateTime - - xs:decimal - - xs:double - - xs:duration - - xs:float - - xs:gDay - - xs:gMonth - - xs:gMonthDay - - xs:gYear - - xs:gYearMonth - - xs:hexBinary - - xs:int - - xs:integer - - xs:long - - xs:negativeInteger - - xs:nonNegativeInteger - - xs:nonPositiveInteger - - xs:positiveInteger - - xs:short - - xs:string - - xs:time - - xs:unsignedByte - - xs:unsignedInt - - xs:unsignedLong - - xs:unsignedShort - DataTypeIec61360: - type: string - enum: - - BLOB - - BOOLEAN - - DATE - - FILE - - HTML - - INTEGER_COUNT - - INTEGER_CURRENCY - - INTEGER_MEASURE - - IRDI - - IRI - - RATIONAL - - RATIONAL_MEASURE - - REAL_COUNT - - REAL_CURRENCY - - REAL_MEASURE - - STRING - - STRING_TRANSLATABLE - - TIME - - TIMESTAMP - Direction: - type: string - enum: - - input - - output - EmbeddedDataSpecification: - type: object - properties: - dataSpecification: - "$ref": "#/components/schemas/Reference" - dataSpecificationContent: - "$ref": "#/components/schemas/DataSpecificationContent_choice" - required: - - dataSpecification - - dataSpecificationContent - Entity: - allOf: - - $ref: "#/components/schemas/SubmodelElement" - - properties: - statements: - type: array - items: - "$ref": "#/components/schemas/SubmodelElement_choice" - minItems: 1 - entityType: - "$ref": "#/components/schemas/EntityType" - globalAssetId: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - specificAssetIds: - type: array - items: - "$ref": "#/components/schemas/SpecificAssetId" - minItems: 1 - modelType: - type: string - pattern: Entity - required: - - entityType - EntityType: - type: string - enum: - - CoManagedEntity - - SelfManagedEntity - Environment: - type: object - properties: - assetAdministrationShells: - type: array - items: - "$ref": "#/components/schemas/AssetAdministrationShell" - minItems: 1 - submodels: - type: array - items: - "$ref": "#/components/schemas/Submodel" - minItems: 1 - conceptDescriptions: - type: array - items: - "$ref": "#/components/schemas/ConceptDescription" - minItems: 1 - EventElement: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - EventPayload: - type: object - properties: - source: - "$ref": "#/components/schemas/Reference" - sourceSemanticId: - "$ref": "#/components/schemas/Reference" - observableReference: - "$ref": "#/components/schemas/Reference" - observableSemanticId: - "$ref": "#/components/schemas/Reference" - topic: - type: string - minLength: 1 - maxLength: 255 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - subjectId: - "$ref": "#/components/schemas/Reference" - timeStamp: - type: string - pattern: "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" - payload: - type: string - format: byte - required: - - source - - observableReference - - timeStamp - Extension: - allOf: - - "$ref": "#/components/schemas/HasSemantics" - - properties: - name: - type: string - minLength: 1 - maxLength: 128 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - valueType: - "$ref": "#/components/schemas/DataTypeDefXsd" - value: - type: string - refersTo: - type: array - items: - "$ref": "#/components/schemas/Reference" - minItems: 1 - required: - - name - File: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - value: - type: string - allOf: - - minLength: 1 - maxLength: 2000 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" - contentType: - type: string - allOf: - - minLength: 1 - maxLength: 100 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([\\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t!#-\\[\\]-~]|[\x80-ÿ])|\\\\([\\t !-~]|[\x80-ÿ]))*\"))*$" - modelType: - type: string - pattern: File - required: - - contentType - HasDataSpecification: - type: object - properties: - embeddedDataSpecifications: - type: array - items: - "$ref": "#/components/schemas/EmbeddedDataSpecification" - minItems: 1 - HasExtensions: - type: object - properties: - extensions: - type: array - items: - "$ref": "#/components/schemas/Extension" - minItems: 1 - HasKind: - type: object - properties: - kind: - "$ref": "#/components/schemas/ModellingKind" - HasSemantics: - type: object - properties: - semanticId: - "$ref": "#/components/schemas/Reference" - supplementalSemanticIds: - type: array - items: - "$ref": "#/components/schemas/Reference" - minItems: 1 - Identifiable: - allOf: - - "$ref": "#/components/schemas/Referable" - - properties: - administration: - "$ref": "#/components/schemas/AdministrativeInformation" - id: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - required: - - id - Key: - type: object - properties: - type: - "$ref": "#/components/schemas/KeyTypes" - value: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - required: - - type - - value - KeyTypes: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataElement - - Entity - - EventElement - - File - - FragmentReference - - GlobalReference - - Identifiable - - MultiLanguageProperty - - Operation - - Property - - Range - - Referable - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElement - - SubmodelElementCollection - - SubmodelElementList - LangStringDefinitionTypeIec61360: - allOf: - - "$ref": "#/components/schemas/AbstractLangString" - - properties: - text: - maxLength: 1023 - LangStringNameType: - allOf: - - "$ref": "#/components/schemas/AbstractLangString" - - properties: - text: - maxLength: 128 - LangStringPreferredNameTypeIec61360: - allOf: - - "$ref": "#/components/schemas/AbstractLangString" - - properties: - text: - maxLength: 255 - LangStringShortNameTypeIec61360: - allOf: - - "$ref": "#/components/schemas/AbstractLangString" - - properties: - text: - maxLength: 18 - LangStringTextType: - allOf: - - "$ref": "#/components/schemas/AbstractLangString" - - properties: - text: - maxLength: 1023 - LevelType: - type: object - properties: - min: - type: boolean - nom: - type: boolean - typ: - type: boolean - max: - type: boolean - required: - - min - - nom - - typ - - max - ModelType: - type: string - enum: - - AnnotatedRelationshipElement - - AssetAdministrationShell - - BasicEventElement - - Blob - - Capability - - ConceptDescription - - DataSpecificationIec61360 - - Entity - - File - - MultiLanguageProperty - - Operation - - Property - - Range - - ReferenceElement - - RelationshipElement - - Submodel - - SubmodelElementCollection - - SubmodelElementList - ModellingKind: - type: string - enum: - - Instance - - Template - MultiLanguageProperty: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - value: - type: array - items: - "$ref": "#/components/schemas/LangStringTextType" - minItems: 1 - valueId: - "$ref": "#/components/schemas/Reference" - modelType: - type: string - pattern: MultiLanguageProperty - Operation: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - - properties: - inputVariables: - type: array - items: - "$ref": "#/components/schemas/OperationVariable" - minItems: 1 - outputVariables: - type: array - items: - "$ref": "#/components/schemas/OperationVariable" - minItems: 1 - inoutputVariables: - type: array - items: - "$ref": "#/components/schemas/OperationVariable" - minItems: 1 - modelType: - type: string - pattern: Operation - OperationVariable: - type: object - properties: - value: - "$ref": "#/components/schemas/SubmodelElement_choice" - required: - - value - Property: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - valueType: - "$ref": "#/components/schemas/DataTypeDefXsd" - value: - type: string - valueId: - "$ref": "#/components/schemas/Reference" - modelType: - type: string - pattern: Property - required: - - valueType - Qualifiable: - type: object - properties: - qualifiers: - type: array - items: - "$ref": "#/components/schemas/Qualifier" - minItems: 1 - modelType: - "$ref": "#/components/schemas/ModelType" - required: - - modelType - Qualifier: - allOf: - - "$ref": "#/components/schemas/HasSemantics" - - properties: - kind: - "$ref": "#/components/schemas/QualifierKind" - type: - type: string - minLength: 1 - maxLength: 128 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - valueType: - "$ref": "#/components/schemas/DataTypeDefXsd" - value: - type: string - valueId: - "$ref": "#/components/schemas/Reference" - required: - - type - - valueType - QualifierKind: - type: string - enum: - - ConceptQualifier - - TemplateQualifier - - ValueQualifier - Range: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - valueType: - "$ref": "#/components/schemas/DataTypeDefXsd" - min: - type: string - max: - type: string - modelType: - type: string - pattern: Range - required: - - valueType - Referable: - allOf: - - "$ref": "#/components/schemas/HasExtensions" - - properties: - category: - type: string - minLength: 1 - maxLength: 128 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - idShort: - type: string - allOf: - - minLength: 1 - maxLength: 128 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^[a-zA-Z][a-zA-Z0-9_]*$" - displayName: - type: array - items: - "$ref": "#/components/schemas/LangStringNameType" - minItems: 1 - description: - type: array - items: - "$ref": "#/components/schemas/LangStringTextType" - minItems: 1 - modelType: - "$ref": "#/components/schemas/ModelType" - required: - - modelType - Reference: - allOf: - - "$ref": "#/components/schemas/ReferenceParent" - - properties: - referredSemanticId: - "$ref": "#/components/schemas/ReferenceParent" - ReferenceParent: - # This class is introduced because of the recursion issue of SwaggerUi (see https://github.com/swagger-api/swagger-ui/issues/3325) - type: object - properties: - type: - "$ref": "#/components/schemas/ReferenceTypes" - keys: - type: array - items: - "$ref": "#/components/schemas/Key" - minItems: 1 - required: - - type - - keys - ReferenceElement: - allOf: - - "$ref": "#/components/schemas/DataElement" - - properties: - value: - "$ref": "#/components/schemas/Reference" - modelType: - type: string - pattern: ReferenceElement - ReferenceTypes: - type: string - enum: - - ExternalReference - - ModelReference - RelationshipElement: - allOf: - - "$ref": "#/components/schemas/RelationshipElement_abstract" - - properties: - modelType: - type: string - pattern: RelationshipElement - RelationshipElement_abstract: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - - properties: - first: - "$ref": "#/components/schemas/Reference" - second: - "$ref": "#/components/schemas/Reference" - required: - - first - - second - RelationshipElement_choice: - oneOf: - - "$ref": "#/components/schemas/RelationshipElement" - - "$ref": "#/components/schemas/AnnotatedRelationshipElement" - Resource: - type: object - properties: - path: - type: string - allOf: - - minLength: 1 - maxLength: 2000 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^file:(//((localhost|(\\[((([0-9A-Fa-f]{1,4}:){6}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|::([0-9A-Fa-f]{1,4}:){5}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|([0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){4}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){3}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){2}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:){2}([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){4}[0-9A-Fa-f]{1,4})?::([0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))|(([0-9A-Fa-f]{1,4}:){5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(([0-9A-Fa-f]{1,4}:){6}[0-9A-Fa-f]{1,4})?::)|[vV][0-9A-Fa-f]+\\.([a-zA-Z0-9\\-._~]|[!$&'()*+,;=]|:)+)\\]|([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=])*)))?/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?|/((([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))+(/(([a-zA-Z0-9\\-._~]|%[0-9A-Fa-f][0-9A-Fa-f]|[!$&'()*+,;=]|[:@]))*)*)?)$" - contentType: - type: string - allOf: - - minLength: 1 - maxLength: 100 - - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - - pattern: "^([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+/([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+([ - \\t]*;[ \\t]*([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+=(([!#$%&'*+\\-.^_`|~0-9a-zA-Z])+|\"(([\\t - !#-\\[\\]-~]|[\x80-ÿ])|\\\\([\\t !-~]|[\x80-ÿ]))*\"))*$" - required: - - path - SpecificAssetId: - allOf: - - "$ref": "#/components/schemas/HasSemantics" - - properties: - name: - type: string - minLength: 1 - maxLength: 64 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - value: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - externalSubjectId: - "$ref": "#/components/schemas/Reference" - required: - - name - - value - StateOfEvent: - type: string - enum: - - 'off' - - 'on' - Submodel: - allOf: - - "$ref": "#/components/schemas/Identifiable" - - "$ref": "#/components/schemas/HasKind" - - "$ref": "#/components/schemas/HasSemantics" - - "$ref": "#/components/schemas/Qualifiable" - - "$ref": "#/components/schemas/HasDataSpecification" - - properties: - submodelElements: - type: array - items: - "$ref": "#/components/schemas/SubmodelElement_choice" - minItems: 1 - modelType: - type: string - pattern: Submodel - SubmodelElement: - allOf: - - "$ref": "#/components/schemas/Referable" - - "$ref": "#/components/schemas/HasSemantics" - - "$ref": "#/components/schemas/Qualifiable" - - "$ref": "#/components/schemas/HasDataSpecification" - SubmodelElementCollection: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - - properties: - value: - type: array - items: - "$ref": "#/components/schemas/SubmodelElement_choice" - minItems: 1 - modelType: - type: string - pattern: SubmodelElementCollection - SubmodelElementList: - allOf: - - "$ref": "#/components/schemas/SubmodelElement" - - properties: - orderRelevant: - type: boolean - semanticIdListElement: - "$ref": "#/components/schemas/Reference" - typeValueListElement: - "$ref": "#/components/schemas/AasSubmodelElements" - valueTypeListElement: - "$ref": "#/components/schemas/DataTypeDefXsd" - value: - type: array - items: - "$ref": "#/components/schemas/SubmodelElement_choice" - minItems: 1 - modelType: - type: string - pattern: SubmodelElementList - required: - - typeValueListElement - SubmodelElement_choice: - oneOf: - - "$ref": "#/components/schemas/RelationshipElement" - - "$ref": "#/components/schemas/AnnotatedRelationshipElement" - - "$ref": "#/components/schemas/BasicEventElement" - - "$ref": "#/components/schemas/Blob" - - "$ref": "#/components/schemas/Capability" - - "$ref": "#/components/schemas/Entity" - - "$ref": "#/components/schemas/File" - - "$ref": "#/components/schemas/MultiLanguageProperty" - - "$ref": "#/components/schemas/Operation" - - "$ref": "#/components/schemas/Property" - - "$ref": "#/components/schemas/Range" - - "$ref": "#/components/schemas/ReferenceElement" - - "$ref": "#/components/schemas/SubmodelElementCollection" - - "$ref": "#/components/schemas/SubmodelElementList" - ValueList: - type: object - properties: - valueReferencePairs: - type: array - items: - "$ref": "#/components/schemas/ValueReferencePair" - minItems: 1 - required: - - valueReferencePairs - ValueReferencePair: - type: object - properties: - value: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^([\\t\\n\\r -\ud7ff\ue000-\ufffd]|\\ud800[\\udc00-\\udfff]|[\\ud801-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udfff])*$" - valueId: - "$ref": "#/components/schemas/Reference" - required: - - value - - valueId \ No newline at end of file diff --git a/Part2-API-Schemas/openapi.yaml b/Part2-API-Schemas/openapi.yaml deleted file mode 100644 index 4a747438..00000000 --- a/Part2-API-Schemas/openapi.yaml +++ /dev/null @@ -1,911 +0,0 @@ -# OpenAPI version identifier - required for OpenAPI 3.0 domains -openapi: 3.0.3 -info: - title: DotAAS Part 2 | API | Schemas - description: >- - The schemas implementing the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1 -components: - parameters: - AssetAdministrationShellIdentifier: - name: aasIdentifier - in: path - description: The Asset Administration Shell’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - AssetKind: - name: assetKind - in: query - required: false - description: The Asset's kind (Instance or Type) - schema: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetKind" - AssetIds: - name: assetIds - in: query - description: A list of specific Asset identifiers. Each Asset identifier is a base64-url-encoded [SpecificAssetId](https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId) - required: false - style: form - explode: true - schema: - type: array - items: - type: string - format: byte - example: '?assetIds=eyAibmFtZSI6ICJzb21lLWFzc2V0LWlkIiwgInZhbHVlIjogImh0dHA6Ly9leGFtcGxlLWNvbXBhbnkuY29tL215QXNzZXQiLCAiZXh0ZXJuYWxTdWJqZWN0SWQiOiB7ICJrZXlzIjogWyB7ICJ0eXBlIjogIkdsb2JhbFJlZmVyZW5jZSIsICJ2YWx1ZSI6ICJodHRwOi8vZXhhbXBsZS1jb21wYW55LmNvbS9leGFtcGxlLWNvbXBhbnlzLWFzc2V0LWtleXMiIH0gXSwgInR5cGUiOiAiR2xvYmFsUmVmZXJlbmNlIiB9IH0&assetIds=eyAibmFtZSI6ICJzb21lLW90aGVyLWFzc2V0LWlkIiwgInZhbHVlIjogIjEyMzQ1QUJDIiwgImV4dGVybmFsU3ViamVjdElkIjogeyAia2V5cyI6IFsgeyAidHlwZSI6ICJHbG9iYWxSZWZlcmVuY2UiLCAidmFsdWUiOiAiaHR0cDovL215LW93bi1jb21wYW55LmNvbS9rZXlzIiB9IF0sICJ0eXBlIjogIkdsb2JhbFJlZmVyZW5jZSIgfSB9' - AssetType: - name: assetType - in: query - description: The Asset's type (UTF8-BASE64-URL-encoded) - required: false - schema: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - Cursor: - name: cursor - in: query - description: A server-generated identifier retrieved from pagingMetadata that specifies from which position the result listing should continue - required: false - schema: - type: string - Extent: - name: extent - in: query - description: Determines to which extent the resource is being serialized - required: false - schema: - type: string - default: withoutBlobValue - enum: - - withBlobValue - - withoutBlobValue - HandleId: - name: handleId - in: path - description: The returned handle id of an operation’s asynchronous invocation used to request the current state of the operation’s execution (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - IdShort: - name: idShort - in: query - description: The Asset Administration Shell’s IdShort - required: false - style: form - explode: true - schema: - type: string - IdShortPath: - name: idShortPath - in: path - description: IdShort path to the submodel element (dot-separated) - required: true - style: simple - explode: false - schema: - type: string - Level: - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep - - core - Limit: - name: limit - in: query - description: The maximum number of elements in the response array - required: false - schema: - type: integer - minimum: 1 - SemanticId: - name: semanticId - in: query - description: The value of the semantic id reference (BASE64-URL-encoded) - schema: - type: string - maxLength: 3072 - minLength: 1 - SubmodelIdentifier: - name: submodelIdentifier - in: path - description: The Submodel’s unique id (UTF8-BASE64-URL-encoded) - required: true - style: simple - explode: false - schema: - type: string - format: byte - - schemas: - AnnotatedRelationshipElementMetadata: - $ref: "#/components/schemas/SubmodelElementAttributes" - AnnotatedRelationshipElementValue: - properties: - first: - $ref: "#/components/schemas/ReferenceValue" - second: - $ref: "#/components/schemas/ReferenceValue" - annotations: - type: array - items: - $ref: "#/components/schemas/ValueOnly" - required: - - first - - second - type: object - AssetAdministrationShellDescriptor: - allOf: - - $ref: "#/components/schemas/Descriptor" - - properties: - administration: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AdministrativeInformation" - assetKind: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetKind" - assetType: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - endpoints: - items: - $ref: "#/components/schemas/Endpoint" - minItems: 1 - type: array - globalAssetId: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - idShort: - type: string - maxLength: 128 - id: - type: string - maxLength: 2000 - minLength: 1 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - specificAssetIds: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SpecificAssetId" - submodelDescriptors: - items: - $ref: "#/components/schemas/SubmodelDescriptor" - type: array - required: - - id - type: object - example: '{ "id": "https://example.org/aas/motor", "endpoints": [ { "protocolInformation": { "href": "https://localhost:1234/api/v3.0/aas", "endpointProtocol": "HTTP", "endpointProtocolVersion": ["1.1"] }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "opc.tcp://localhost:4840" }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "https://localhost:5678", "endpointProtocol": "HTTP", "endpointProtocolVersion": ["1.1"], "subprotocol": "OPC UA Basic SOAP", "subprotocolBody": "ns=2;s=MyAAS", "subprotocolBodyEncoding": "application/soap+xml" }, "interface": "AAS-3.0" } ] }' - AssetAdministrationShellMetadata: - allOf: - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Identifiable" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasDataSpecification" - - properties: - derivedFrom: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - BaseOperationResult: - allOf: - - $ref: "#/components/schemas/Result" - - properties: - executionState: - $ref: "#/components/schemas/ExecutionState" - success: - type: boolean - BasicEventElementMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - - properties: - direction: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Direction" - state: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/StateOfEvent" - messageTopic: - type: string - maxLength: 255 - messageBroker: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - lastUpdate: - type: string - minInterval: - type: string - maxInterval: - type: string - BasicEventElementValue: - properties: - observed: - $ref: "#/components/schemas/ReferenceValue" - required: - - observed - type: object - BlobMetadata: - $ref: "#/components/schemas/SubmodelElementAttributes" - BlobValue: - properties: - contentType: - type: string - minLength: 1 - maxLength: 100 - value: - type: string - required: - - contentType - - value - type: object - BooleanValue: - type: boolean - CapabilityMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - Descriptor: - example: '{ "endpoints": [ { "protocolInformation": { "href": "https://localhost:1234/api/v3.0/aas", "endpointProtocolVersion": ["1.1"] }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "opc.tcp://localhost:4840" }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "https://localhost:5678", "endpointProtocolVersion": ["1.1"], "subprotocol": "OPC UA Basic SOAP", "subprotocolBody": "ns=2;s=MyAAS", "subprotocolBodyEncoding": "application/soap+xml" }, "interface": "AAS-3.0" } ] }' - properties: - description: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/LangStringTextType" - displayName: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/LangStringNameType" - extensions: - type: array - items: - "$ref": "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Extension" - minItems: 1 - type: object - Endpoint: - properties: - interface: - type: string - maxLength: 128 - protocolInformation: - $ref: "#/components/schemas/ProtocolInformation" - required: - - protocolInformation - - interface - type: object - EntityMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - EntityValue: - properties: - entityType: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/EntityType" - globalAssetId: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - specificAssetIds: - type: array - items: - $ref: "#/components/schemas/SpecificAssetIdValue" - statements: - items: - $ref: "#/components/schemas/ValueOnly" - type: array - required: - - statements - - entityType - type: object - ExecutionState: - enum: - - Initiated - - Running - - Completed - - Canceled - - Failed - - Timeout - type: string - FileValue: - properties: - contentType: - type: string - minLength: 1 - maxLength: 100 - value: - type: string - minLength: 1 - maxLength: 2000 - required: - - contentType - - value - type: object - FileMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - GetAssetAdministrationShellDescriptorsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/AssetAdministrationShellDescriptor" - GetAssetAdministrationShellsMetadataResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/AssetAdministrationShellMetadata" - GetAssetAdministrationShellsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell" - GetConceptDescriptionsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ConceptDescription" - GetPackageDescriptionsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/PackageDescription" - GetPathItemsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/PathItem" - GetReferencesResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - GetSubmodelDescriptorsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/SubmodelDescriptor" - GetSubmodelElementsMetadataResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/SubmodelElementMetadata" - GetSubmodelElementsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement" - GetSubmodelElementsValueResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/SubmodelElementValue" - GetSubmodelsMetadataResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/SubmodelMetadata" - GetSubmodelsResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel" - GetSubmodelsValueResult: - allOf: - - $ref: '#/components/schemas/PagedResult' - - type: object - properties: - result: - type: array - items: - $ref: "#/components/schemas/SubmodelValue" - Message: - properties: - code: - type: string - maxLength: 32 - minLength: 1 - correlationId: - type: string - maxLength: 128 - minLength: 1 - messageType: - enum: - - Undefined - - Info - - Warning - - Error - - Exception - type: string - text: - type: string - timestamp: - type: string - pattern: "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" - type: object - MultiLanguagePropertyMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - MultiLanguagePropertyValue: - type: object - description: Since patternProperties and propertyNames are not supported by OpenApi yet, the ValueOnly serialization for this elements works with the key-attribute as the JSON-property name and the value-attribute as the corresponding value. - NumberValue: - type: number - OperationHandle: - properties: - handleId: - type: string - maxLength: 128 - type: object - OperationMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - OperationRequest: - properties: - inoutputArguments: - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/OperationVariable" - type: array - inputArguments: - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/OperationVariable" - type: array - clientTimeoutDuration: - type: string - pattern: "^(-?)P(?=.)((\\d+)Y)?((\\d+)M)?((\\d+)D)?(T(?=.)((\\d+)H)?((\\d+)M)?(\\d*(\\.\\d+)?S)?)?$" - type: object - OperationRequestValueOnly: - properties: - inoutputArguments: - $ref: "#/components/schemas/ValueOnly" - inputArguments: - $ref: "#/components/schemas/ValueOnly" - clientTimeoutDuration: - type: string - pattern: "^(-?)P(?=.)((\\d+)Y)?((\\d+)M)?((\\d+)D)?(T(?=.)((\\d+)H)?((\\d+)M)?(\\d*(\\.\\d+)?S)?)?$" - type: object - required: - - clientTimeoutDuration - OperationResult: - allOf: - - $ref: '#/components/schemas/BaseOperationResult' - - properties: - inoutputArguments: - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/OperationVariable" - type: array - outputArguments: - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/OperationVariable" - type: array - type: object - OperationResultValueOnly: - allOf: - - $ref: '#/components/schemas/BaseOperationResult' - - properties: - inoutputArguments: - $ref: "#/components/schemas/ValueOnly" - outputArguments: - $ref: "#/components/schemas/ValueOnly" - type: object - PagedResult: - type: object - properties: - paging_metadata: - type: object - properties: - cursor: - type: string - example: wJlCDLIl6KTWypN7T6vc6nWEmEYe99Hjf1XY1xmqV-M=# - PackageDescription: - properties: - aasIds: - items: - type: string - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - maxLength: 2000 - type: array - packageId: - type: string - maxLength: 128 - type: object - PathItem: - type: string - pattern: "[A-Za-z][A-Za-z0-9_]+(\\.[A-Za-z][A-Za-z0-9_]+){0,}" - PropertyMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - properties: - valueType: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/DataTypeDefXsd" - PropertyValue: - oneOf: - - $ref: "#/components/schemas/StringValue" - - $ref: "#/components/schemas/NumberValue" - - $ref: "#/components/schemas/BooleanValue" - ProtocolInformation: - properties: - href: - type: string - maxLength: 2048 - endpointProtocol: - type: string - maxLength: 128 - endpointProtocolVersion: - type: array - items: - type: string - maxLength: 128 - subprotocol: - type: string - maxLength: 128 - subprotocolBody: - type: string - maxLength: 128 - subprotocolBodyEncoding: - type: string - maxLength: 128 - securityAttributes: - type: array - items: - type: object - properties: - type: - type: string - enum: - - "NONE" - - "RFC_TLSA" - - "W3C_DID" - key: - type: string - value: - type: string - required: - - type - - key - - value - minItems: 1 - # TODO: align with content of the part 2 document - required: - - href - type: object - RangeMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - properties: - valueType: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/DataTypeDefXsd" - RangeValue: - properties: - max: - type: number - min: - type: number - required: - - min - - max - type: object - ReferenceElementMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - ReferenceElementValue: - $ref: "#/components/schemas/ReferenceValue" - ReferenceValue: - type: object - properties: - type: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ReferenceTypes" - keys: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Key" - RelationshipElementMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - RelationshipElementValue: - properties: - first: - $ref: "#/components/schemas/ReferenceValue" - second: - $ref: "#/components/schemas/ReferenceValue" - required: - - first - - second - type: object - Result: - properties: - messages: - items: - $ref: "#/components/schemas/Message" - type: array - type: object - ServiceDescription: - description: The Description object enables servers to present their capabilities to the clients, in particular which profiles they implement. At least one defined profile is required. Additional, proprietary attributes might be included. Nevertheless, the server must not expect that a regular client understands them. - example: >- - { - "profiles": [ - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-002", - "https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-002" - ] - } - properties: - profiles: - type: array - minItems: 1 - items: - type: string - enum: - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003" - - "https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-001" - - "https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-002" - - "https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-003" - - "https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-004" - - "https://admin-shell.io/aas/API/3/0/ConceptDescriptionServiceSpecification/SSP-001" - type: object - SpecificAssetIdValue: - type: object - description: Since patternProperties and propertyNames are not supported by OpenApi yet, the ValueOnly serialization for this elements works with the key-attribute as the JSON-property name and the value-attribute as the corresponding value. - StringValue: - type: string - SubmodelDescriptor: - allOf: - - $ref: "#/components/schemas/Descriptor" - properties: - administration: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AdministrativeInformation" - endpoints: - items: - $ref: "#/components/schemas/Endpoint" - minItems: 1 - type: array - idShort: - type: string - maxLength: 128 - id: - type: string - minLength: 1 - maxLength: 2000 - pattern: "^[\\x09\\x0A\\x0D\\x20-\\uD7FF\\uE000-\\uFFFD\\U00010000-\\U0010FFFF]*$" - semanticId: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - supplementalSemanticId: - type: array - items: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - minItems: 1 - required: - - id - - endpoints - type: object - example: '{ "id": "https://admin-shell.io/zvei/nameplate/1/0/Nameplate", "endpoints": [ { "href": { "href": "https://localhost:1234/api/v3.0/submodel", "endpointProtocol": "HTTP", "endpointProtocolVersion": ["1.1"] }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "opc.tcp://localhost:4840" }, "interface": "AAS-3.0" }, { "protocolInformation": { "href": "https://localhost:5678", "endpointProtocol": "HTTP", "endpointProtocolVersion": ["1.1"], "subprotocol": "OPC UA Basic SOAP", "subprotocolBody": "ns=2;s=MyAAS", "subprotocolBodyEncoding": "application/soap+xml" }, "interface": "AAS-3.0" } ] }' - SubmodelElementAttributes: - allOf: - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Referable" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasDataSpecification" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasSemantics" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Qualifiable" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasKind" - SubmodelElementListMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - properties: - orderRelevant: - type: boolean - semanticIdListElement: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference" - typeValueListElement: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/ModelType" - valueTypeListElement: - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/DataTypeDefXsd" - SubmodelElementListValue: - type: array - items: - $ref: "#/components/schemas/SubmodelElementValue" - SubmodelElementCollectionMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - SubmodelElementCollectionValue: - type: object - description: Since patternProperties and propertyNames are not supported by OpenApi yet, the ValueOnly serialization for this elements works with the key-attribute as the JSON-property name and the value-attribute as the corresponding value. - SubmodelElementMetadata: - allOf: - - $ref: "#/components/schemas/SubmodelElementAttributes" - oneOf: - - $ref: "#/components/schemas/BlobMetadata" - - $ref: "#/components/schemas/FileMetadata" - - $ref: "#/components/schemas/CapabilityMetadata" - - $ref: "#/components/schemas/EntityMetadata" - - $ref: "#/components/schemas/BasicEventElementMetadata" - - $ref: "#/components/schemas/MultiLanguagePropertyMetadata" - - $ref: "#/components/schemas/OperationMetadata" - - $ref: "#/components/schemas/PropertyMetadata" - - $ref: "#/components/schemas/RangeMetadata" - - $ref: "#/components/schemas/ReferenceElementMetadata" - - $ref: "#/components/schemas/AnnotatedRelationshipElementMetadata" - - $ref: "#/components/schemas/RelationshipElementMetadata" - - $ref: "#/components/schemas/SubmodelElementListMetadata" - - $ref: "#/components/schemas/SubmodelElementCollectionMetadata" - SubmodelElementValue: - oneOf: - - $ref: "#/components/schemas/BasicEventElementValue" - - $ref: "#/components/schemas/PropertyValue" - - $ref: "#/components/schemas/MultiLanguagePropertyValue" - - $ref: "#/components/schemas/BlobValue" - - $ref: "#/components/schemas/FileValue" - - $ref: "#/components/schemas/RangeValue" - - $ref: "#/components/schemas/ReferenceElementValue" - - $ref: "#/components/schemas/RelationshipElementValue" - - $ref: "#/components/schemas/AnnotatedRelationshipElementValue" - - $ref: "#/components/schemas/EntityValue" - - $ref: "#/components/schemas/SubmodelElementCollectionValue" - - $ref: "#/components/schemas/SubmodelElementListValue" - SubmodelMetadata: - allOf: - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Identifiable" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasDataSpecification" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Qualifiable" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasSemantics" - - $ref: "https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/HasKind" - SubmodelValue: - properties: - submodelElements: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - minItems: 1 - ValueOnly: - description: "The ValueOnly serialization of submodel elements (patternProperties and propertyNames will be supported propably with OpenApi 3.1). The full description of the generic JSON validation schema for the ValueOnly-serialization can be found in chapter 11.4.3 in Details of the Asset Administration Shell Part 2.\n" - type: object - - - responses: - 'accepted': - description: The server has accepted the request. - headers: - Location: - description: The URL where the client can find more information about the request. - schema: - type: string - 'no-content': - description: No Content, request was successful but no content is returned - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/AssetAdministrationShell' - 'found': - description: The target resource is available but at a different location. - headers: - Location: - description: The URL where the client can find the target resource. - schema: - type: string - 'bad-request': - description: Bad Request, e.g. the request parameters of the format of the request body is wrong. - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'unauthorized': - description: Unauthorized, e.g. the server refused the authorization attempt. - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'forbidden': - description: Forbidden - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'not-found': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'method-not-allowed': - description: Method Not Allowed, the server does not offer this method for the client - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'conflict': - description: Conflict, a resource which shall be created exists already. Might be thrown if a Submodel or SubmodelElement with the same ShortId is contained in a POST request. - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'internal-server-error': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'not-implemented': - description: Method Not Implemented by the server - content: - application/json: - schema: - $ref: '#/components/schemas/Result' - 'default': - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: '#/components/schemas/Result' \ No newline at end of file diff --git a/README.md b/README.md index 64de32b7..c55cf7c7 100644 --- a/README.md +++ b/README.md @@ -15,59 +15,4 @@ https://industrialdigitaltwin.org/en/content-hub/ ## Content -This repository provides the OpenAPI files published in the SwaggerHub organization [Plattform_i40](https://app.swaggerhub.com/search?owner=Plattform_i40). -All published SwaggerHub APIs are synchronized all the time with the respective folders in this repository using the [GitHub Integration](https://support.smartbear.com/swaggerhub/docs/integrations/github-sync.html) feature. In particular, the following APIs are contained: - -|API SPEC|GitHub|SwaggerHub| -|-----------------------------------------------------------------------|-----------------------------------------------------------------|----------------------------------------------------| -|Entire-API-Collection API |[Link](./Entire-API-Collection/V3.0.yaml)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/Entire-API-Collection)|https://app.swaggerhub.com/apis/Plattform_i40/Entire-API-Collection -|Asset Administration Shell Registry Service Specification|[Link](./AssetAdministrationShellRegistryServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRegistryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/RegistryServiceSpecification/V3.0_SSP-001 -|Asset Administration Shell Repository Service Specification|[Link](./AssetAdministrationShellRepositoryServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRepositoryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001 -|Asset Administration Shell Service Specification|[Link](./AssetAdministrationShellServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001 -|Submodel Registry Service Specification |[Link](./SubmodelRegistryServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRegistryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRegistryServiceSpecification/V3.0_SSP-001 -|Submodel Repository Service Specification|[Link](./SubmodelRepositoryServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification/V3.0_SSP-001 -|Submodel Service Specification|[Link](./SubmodelServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-001 -|Discovery Service Specification API |[Link](./DiscoveryServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification/V3.0_SSP-001 -|Concept Description Repository Service Specification|[Link](./ConceptDescriptionServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/ConceptDescriptionRepositoryServiceSpecification)|https://app.swaggerhub.com/apis/Plattform_i40/ConceptDescriptionRepositoryServiceSpecification/V3.0_SSP-001 -|Aasx-File-Server Service Specification |[Link](./AasxFileServerServiceSpecification)|[Link](https://app.swaggerhub.com/apis/Plattform_i40/AasxFileServerServiceSpecification) - -The following *domains* are synchronized manually as domain synchronization is not yet available in SwaggerHub: -|API SPEC|GitHub|SwaggerHub| -|------------------------------------------------------------------------|-----------------------------------------------------------------|----------------------------------------------------| -| Part1-MetaModel-Schemas Domain |[Link](./Part1-MetaModel-Schemas/openapi.yaml)|[Link](https://app.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas)| -| Part2-API-Schemas Domain |[Link](./Part2-API-Schemas/openapi.yaml)|[Link](https://app.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas)| -| DINSPEC16593-Schemas Domain (Deprecated) |[Link](./DINSPEC16593-Schemas/openapi.yaml)|[Link](https://app.swaggerhub.com/domains/Plattform_i40/DINSPEC16593-Schemas)| - - -## API Versions in GitHub Branches - -The `main` branch contains the latest released version of all APIs and Domains. Current and previously released states are tagged with the corresponding release version in this repository, and marked with the `Published` tag in SwaggerHub. -Working versions may be marked as `private` in SwaggerHub and therfore may not be visible to the public audience yet. In this repository, working versions appear as branches named after the target release version. -**Note:** In order to synchronize with the same GitHub branch, all versions should follow the exact same pattern. - -### Releases - -The following versioning scheme is applied for release tags: 'V\.\.\'. -Major versions indicate breaking changes while minor updates are backward compatible. -The patch position is increased whenever bugfixes need to be applied. -The following release contains the latest version of the AAS schemas (see also the [releases](https://github.com/admin-shell-io/aas-specs-api/releases) section of this repository): -* [3.0.1](https://github.com/admin-shell-io/aas-specs/releases/tag/V3.0.1) is the corresponding release for the `V3.0.1` version of the AAS APIs, containing the normative schemas for the published document "Specification of the Asset Administration Shell - Part 2: Application Programming Interfaces - **Version 3.0.1**". *Use this release if you want to work with the latest specified AAS version.* - -Previous releases (deprecated by [3.0.1](https://github.com/admin-shell-io/aas-specs/releases/tag/V3.0.1)): -* [3.0](https://github.com/admin-shell-io/aas-specs/releases/tag/V3.0) is the first major release for the AAS APIs, containing the normative API descriptions for the published document "Specification of the Asset Administration Shell - Part 2: Application Programming Interfaces - Version 3.0". - - -## Contributing - -Feature requests, reports about inconsistencies, mistakes *etc.* are highly -welcome! Please [submit a new issue]( -https://github.com/admin-shell-io/aas-specs-api/issues/new/choose -). - -If you want to contribute, see [CONTRIBUTING.md](CONTRIBUTING.md). - - - -## SwaggerHub GitHub Synchronization - -SwaggerHub requires a GitHub Access Token with `repo` permissions. It is good practice that the selected token has a defined expiration date. Therefore, at some point in time when the current token expires, the synchronization will fail and a new token needs to be added through the IDTA repository management team. +This branch of the repository provides the ASCII DOC sources for the "Details of the Asset Administration Shell: Application Programing Interfaces" specification. All source files are in the folder [documentation](./documentation) \ No newline at end of file diff --git a/SubmodelRegistryServiceSpecification/V3.0_SSP-001.yaml b/SubmodelRegistryServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index be8da5c6..00000000 --- a/SubmodelRegistryServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,191 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Registry Service Specification - description: >- - The Full Profile of the Submodel Registry Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodel-descriptors: - get: - tags: - - Submodel Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Registry API - summary: Creates a new Submodel Descriptor, i.e. registers a submodel - operationId: PostSubmodelDescriptor - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '201': - description: Submodel Descriptor created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Registry API - summary: Updates an existing Submodel Descriptor - operationId: PutSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0 - requestBody: - description: Submodel Descriptor object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - required: true - responses: - '204': - description: Submodel Descriptor updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Registry API - summary: Deletes a Submodel Descriptor, i.e. de-registers a submodel - operationId: DeleteSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0 - responses: - '204': - description: Submodel Descriptor deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/SubmodelRegistryServiceSpecification/V3.0_SSP-002.yaml b/SubmodelRegistryServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index 3a233185..00000000 --- a/SubmodelRegistryServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,113 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Registry Service Specification - description: >- - The Read Profile of the Submodel Registry Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodel-descriptors: - get: - tags: - - Submodel Registry API - summary: Returns all Submodel Descriptors - operationId: GetAllSubmodelDescriptors - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Requested Submodel Descriptors - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelDescriptorsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel-descriptors/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Registry API - summary: Returns a specific Submodel Descriptor - operationId: GetSubmodelDescriptorById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 - responses: - '200': - description: Requested Submodel Descriptor - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelDescriptor' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' diff --git a/SubmodelRepositoryServiceSpecification/V3.0_SSP-001.yaml b/SubmodelRepositoryServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 51764835..00000000 --- a/SubmodelRepositoryServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,1657 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Repository Service Specification - description: >- - The entire Submodel Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodels: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels - operationId: GetAllSubmodels - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new Submodel - operationId: PostSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodel/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '201': - description: Submodel created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$metadata: - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all Submodels - operationId: GetAllSubmodels-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$value: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in their ValueOnly representation - operationId: GetAllSubmodels-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$reference: - get: - tags: - - Submodel Repository API - summary: Returns the References for all Submodels - operationId: GetAllSubmodels-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: References of the requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$path: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in the Path notation - operationId: GetAllSubmodels-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel - operationId: GetSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PutSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelById/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PatchSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a Submodel - operationId: DeleteSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes of an existing Submodel - operationId: PatchSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The metadata attributes of the Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the ValueOnly representation - operationId: GetSubmodelById-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the values of an existing Submodel - operationId: PatchSubmodelById-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the Reference of a specific Submodel - operationId: GetSubmodelById-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the Path notation - operationId: GetSubmodelById-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element - operationId: PostSubmodelElement_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing SubmodelElement - operationId: PatchSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: SubmodelElement object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes an existing SubmodelElement - operationId: PatchSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Metadata attributes of the SubmodelElement - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the value of an existing SubmodelElement - operationId: PatchSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The SubmodelElement in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Upload only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Synchronously or asynchronously invokes an Operation at a specified path - operationId: InvokeOperation_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - parameters: - - name: async - in: query - description: Determines whether an operation invocation is performed asynchronously or synchronously - schema: - type: boolean - default: false - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Synchronously or asynchronously invokes an Operation at a specified path - operationId: InvokeOperation-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - parameters: - - name: async - in: query - description: Determines whether an operation invocation is performed asynchronously or synchronously - schema: - type: boolean - default: false - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/AssetAdministrationShellIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel Repository API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the status of an asynchronously invoked Operation - operationId: GetOperationAsyncStatus - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the Operation result of an asynchronously invoked Operation - operationId: GetOperationAsyncResult - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel Repository API - summary: Returns the Operation result of an asynchronously invoked Operation - operationId: GetOperationAsyncResult-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Value of the operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelRepositoryServiceSpecification/V3.0_SSP-002.yaml b/SubmodelRepositoryServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index da1fed37..00000000 --- a/SubmodelRepositoryServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,854 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Repository Service Specification - description: >- - The Read Profile of the Submodel Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodels: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels - operationId: GetAllSubmodels - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$metadata: - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all Submodels - operationId: GetAllSubmodels-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$value: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in their ValueOnly representation - operationId: GetAllSubmodels-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$reference: - get: - tags: - - Submodel Repository API - summary: Returns the References for all Submodels - operationId: GetAllSubmodels-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: References of the requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$path: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in the Path notation - operationId: GetAllSubmodels-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel - operationId: GetSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the ValueOnly representation - operationId: GetSubmodelById-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the Reference of a specific Submodel - operationId: GetSubmodelById-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel in the Path notation - operationId: GetSubmodelById-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - /submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelRepositoryServiceSpecification/V3.0_SSP-003.yaml b/SubmodelRepositoryServiceSpecification/V3.0_SSP-003.yaml deleted file mode 100644 index 2943300f..00000000 --- a/SubmodelRepositoryServiceSpecification/V3.0_SSP-003.yaml +++ /dev/null @@ -1,1073 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Repository Service Specification - description: >- - The Template profile of the Submodel Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-003 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-003 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodels: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels - operationId: GetAllSubmodels - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new Submodel - operationId: PostSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodel/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '201': - description: Submodel created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$metadata: - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all Submodels - operationId: GetAllSubmodels-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$value: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in their ValueOnly representation - operationId: GetAllSubmodels-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel - operationId: GetSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PutSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelById/3/0 - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing Submodel - operationId: PatchSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a Submodel - operationId: DeleteSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 - responses: - '204': - description: Submodel deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes of an existing Submodel - operationId: PatchSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The metadata attributes of the Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element - operationId: PostSubmodelElement_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel Repository API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates an existing SubmodelElement - operationId: PatchSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: SubmodelElement object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the metadata attributes an existing SubmodelElement - operationId: PatchSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Metadata attributes of the SubmodelElement - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel Repository API - summary: Updates the value of an existing SubmodelElement - operationId: PatchSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The SubmodelElement in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel Repository API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Upload only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel Repository API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelRepositoryServiceSpecification/V3.0_SSP-004.yaml b/SubmodelRepositoryServiceSpecification/V3.0_SSP-004.yaml deleted file mode 100644 index 7ed2f3ac..00000000 --- a/SubmodelRepositoryServiceSpecification/V3.0_SSP-004.yaml +++ /dev/null @@ -1,575 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Repository Service Specification - description: >- - The Read Template profile of the Submodel Repository Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-004 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-004 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - /submodels: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels - operationId: GetAllSubmodels - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$metadata: - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all Submodels - operationId: GetAllSubmodels-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/$value: - get: - tags: - - Submodel Repository API - summary: Returns all Submodels in their ValueOnly representation - operationId: GetAllSubmodels-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodels/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 - - https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SemanticId' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShort' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodels - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns a specific Submodel - operationId: GetSubmodelById - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodelById-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - description: Default error handling for unmentioned status codes - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - /submodels/{submodelIdentifier}/submodel-elements/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - get: - tags: - - Submodel Repository API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata_SubmodelRepo #TODO - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/SubmodelIdentifier' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel Repository API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath_SubmodelRepo - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelServiceSpecification/V3.0_SSP-001.yaml b/SubmodelServiceSpecification/V3.0_SSP-001.yaml deleted file mode 100644 index 925cb89a..00000000 --- a/SubmodelServiceSpecification/V3.0_SSP-001.yaml +++ /dev/null @@ -1,1374 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Service Specification - description: >- - The Full Profile of the Submodel Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-001 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /submodel: - get: - tags: - - Submodel API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Updates the Submodel - operationId: PutSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the Submodel - operationId: PatchSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the metadata attributes of the Submodel - operationId: PatchSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The metadata attributes of the Submodel object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$value: - get: - tags: - - Submodel API - summary: Returns the Submodel in the ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: ValueOnly representation of the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the values of the Submodel - operationId: PatchSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Submodel object in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$reference: - get: - tags: - - Submodel API - summary: Returns the Reference of the Submodel - operationId: GetSubmodel-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$path: - get: - tags: - - Submodel API - summary: Returns the Submodel in the Path notation - operationId: GetSubmodel-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel API - summary: Creates a new submodel element - operationId: PostSubmodelElement - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElement/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$value: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$reference: - get: - tags: - - Submodel API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$path: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - post: - tags: - - Submodel API - summary: Creates a new submodel element at a specified path within submodel elements hierarchy - operationId: PostSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '201': - description: Submodel element created successfully - headers: - Location: - description: URL of the newly created resource - schema: - type: string - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '409': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/conflict' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Updates an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 - - https://admin-shell.io/aas/API/SetSubmodelElementValueByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: deep - enum: - - deep # only 'deep' is allowed for PUT - #- core - requestBody: - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates an existing SubmodelElement - operationId: PatchSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelById/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: SubmodelElement object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel API - summary: Deletes a submodel element at a specified path within the submodel elements hierarchy - operationId: DeleteSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 - responses: - '204': - description: Submodel element deleted successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the metadata attributes an existing SubmodelElement - operationId: PatchSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: Metadata attributes of the SubmodelElement - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - required: true - responses: - '204': - description: SubmodelElement updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - patch: - tags: - - Submodel API - summary: Updates the value of an existing SubmodelElement - operationId: PatchSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - #- deep - - core # only 'core' is allowed for PATCH - requestBody: - description: The SubmodelElement in its ValueOnly representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - required: true - responses: - '204': - description: Submodel updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - put: - tags: - - Submodel API - summary: Uploads file content to an existing submodel element at a specified path within submodel elements hierarchy - operationId: PutFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/PutFileByPath/3/0 - requestBody: - description: File to upload - content: - multipart/form-data: - schema: - type: object - properties: - fileName: - type: string - file: - type: string - format: binary - encoding: - file: - contentType: application/octet-stream - required: true - responses: - '204': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Upload only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - delete: - tags: - - Submodel API - summary: Deletes file content of an existing submodel element at a specified path within submodel elements hierarchy - operationId: DeleteFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/DeleteFileByPath/3/0 - responses: - '200': - description: Submodel element updated successfully - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke-async: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke-async/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Asynchronously invokes an Operation at a specified path - operationId: InvokeOperationAsync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '202': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/accepted' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-status/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the status of an asynchronously invoked Operation - operationId: GetOperationAsyncStatus - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncStatus/3/0 - responses: - '200': - description: Operation result object containing information that the 'executionState' is still 'Running' - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/BaseOperationResult' - '302': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/found' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-results/{handleId}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/operation-results/{handleId}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/HandleId' - get: - tags: - - Submodel API - summary: Returns the value of the Operation result of an asynchronous invoked Operation - operationId: GetOperationAsyncResult-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetOperationAsyncResult/3/0 - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelServiceSpecification/V3.0_SSP-002.yaml b/SubmodelServiceSpecification/V3.0_SSP-002.yaml deleted file mode 100644 index 346aeee7..00000000 --- a/SubmodelServiceSpecification/V3.0_SSP-002.yaml +++ /dev/null @@ -1,638 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Service Specification - description: >- - The Read Profile of the Submodel Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-002 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /submodel: - get: - tags: - - Submodel API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of a specific Submodel - operationId: GetSubmodel-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested Submodel in the metadata representation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$value: - get: - tags: - - Submodel API - summary: Returns the Submodel in the ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: ValueOnly representation of the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$reference: - get: - tags: - - Submodel API - summary: Returns the Reference of the Submodel - operationId: GetSubmodel-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested Reference - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$path: - get: - tags: - - Submodel API - summary: Returns the Submodel in the Path notation - operationId: GetSubmodel-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Submodel in Path notation - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy - operationId: GetAllSubmodelElements - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$metadata: - get: - tags: - - Submodel API - summary: Returns the metadata attributes of all submodel elements including their hierarchy - operationId: GetAllSubmodelElements-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$value: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the ValueOnly representation - operationId: GetAllSubmodelElements-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$reference: - get: - tags: - - Submodel API - summary: Returns the References of all submodel elements - operationId: GetAllSubmodelElements-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/$path: - get: - tags: - - Submodel API - summary: Returns all submodel elements including their hierarchy in the Path notation - operationId: GetAllSubmodelElements-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: List of found submodel elements in the Path notation - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/SubmodelElement' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the matadata attributes of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Metadata - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Metadata attributes of the requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the ValueOnly representation - operationId: GetSubmodelElementByPath-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelElementValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns the Referene of a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath-Reference - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - name: level - in: query - description: Determines the structural depth of the respective resource content - required: false - schema: - type: string - default: core - enum: - # - deep - - core # only 'core' is allowed for Content=Reference - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$path: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - responses: - '200': - description: Requested submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - get: - tags: - - Submodel API - summary: Downloads file content from a specific submodel element from the Submodel at a specified path - operationId: GetFileByPath - x-semanticIds: - - https://admin-shell.io/aas/API/GetFileByPath/3/0 - responses: - '200': - description: Requested file - headers: - Content-Disposition: - schema: - type: string - description: In order to physically download the file usually set to attachment with a filename - example: 'attachment; filename="filename.jpg"' - content: - application/octet-stream: - schema: - type: string - format: binary - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Download only valid for File submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /serialization: - get: - tags: - - Serialization API - summary: Returns an appropriate serialization based on the specified format (see SerializationFormat) - operationId: GenerateSerializationByIds - x-semanticIds: - - https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 - parameters: - - name: aasIds - in: query - description: The Asset Administration Shells' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: submodelIds - in: query - description: The Submodels' unique ids (UTF8-BASE64-URL-encoded) - style: form - explode: true - schema: - type: array - items: - type: string - - name: includeConceptDescriptions - in: query - description: Include Concept Descriptions? - style: form - explode: true - schema: - type: boolean - default: true - responses: - '200': - description: Requested serialization based on SerializationFormat - content: - application/asset-administration-shell-package+xml: - schema: - description: AASX package - type: string - format: binary - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/SubmodelServiceSpecification/V3.0_SSP-003.yaml b/SubmodelServiceSpecification/V3.0_SSP-003.yaml deleted file mode 100644 index 63fdb307..00000000 --- a/SubmodelServiceSpecification/V3.0_SSP-003.yaml +++ /dev/null @@ -1,199 +0,0 @@ -openapi: 3.0.3 -info: - title: DotAAS Part 2 | HTTP/REST | Submodel Service Specification - description: >- - The Value Profile of the Submodel Service Specification as part of the [Specification of the Asset Administration Shell: Part 2](http://industrialdigitaltwin.org/en/content-hub). - - Publisher: Industrial Digital Twin Association (IDTA) April 2023 - contact: - name: Industrial Digital Twin Association (IDTA) - email: info@idtwin.org - license: - name: CC BY 4.0 - url: https://creativecommons.org/licenses/by/4.0/ - version: V3.0.1_SSP-003 - x-profile-identifier: https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003 -servers: -- url: '{protocol}://{host_name}:{port}/api/{version_prefix}' - variables: - protocol: - description: 'Allows access through http and https (recommended)' - enum: - - 'http' - - 'https' - default: 'https' - host_name: - default: admin-shell.io - description: 'Hostname of server hosting the api' - port: - enum: - - '80' - - '443' - default: '443' - description: '80 is default for http, 443 for https' - version_prefix: - enum: - - 'v3.0' - default: v3.0 -paths: - - /submodel: - get: - tags: - - Submodel API - summary: Returns the Submodel - operationId: GetSubmodel - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodel/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: Requested Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0.1#/components/schemas/Submodel' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/$value: - get: - tags: - - Submodel API - summary: Returns the Submodel in the ValueOnly representation - operationId: GetSubmodel-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/GetSubmodelById/3/0 - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/Extent' - responses: - '200': - description: ValueOnly representation of the Submodel - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequest' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/parameters/IdShortPath' - post: - tags: - - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly - x-semanticIds: - - https://admin-shell.io/aas/API/InvokeOperationSync/3/0 - requestBody: - description: Operation request object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationRequestValueOnly' - required: true - responses: - '200': - description: Operation result object - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/OperationResultValueOnly' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/Result' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/default' - - /description: - get: - tags: - - Description API - summary: Returns the self-describing information of a network resource (ServiceDescription) - operationId: GetDescription - x-semanticIds: - - https://admin-shell.io/aas/API/Descriptor/GetDescription/3/0 - responses: - '200': - description: Requested Description - content: - application/json: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/ServiceDescription' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/responses/forbidden' diff --git a/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.adoc b/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.adoc new file mode 100644 index 00000000..a767296a --- /dev/null +++ b/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.adoc @@ -0,0 +1,6454 @@ +:toc: left +:toc-title: Specification of the Asset Administration Shell. Part 2: Application Programming Interfaces +:sectlinks: +:sectnums: +:stylesheet: ../../style.css +:favicon: ../../favicon.png +:imagesdir: media/ +:nofooter: + += image:../../../idta-logo.png[] Part 2: Application Programming Interfaces +:author: IDTA +:version-label: Number +:revnumber: 01002-3-0 +:revdate: April 2023 +:revremark: Specification of the Asset Administration Shell + + +== Preamble + +=== Editorial Notes + +This document (version 3.0) was produced from November 2021 to May 2023 by the joint sub working group "Asset Administration Shell" of the working group "Reference Architectures, Standards and Norms" of the Plattform Industrie 4.0 and the working group "Open Technology" of the Industrial Digital Twin Association (IDTA). It is the first release published by the Industrial Digital Twin Association. + +Earlier versions of this document were release candidates and used the version 1.0. It has been decided in the meantime that this first release will start with version 3.0, in line with the related release of the metamodel. + +Version 1.0 RC02 of this document was developed from November 2020 to November 2021 by the joint working groups “Asset Administration Shell” and “Infrastructure of the Asset Administration Shell” of the Plattform Industrie 4.0 working group “Reference Architectures, Standards and Norms“. + +Version 1.0 RC01 of this document was developed from December 2019 to November 2020 by the sub working groups “Asset Administration Shell” and “Infrastructure of the Asset Administration Shell” of the Plattform Industrie 4.0 working group “Reference Architectures, Standards and Norms“. + +This document is Part 2 of the document series “Specification of the Asset Administration Shell”. + +This specification is versioned using Semantic Versioning 2.0.0 and follows the semver specification link:#bib4[[4\]]. + +=== Metamodel Versions + +This document (version 3.0) uses the following parts of the “Specification of the Asset Administration Shell” series: + +* Part 1: Metamodel in version 3.0 link:#bib1[[1\]] +* Part 3a: Data Specification – IEC 61360 in version 3.0 link:#bib2[[2\]] +* Part 5: Package File Format (AASX) in version 3.0 link:#bib3[[3\]] + +=== Scope of this Document + +This document specifies the interfaces as well as the APIs in selected technologies for the Asset Administration Shells and its submodels. + +=== Structure of the Document + +Clause 3 gives an introduction to the topic. General topics are discussed in Clause 4. The technology-neutral specification of the interfaces of the Asset Administration Shell can be found in Clauses 5 to 11. + +Clause 12 defines the API specification for HTTP/REST. Annex B gives an example for the ValueOnly-serialization of the payload. + +Clause 13 provides a summary and outlook. + +The tables used to specify operations and interfaces are explained in the annex. Additionally, non-normative examples are given to illustrate in particular the different serialization alternatives. + +== Terms, Definitions and Abbreviations + +=== Terms and Definitions + +==== +[.underline]#Please note#: the definitions of terms are only valid in a certain context. This glossary applies only within the context of this document. +==== + +If available, definitions were taken from IEC 63278-1 DRAFT, July 2022. + +*API* + +specification of the set of operations and events that forms an API in a selected technology + +*API Operation* + +specification of the operations (procedures) that may be called through an API + +*Asset Administration Shell (AAS)* + +standardized digital representation of an asset + + +==== +Note: Asset Administration Shell and Administration Shell are used synonymously. +==== + + +* [SOURCE: IEC 63278-1, note added] + +*Interface* + +defined connection point of a functional unit which can be connected to other functional units + + +==== +Note 1: “defined” means that the requirements and the assured properties of this connection point are described. + +Note 2: the combination of interfaces of function units is also called an interface. + +Note 3: in an information system, the defined exchange of information takes place at this point. + +Note 4: an interface places certain requirements on the connection that is to be made. + +Note 5: an interface demands certain features. +==== + + +[Source: Glossary Industrie 4.0 + +DUDEN (modified) + +ISO/IEC 13066-1:2011(en), 2.15 (modified) + +DIN EN 60870-5-6:2009-11 (modified) + +DIN IEC 60625-1:1981-05 (modified)] + +*Interface Operation* + +interface operations define interaction patterns via the specified interface + +*operation* + +executable realization of a function + + +==== +Note 1: the term method is synonymous to operation. + +Note 2: an operation has a name and a list of parameters [ISO 19119:2005, 4.1.3]. +==== + + +* [SOURCE: Glossary Industrie 4.0, editorial changes] + +*service* + +Demarcated scope of functionality which is offered by an https://www.plattform-i40.de/PI40/Redaktion/EN/Glossary/E/entity_glossary.html[entity] or organization via https://www.plattform-i40.de/PI40/Redaktion/EN/Glossary/I/interface_glossary.html[interfaces] + + +==== +Note: one or multiple operations can be assigned to one service. +==== + + +* [SOURCE: Glossary Industrie 4.0] + +*service specification* + +specification of a service according to the notation, architectural style and constraints of a selected technology + + +==== +Note: one or multiple API Operations can be assigned to one service specification. +==== + + +*Submodel* + +representation of an aspect of an asset + +* [SOURCE: IEC 63278-1] + +*SubmodelElement* + +element of a Submodel + +* [SOURCE: IEC 63278-1] + +=== Abbreviations + +[%autowidth, width="100%", cols="21%,79%",options="header",] +|=== +|*Abbreviation* |*Description* +|AAS |Asset Administration Shell +|AASX |Package file format for the AAS +|AML |AutomationML +|API |Application Programming Interface +|BITKOM |Bundesverband Informationswirtschaft, Telekommunikation und neue Medien e. V. +|BLOB |Binary Large Object +|CDD |Common Data Dictionary +|GUID |Globally unique identifier +|ID |Identifier +|IDTA |Industrial Digital Twin Association +|IEC |International Electrotechnical Commission +|IRDI |International Registration Data Identifier +|ISO |International Organization for Standardization +|JSON |JavaScript Object Notation +|MIME |Multipurpose Internet Mail Extensions +|OPC |Open Packaging Conventions (ECMA-376, ISO/IEC 29500-2) +|OPCF |OPC Foundation +|OPC UA |OPC Unified Architecture +|PDF |Portable Document Format +|RAMI4.0 |Reference Architecture Model Industrie 4.0 +|RDF |Resource Description Framework +|REST |Representational State Transfer +|RFC |Request for Comment +|ROA |Resource Oriented Architecture +|SOA |Service Oriented Architecture +|UML |Unified Modeling Language +|URI, URL, URN |Uniform Resource Identifier, Locator, Name +|VDE |Verband der Elektrotechnik Elektronik Informationstechnik e. V. +|VDI |Verein Deutscher Ingenieure e.V. +|VDMA |Verband Deutscher Maschinen- und Anlagenbau e.V. +|W3C |World Wide Web Consortium +|XML |eXtensible Markup Language +|ZIP |archive file format that supports lossless data compression +|ZVEI |Zentralverband Elektrotechnik- und Elektronikindustrie e. V. +|=== + +== Introduction + +This document defines APIs for enabling the access to the information provided by an Asset Administration Shell. The underlying information model is as defined in link:#bib1[[1\]]. + +Since an API can be specified in different technologies like HTTP/REST, MQTT and OPC UA, the specification offers a technology-neutral specification of the interfaces. + +While Part 5 of the specification series of the Asset Administration Shell link:#bib3[[3\]] mainly considered file exchange, this specification focuses on the API that allows online access to information provided by the AAS (see Figure 1). + +.Types of Information Exchange via Asset Administration Shells +image::image2.png[image2,width=495,height=312] + +== General + +=== Services, Interfaces and Interface Operations + +This document uses the Industrie 4.0 Service Model illustrated in + +Figure 2 for a uniform understanding and naming. It basically distinguishes between associated concepts on several levels (from left to right): + +* technology-neutral level: concepts that are independent from selected technologies; +* technology-specific level: concepts that are instantiated for a given technology and/or architectural style (e.g. HTTP/REST, OPC UA, MQTT); +* implementation level: concepts that are related to an implementation architecture that comprises one or more technologies (e. g. C#, C++, Java, Python); +* runtime level: concepts that are related to identifiable components in an operational Industry 4.0 system. + +This document deals with the concepts of the technology-neutral and technology-specific level. However, to avoid terminological and conceptual misunderstandings, the whole Industrie 4.0 Service Model is provided here. + +The technology-neutral level comprises the following concepts: + +* *Service*: a service describes a demarcated scope of functionality (including its informational and non-functional aspects), which is offered by an entity or organization via https://www.plattform-i40.de/PI40/Redaktion/EN/Glossary/I/interface_glossary.html[interfaces]. +* *Interface*: this is the most important concept as it is understood to be the unit of reusability across services and the unit of standardization when mapped to application programming interfaces (API) in the technology-specific level. One interface may be mapped to several APIs depending on the technology and architectural style used, e.g. HTTP/REST or OPC UA, whereby these API mappings also need to be standardized for the sake of interoperability. +* *Interface-Operation*: interface operations define interaction patterns via the specified interface. + +The technology-specific level comprises the following concepts: + +* *Service Specification*: specification of a service according to the notation, architectural style, and constraints of a selected technology. Among others, it comprises and refers to the list of APIs that forms this service specification. These may be I4.0-defined standard APIs but also other, proprietary APIs. + + +==== +Note: such a technology-specific service specification may be but does not have to be derived from the “service” described in the technology-neutral form. It is up to the system architect and service engineer to tailor the technology-specific service according to the needs of the use cases. +==== + + +* *API*: specification of the set of operations and events that forms an API in a selected technology. It is derived from the interface description on the technology-neutral level. Hence, if there are several selected technologies, one interface may be mapped to several APIs. +* *API-Operation*: specification of the operations (procedures) that may be called through an API. It is derived from the interface operation description on the technology-neutral level. When selecting technologies, one interface operation may be mapped to several API-operations; several interface operations may also be mapped to the same API-operation. + +The implementation level comprises the following concepts: + +* *Service-Implementation*: service realized in a selected implementation language following the specification in the Service Specification description on the technology-specific level. +* *API-Implementation*: set of operations realized in a selected implementation language following the specification in the API description on the technology-specific level. +* *API-Operation-Implementation*: concrete realization of an operation in a selected implementation language following the specification in the API-Operation description on the technology-specific level. + +The runtime level comprises the following concepts: + +* *Service-Instance*: instance of a Service-Implementation including its API-Instances for communication. Additionally, it has an identifier to be identifiable within a given context. + +* *API-Instance*: instance of an API-Implementation which has an endpoint to get the information about this instance and the related operations. + +* *API-Operation-Instance*: instance of an API-Operation-Implementation which has an endpoint to get invoked. + +.Services, Interfaces & APIs and Operations +image::image3.png[image3,width=608,height=361] + +One important message from the Industrie 4.0 Service Model is that it is the level of the interface (mapped to technology-specific APIs) that + +* provides the unit of reusability, +* is the foundation for interoperable services, and +* provides the reference unit for compliance statements. + +Therefore, this document defines the interfaces and operations which are needed for interaction regarding the elements of the Asset Administration Shell metamodel starting with Clause 5. + +=== Design Principles + +The operations of the interfaces follow a resource-oriented approach which is close to general REST principles but not as strict in every situation. The approach consists of the three main agreements: + +* Stateless: the API is stateless. Each operation is independent. The server is always consistent after each operation. +* Resources (nouns): each resource is a clearly defined noun. This means that it has a specific name and its relation to other nouns is defined. The nouns and the relationships between them are taken from the list of referable objects of “Specification of the Asset Administration Shell Part 1” and their relationships. Clause 10.2 gives an additional list of resources. +* Methods (verbs): a small set of standard REST methods (GET, POST, PUT, DELETE) is used to describe the semantic of the most common operations. There are only a few exceptions for situations where the standard methods do not fit (e.g. GETALL, SET, INVOKE). + +The methods are: + +* GET: a GET returns a single resource based on the resource identifier which is the identifier link:#bib1[[1\]] for identifiables and the idShortPath for referables. +* GETALL: returns a list of resources based on optionally available parameters such as filters. +* POST: creates a new resource. The identifier of the resource is part of the resource description. This is necessary because the id of identifiables is globally unique and should be the identifier for the object in every system. This implies that the creation of an identifiable is idempotent. There shall never be more than one identifiable with the same ID in one system. For example, trying to post the same AAS object twice will not create two AAS resources. +* PUT: replaces an existing resource. +* PATCH: updates an existing resource. The content to be replaced will be defined by the given SerializationModifiers, e.g. content=value provides the ValueOnly-serialization to update all values in the existing resource. The structure of the existing resource on the server and of the content given by the PATCH must be the same. + + + +==== +Note: values remain unchanged with content=metadata. +==== + + +* DELETE: deletes a resource based on a given identifier. +* SET: sets the value of an object, e.g. the value of a Property. +* INVOKE: invokes an operation at a specified path. + + +==== +Note: these methods are intended for the naming of interfaces as described in +Figure 2. They shall not be interpreted as new protocol methods, e.g. on HTTP level. +==== + + +Naming rules for operations: + +____ +The following rules shall apply for the operation names in Asset Administration Shell Interface, Submodel Interface, Shell Repository Interface, Submodel Repository Interface, Concept Description Repository Interface: +____ + +[caption=] +[%autowidth, width="100%", cols="29%,6%,65%",grid=none,] +|=== +|** |*::=* |*[] + +["By"]* +|** |*::=* |*"Get" \| "GetAll" \| "Put" \| "Post" \| "Patch" \| "Delete" \| "Set" \| "Invoke"* +|** |*::=* |*"AssetAdministrationShell"["s"] \| "SubmodelReference" ["s"] \| + +"AssetInformation" \| "Submodel"["s"] \| "SubmodelElement"["s"] \| "ConceptDescription"["s"]* +|** |*::=* |*"Value" \| "IdShortPath" \| "Reference"* +|** |*::=* |*"Id" \| "SemanticId" \| "ParentPathAndSemanticId" \| "Path" \| "AssetId" \| "IdShort" \| "IsCaseOf" \| "DataSpecificationReference"* +|=== + +____ +[.underline]#Examples:# + +GetSubmodel has method verb “Get” and element name “Submodel”. + +GetAllSubmodelElementsByPath has method verb “GetAll” and element name “SubmodelElements” plus a by-qualifier “Path”. +____ + +=== Semantic References for Operations + +The operations of this document need unique identifiers to reach a common understanding and allow all involved parties to reference the same things. These identifiers need to be globally unique and understandable by the community and implementing systems. Furthermore, the identifiers need to support a versioning scheme for future updates and extensions of the metamodel. The identifiers defined in this document are reused in related resources, for instance REST API operations or in self-descriptions of implementing services. + +Internationalized Resource Identifiers (IRIs), Uniform Resource Identifiers (URIs) link:#bib5[[5\]] in particular, and the requirements of DIN SPEC 91406 link:#bib6[[6\]], serve as the basic format. Further design decisions include ‘https’ as the URI scheme, and the controlled domain name ‘admin-shell.io’ as the chosen authority. Both decisions guarantee the interoperability of the identifiers and their durability, since URIs are generally well-known and proven, while the domain is controlled and served through the Plattform Industrie 4.0. All identifiers included in the ‘admin-shell.io’ domain are described in a lightweight catalogue in the form of markdown documents; they are continuously maintained and updated [https://github.com/admin-shell-io/id]. The catalogue itself is structured in several sub-namespaces specified by the first path parameter. All URIs of this document reflect entities of the core metamodel, which are contained in the sub-namespace identified with the ‘/aas/API’ path. + +The described identifiers appear mainly in the semanticId field of every class and operation. They are required since the class name is not necessarily constant over time. The respective semanticIds, however, guarantee the unique and certain relation between a reference and the referenced class or operation. The URIs are constructed as follows (compare to Clause Semantic Identifiers for Metamodel and Data Specifications in Part 1 link:#bib1[[1\]]). + + +==== +Note 1: version information is explicitly included in each identifier. + +Note 2: even though the usage of the ‘https’ scheme might indicate URLs, all identifiers are regarded as URI look ups; dereferencing them cannot be expected. +==== + + +The following grammar is used to create valid identifiers: + +* ::= "/aas/API/""/"* + +* ::= "https://admin-shell.io* + +* ::= \{}+* + +* ::= \{}+"/"\{}+["/"\{}+]* + +* ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"* + +* ::= an unreserved character permitted by DIN SPEC 91406* + +*? ::= zero or one* + +*+ ::= one or more* + + +Examples for valid identifiers: + +* https://admin-shell.io/aas/API/GetSubmodel/1/23 +* https://admin-shell.io/aas/API/GetAllSubmodelElements/1/0/RC03 +* https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 + +Examples for invalid identifiers: + +* http://admin-shell.io/API/GetSubmodel/1/0 + +The scheme is different to ‘https’, and the ‘aas’ path segment is missing +* https://admin-shell.io/aas/API/GetSubmodel + +Version information is missing +* https://admin-shell.io/aas/API/GetSubmodel/1/0#0173-%20ABC#001 + +The URI includes DIN SPEC 91406-reserved (#) and impermissible (%) characters + +=== References and Keys + +The concept of references is introduced in Part 1 of the series “ Specification of the Asset Administration Shell” link:#bib1[[1\]]. + +When defining interfaces, a distinction is made between relative references and absolute references. + +Absolute references require a global unique id as starting point of the reference to be resolvable. In this case the type “Reference” is used. + +Relative references do not start with a global unique id. Instead, it is assumed that the context is given and unique. In this case, the key list only contains keys with _Key/type_ that references a non-identifiable referable (e.g. a Property, a Range, a RelationshipElement, etc.). + +=== Special Parameters + +The following table describes special parameters used for consistency throughout the document. + +.Special Parameters +[%autowidth, width="100%", cols="20%,80%",options="header",] +|=== +|*Parameter* |*Description* +|path |IdShort-Path via relative Reference/Keys to a submodel element +|OperationHandle |The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution +|OperationResult |The returned result of an operation’s invocation +|SerializationModifier |Defines the format of the input or the output of an operation +|SerializationFormat |Determines the format of serialization, i.e. JSON, XML, RDF, AML, etc. +|ShellDescriptor |Object containing the Asset Administration Shell’s identification and endpoint information +|SubmodelDescriptor |Object containing the Submodel’s identification and endpoint information +|SpecificAssetId |The name of the specific asset identifier or the predefined name “_globalAssetId_” that would refer to the _AssetInformation/globalAssetId_ +|SemanticId |Identifier of the semantic definition +|=== + +=== Relation of Interfaces + +The following chapters define several interfaces, which work together as a system and support different deployment scenarios. + +There are three major components of the overall system: + +[arabic] +. Repositories store the data of Asset Administration Shells, Submodels, and Concept Descriptions, +. Registries are “directories” which store AAS-IDs and Submodel-IDs together with the related endpoints (typically a URL-path into a repository or to a single AAS/Submodel), +. discovery (servers) supports a fast search and only store copies of essential information, i.e. key value pairs to find IDs by other IDs. + +Figure 3 shows a typical sequence. Discovery finds the AAS-ID for a given Asset-ID. A Registry provides the endpoint for a given AAS-ID. Such an endpoint for an AAS and the related Submodel-IDs make the submodels with their submodelElements accessible. + +.Retrieval of Asset-related Information by AAS and Submodels +image::image4.jpeg[Ein Bild, das Diagramm enthält. Automatisch generierte Beschreibung,width=642,height=610] + +The Asset Administration Shell model is an asset-oriented model. + +An Asset-ID may be retrieved e.g. by a QRCODE on the asset, by an RFID for the asset, from the firmware of the asset or from an asset database. IEC 61406 (formerly DIN SPEC 91406) defines the format of such Asset-IDs. + +The “Administration Shell Basic Discovery Interface” may be used with an Asset-ID to get the related AAS-IDs (“GetAllAssetAdministrationShellIdsByAssetLink”). + +The “Asset Administration Shell Registry Interface” may be used with an AAS-ID to retrieve the related descriptor for an AAS (“GetAssetAdministrationShellDescriptorById”). The retrieved AAS Descriptor includes the endpoint for the “Asset Administration Shell Interface”. + +The “Asset Administration Shell Interface” makes the information about the AAS itself and the references to the related submodels available. + +The related submodels of an AAS are retrieved by “GetAllSubmodelReferences”. Such a reference includes the SM-ID of a related submodel. + +Similarly to the AAS above, the “Submodel Registry Interface” may be used to retrieve the related descriptor for a submodel (“GetSubmodelDescriptorById”) with a specific SM-ID. The retrieved Submodel Descriptor includes the endpoint for the “Submodel Interface”. + +The “Submodel Interface” makes the information about the submodel itself and all its included submodel elements available. + +Asset Administration Shells and submodels may be deployed on different endpoints in different ways. + +One example is the deployment of an AAS on a device. In this case, the AAS might be fixed and might not be changed or deleted. In a cloud scenario, a single AAS may also be deployed as a single container (e.g. docker container). + +Another example is the deployment of many Asset Administration Shells in an AAS Repository. In this case, the “Asset Administration Shell Repository Interface” may allow to create and manage multiple AAS in the repository. + +The separate interfaces of the HTTP/REST API allow many ways to support different deployments. + +For an AAS repository, the combination [.gray]#“Asset Administration Shell Repository Interface”#, [.red]#“Asset Administration Shell Interface”#, [.blue]#“Submodel Interface”#, “Serialization Interface”, and “Self-Description Interface” is proposed. + +This will result in the following HTTP/REST paths as described in a combined OpenAPI file (https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001)[For easier reading only the standard paths are shown in the following: $metadata, $value, $reference and $path parameter paths are additionally contained in the OpenAPI file.]: + +[.gray]#/shells# + +[.gray]#/shells/\{aas-identifier}# + +[.gray]#/shells/\{aas-identifier}#[.red]##/asset-information## + +[.gray]#/shells/\{aas-identifier}#[.red]##/asset-information/thumbnail## + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodel-refs## + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodel-refs/\{submodel-identifier}## + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}## + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}/attachment# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}/invoke# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}/invoke-async# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}/operation-status/\{handleId}# + +[.gray]#/shells/\{aas-identifier}#[.red]##/submodels/\{submodel-identifier}##[.blue]#/submodel-elements/\{idShortPath}/operation-results/\{handleId}# + +/serialization + +/description + +If the repository also supports AASX Packages, it shall be extended by additionally supporting a “AASX File Server” Profile [Related OpenAPI file: https://app.swaggerhub.com/apis/Plattform_i40/AasxFileServerServiceSpecification/V3.0_SSP-001]. + +The example of a device or container containing one AAS with its related submodels will result in the following HTTP/REST paths as described in the related OpenAPI file (https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001)^2^: + +[.red]#/aas# + +[.red]#/aas/asset-information# + +[.red]#/aas/asset-information/thumbnail# + +[.red]#/aas/submodel-refs# + +[.red]#/aas/submodel-refs/\{submodel-identifier}# + +[.red]#/aas/submodels/\{submodel-identifier}# + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}/attachment## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}/invoke## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}/invoke-async## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}/operation-status/\{handleId}## + +[.red]#/aas/submodels/\{submodel-identifier}#[.blue]##/submodel-elements/\{idShortPath}/operation-results/\{handleId}## + +/serialization + +/description + + +==== +Note: identifiers are base64url-encoded in the API, i.e. \{aas-identifier} and [.green]#\{submodel-identifier}#. [.blue]#The \{idShortPath} is URL-encoded in the API#. +==== + + +== Asset Administration Shell Interfaces + +=== General + +These interfaces make it possible to access the elements of Asset Administration Shells or Submodels. + +The AASX File Server Interface enables management of AASX packages on a server. A list of available packages can be retrieved. Each package in the list can be downloaded, uploaded, or deleted. New packages can also be added. + +AASX packages are stored and managed independently from instantiated Asset Administration Shells or submodels on a server. The server documentation shall contain a description of when and how AASX packages are handled, e.g. if Asset Administration Shells or Submodels in AASX packages are instantiated at startup of the server and/or if they are also instantiated when an AASX package is changed by an API operation. + +=== Asset Administration Shell Interface and Operations + +==== Asset Administration Shell Interface + +[%autowidth, width="100%", options=header] +|=== +2+|Interface: Asset Administration Shell +h|*Operation Name* h|*Description* +|GetAssetAdministrationShell |Returns the Asset Administration Shell +|PutAssetAdministrationShell |Replaces the current Asset Administration Shell +|GetAllSubmodelReferences |Returns all Submodel References +|PostSubmodelReference |Creates a Submodel Reference at the Asset Administration Shell +|DeleteSubmodelReference |Deletes a specific Submodel Reference from the Asset Administration Shell +|GetAssetInformation |Returns the Asset Information +|PutAssetInformation |Replaces the Asset Information +|GetThumbnail |Returns the thumbnail file +|PutThumbnail |Replaces the thumbnail file +|DeleteThumbnail |Deletes the thumbnail +|=== + +==== Operation GetAssetAdministrationShell + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAssetAdministrationShell +|*Explanation* |Returns the Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/GetAssetAdministrationShell/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier |Defines the format of the response |no |SerializationModifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Administration Shell |yes |AssetAdministrationShell |1 +|=== + +==== Operation PutAssetAdministrationShell + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutAssetAdministrationShell +|*Explanation* |Replaces the Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/PutAssetAdministrationShell/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aas |AssetAdministrationShell |yes |Asset Administration Shell object |1 +5+h|Output Parameter +|statusCode |StatusCode |yes |Status code |1 +|payload |AssetAdministrationShell |yes |Replaced Asset Administration Shell |1 +|=== + +==== Operation GetAllSubmodelReferences + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodelReferences +|*Explanation* |Returns all Submodel References +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Submodel References |yes |Reference |0..* +|=== + +==== Operation PostSubmodelReference + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostSubmodelReference +|*Explanation* |Creates a Submodel Reference at the Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/PostSubmodelReference/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* | *Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodelRef | Reference to the Submodel |yes |Reference |1 +5+h|Output Parameter +|statusCode | Status code |yes |StatusCode |1 +|payload | Created Submodel Reference |yes |Reference |1 +|=== + +==== Operation DeleteSubmodelReference + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteSubmodelReference +|*Explanation* |Deletes the Submodel Reference from the Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* | *Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodelId | The unique id of the Submodel for the reference to be deleted |yes |Identifier |1 +5+h|Output Parameter +|statusCode | Status code |yes |StatusCode |1 +|=== + +==== Operation GetAssetInformation + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAssetInformation +|*Explanation* |Returns the Asset Information +|*semanticId* |https://admin-shell.io/aas/API/GetAssetInformation/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Information |yes |AssetInformation |1 +|=== + +==== Operation PutAssetInformation + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutAssetInformation +|*Explanation* |Replaces the Asset Information +|*semanticId* |https://admin-shell.io/aas/API/PutAssetInformation/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|assetInfo |Asset Information object |yes |AssetInformation |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation GetThumbnail + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetThumbnail +|*Explanation* |Returns the thumbnail file +|*semanticId* |https://admin-shell.io/aas/API/GetThumbnail/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested thumbnail file |yes |File Content |1 +|=== + +==== Operation PutThumbnail + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutThumbnail +|*Explanation* |Replaces the thumbnail file +|*semanticId* |https://admin-shell.io/aas/API/PutThumbnail/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|file |Thumbnail file |yes |File Content |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation DeleteThumbnail + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteThumbnail +|*Explanation* |Deletes the thumbnail file +|*semanticId* |https://admin-shell.io/aas/API/DeleteThumbnail/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +=== Submodel Interface and Operations + +==== Submodel Interface + +[%autowidth, width="100%", cols="42%,58%",options="header",] +|=== +2+|Interface: Submodel +h|*Operation Name* h|*Description* +|GetSubmodel |Returns the Submodel +|GetAllSubmodelElements |Returns all submodel elements including their hierarchy +|GetSubmodelElementByPath |Returns a specific submodel element from the Submodel at a specified path +|GetFileByPath |Returns a specific file from the Submodel at a specified path +|PutFileByPath |Replaces the file of an existing submodel element at a specified path within the submodel element hierarchy +|DeleteFileByPath |Deletes the file of an existing submodel element at a specified path within the submodel element hierarchy +|PutSubmodel |Replaces the Submodel +|PatchSubmodel |Updates the Submodel +|PostSubmodelElement |Creates a new submodel element as a child of the submodel. The idShort of the the new submodel element must be set in the payload. +|PostSubmodelElementByPath |Creates a new submodel element at a specified path within the submodel elements hierarchy. The idShort of the the new submodel element must be set in the payload. +|PutSubmodelElementByPath |Replaces an existing submodel element at a specified path within the submodel element hierarchy +|PatchSubmodelElementByPath |Updates an existing submodel element at a specified path within the submodel element hierarchy +|GetSubmodelElementValueByPath |Returns the value of the submodel element at a specified path according to the protocol-specific RAW-value payload +|DeleteSubmodelElementByPath |Deletes a submodel element at a specified path within submodel element hierarchy +|InvokeOperationSync |Synchronously invokes an Operation at a specified path with a client timeout in ms +|InvokeOperationAsync |Asynchronously invokes an Operation at a specified path with a client timeout in ms +|GetOperationAsyncStatus |Returns the current status of an asynchronously invoked operation +|GetOperationAsyncResult |Returns the OperationResult of an asynchronously invoked operation +|=== + +==== Operation GetSubmodel + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSubmodel +|*Explanation* |Returns the Submodel +|*semanticId* |https://admin-shell.io/aas/API/GetSubmodel/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier |Defines the format of the response |no |SerializationModifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Submodel |yes |Submodel |1 +|=== + +==== Operation GetAllSubmodelElements + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodelElements +|*Explanation* |Returns all submodel elements including their hierarchy +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier |Defines the format of the response |no |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested submodel elements |yes |SubmodelElement |0..* +|=== + +==== Operation GetSubmodelElementByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSubmodelElementByPath +|*Explanation* |Returns a specific submodel element from the Submodel at a specified path +|*semanticId* |https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|serializationModifier |Defines the format of the response |no |SerializationModifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested submodel element |yes |SubmodelElement |0..1 +|=== + +==== Operation GetFileByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetFileByPath +|*Explanation* |Returns a specific file from the Submodel at a specified path +|*semanticId* |https://admin-shell.io/aas/API/GetFileByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested file |yes |File Content |0..1 +|=== + +==== Operation PutFileByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutFileByPath +|*Explanation* |Replaces the file of an existing submodel element at a specified path within the submodel element hierarchy +|*semanticId* |https://admin-shell.io/aas/API/PutFileByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|payload |Replacing file |yes |File Content |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation DeleteFileByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteFileByPath +|*Explanation* |Deletes the file of an existing submodel element at a specified path within the submodel element hierarchy +|*semanticId* |https://admin-shell.io/aas/API/DeleteFileByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation PutSubmodel + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutSubmodel +|*Explanation* |Replaces the Submodel +|*semanticId* |https://admin-shell.io/aas/API/PutSubmodel/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodel |Submodel object |yes |Submodel |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced submodel |yes |Submodel |1 +|=== + +==== Operation PatchSubmodel + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PatchSubmodel +|*Explanation* |Updates the Submodel +|*semanticId* |https://admin-shell.io/aas/API/PatchSubmodel/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier a| +Defines the format of the input + + +==== +Note: values remain unchanged with content=metadata. +==== + + +|no |SerializationModifier |1 +|submodel |Submodel object |yes |Submodel |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Updated submodel |yes |Submodel |1 +|=== + +==== Operation PostSubmodelElement + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostSubmodelElement +|*Explanation* a| +Creates a new submodel element as a child of the submodel. The idShort of the new submodel element must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|*semanticId* |https://admin-shell.io/aas/API/PostSubmodelElement/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodelElement |Submodel element object |yes |SubmodelElement |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created submodel element |yes |SubmodelElement |1 +|=== + +==== Operation PostSubmodelElementByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostSubmodelElementByPath +|*Explanation* a| +Creates a new submodel element at a specified path within the submodel element hierarchy. The idShort of the new submodel element must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|*semanticId* |https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |The IdShortPath to the SubmodelElement under which the new SubmodelElement shall be addedIdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|submodelElement |Submodel element object |yes |SubmodelElement |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created submodel element |yes |SubmodelElement |1 +|=== + + +==== +Note: if the PostSubmodelElementByPath is executed towards a SubmodelElementList, the new SubmodelElement is added to the end of the list. +==== + + +==== Operation PutSubmodelElementByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutSubmodelElementByPath +|*Explanation* |Replaces an existing submodel element at a specified path within the submodel element hierarchy +|*semanticId* |https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |The IdShortPath to the SubmodelElement which shall be replacedIdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|submodelElement |Submodel element object |yes |SubmodelElement |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced submodel element |yes |SubmodelElement |1 +|=== + +==== Operation PatchSubmodelElementByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PatchSubmodelElementByPath +|*Explanation* |Updates an existing submodel element at a specified path within the submodel element hierarchy +|*semanticId* |https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier a| +Defines the format of the input + + +==== +Note: values remain unchanged with content=metadata. +==== + + +|no |SerializationModifier |1 +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|submodelElement |Submodel element object |yes |SubmodelElement |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Updated submodel element |yes |SubmodelElement |1 +|=== + +==== Operation GetSubmodelElementValueByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSubmodelElementValueByPath +|*Explanation* |Returns a specific submodel element value from the Submodel at a specified path according to the ValueOnly-serialization as defined in clause 11.4.1 +|*semanticId* |https://admin-shell.io/aas/API/GetSubmodelElementValueByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel elementhort-Path via relative Reference/Keys to a submodel element |yesIdShort-Path via relative Reference/Keys to a submodel element |Key |1..* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested submodel element value |yes |SubmodelElement |1 +|=== + +==== Operation PatchSubmodelElementValueByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PatchSubmodelElementValueByPath +|*Explanation* |Sets the value of the submodel element at a specified path according to the ValueOnly-serialization as defined in clause 11.4.1 +|*semanticId* |https://admin-shell.io/aas/API/PatchSubmodelElementValueByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel elementIdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +|payload |The new value of the submodel element |yes |SubmodelElement |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation DeleteSubmodelElementByPath + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteSubmodelElementByPath +|*Explanation* |Deletes a submodel element at a specified path within the submodel elements hierarchy +|*semanticId* |https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element |yes |Key |1..* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation InvokeOperationSync + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |InvokeOperationSync +|*Explanation* |Synchronously invokes an Operation at a specified path +|*semanticId* |https://admin-shell.io/aas/API/InvokeOperationSync/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element, in this case an operation |yes |Key |1..* +|inputArgument |Input argument |no |OperationVariable |1..* +|inoutputArgument |Inoutput argument |no |OperationVariable |1..* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |The Operation Result |yes |OperationResult |1 +|=== + +==== Operation InvokeOperationAsync + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |InvokeOperationAsync +|*Explanation* |Asynchronously invokes an Operation at a specified path +|*semanticId* |https://admin-shell.io/aas/API/InvokeOperationAsync/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|path |IdShort-Path via relative Reference/Keys to a submodel element, in this case an operation |yes |Key |1..* +|inputArgument |Input argument |no |OperationVariable |1..* +|inoutputArgument |Inoutput argument |no |OperationVariable |1..* +|clientTimeoutDuration |Timestamp indicating when the client expects the server to have finished execution of the invoked operation |yes |duration |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution |yes |OperationHandle |1 +|=== + +==== Operation GetOperationAsyncStatus + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetOperationAsyncStatus +|*Explanation* |Returns the current status of an asynchronously invoked operation +|*semanticId* |https://admin-shell.io/aas/API/GetOperationAsnycStatus/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|operationHandle |The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution |yes |OperationHandle |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Execution state of the operation |yes |OperationResult |1 +|=== + +==== Operation GetOperationAsyncResult + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetOperationAsyncResult +|*Explanation* |Returns the OperationResult of an asynchronously invoked operation +|*semanticId* |https://admin-shell.io/aas/API/GetOperationAsnycResult/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|operationHandle |The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution |yes |OperationHandle |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Operation Result |yes |OperationResult |1 +|=== + +=== Serialization Interface and Operations + +==== Serialization Interface + + +[%autowidth, width="100%", cols="27%,73%",options="header",] +|=== +2+|Interface: Serialization +h|*Operation Name* h|*Description* +|GenerateSerializationByIds |Returns an appropriate serialization based on the specified format (see SerializationFormat). +|=== + +==== Operation GenerateSerializationByIds + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GenerateSerializationByIds +|*Explanation* |Returns an appropriate serialization based on the specified format (see SerializationFormat). +|*semanticId* |https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIds |The unique ids of the Asset Administration Shells to be contained in the serialization |no |Identifier |1..* +|submodelIds |The unique ids of the Submodels to be contained in the serialization |no |Identifier |1..* +|includeConceptDescriptions |Include concept descriptions |no |boolean |1 +|serializationFormat |Denotes in which serialization format the requested content shall be delivered |no |SerializationFormat |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Serialization of the requested Asset Administration Shells and/or Submodels with or without ConceptDescriptions in specified SerializationFormat. |yes |Environment |1 +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Enumeration:* |SerializationFormat +|*Explanation:* |Determines the format of serialization, i.e. JSON, XML, RDF, AML, etc.RFC 6838, IANA Media Types, and defined custom content types; additional elements may be added in future versions +|*Set of:* |-- +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Literal* |*Explanation* +|application/json |JSON serialization of the requested data object inside an AAS Environment structure +|application/xml |XML serialization of the requested data object inside an AAS Environment structure (default) +|application/asset-administration-shell-package+xml |AASX-Package (binary data) containing the requested data object +|=== + +=== AASX File Server Interface and Operations + +==== AASX File Server Interface + + +[%autowidth, width="100%", cols="33%,67%",options="header",] +|=== +2+|Interface: AASX File Server +h|*Operation Name* h|*Description* +|GetAllAASXPackageIds |Returns a list of available AASX packages at the server +|GetAASXByPackageId |Returns a specific AASX package from the server +|PostAASXPackage |Creates an AASX package at the server +|PutAASXByPackageId |Replaces the AASX package at the server +|DeleteAASXByPackageId |Deletes a specific AASX package +|=== + +==== Operation GetAllAASXPackageIds + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAASXPackageIds +|*Explanation* |Returns a list of available AASX packages at the server +|*semanticId* |https://admin-shell.io/aas/API/GetAllAASXPackageIds/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasId |Identifier of the AAS which must exist in each matching AASX package |no |Identifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Matching package list; the PackageDescription includes all Asset Administration Shell identifiers, also those which may have not been requested through the aasId input parameter |yes |PackageDescription |0..* +|=== + +==== Operation GetAASXByPackageId + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAASXByPackageId +|*Explanation* |Returns a specific AASX package from the server +|*semanticId* |https://admin-shell.io/aas/API/GetAASXByPackageId/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|packageId |Requested package ID from the package list |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|filename |Filename of the AASX package |yes |string |1 +|payload |Requested AASX package |yes |AASX Package |1 +|=== + +==== Operation PostAASXPackage + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostAASXPackage +|*Explanation* |Creates an AASX package at the server +|*semanticId* |https://admin-shell.io/aas/API/PostAASXPackage/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIds a| +Included AAS Ids + + +==== +Note: it is not mandatory for servers to read and parse AASX packages. Servers may simply store the AASX files with their related given aasIds. +==== + + +|no |Identifier |0..* +|file |New AASX package |yes |AASX package |1 +|filename |Filename of the AASX package |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|packageId |New Package ID |yes |string |1 +|=== + +==== Operation PutAASXPackageById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutAASXPackageById +|*Explanation* |Replaces the AASX package at the server +|*semanticId* |https://admin-shell.io/aas/API/PutAASXPackageById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|packageId |Package ID from the package list |yes |string |1 +|aasIds a| +Included AAS Ids + + +==== +Note: it is not mandatory for servers to read and parse AASX packages. Servers may simply store the AASX files with their related given aasIds. +==== + + +|no |Identifier |0..* +|file |New AASX package |yes |AASX package |1 +|filename |Filename of the AASX package |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +==== Operation DeleteAASXPackageById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteAASXPackageById +|*Explanation* |Deletes a specific AASX package from the server +|*semanticId* |https://admin-shell.io/aas/API/DeleteAASXPackageById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|packageId |Package ID from the package list |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +== Registration Interfaces + +=== General + +These interfaces allow to register and unregister descriptors of administration shells or submodels. The descriptors contain the information needed to access the interfaces (as described in Clause 5) of the corresponding element. This required information includes the endpoint in the dedicated environment. + +Lookup interfaces provide access to the registered descriptors by identifiers (Asset Administration Shell and Submodel ID). These identifiers may be discovered through the interfaces described in Clause 8. + +=== Asset Administration Shell Registry Interface and Operations + +==== Asset Administration Shell Registry Interface + + +[%autowidth, width="100%", cols="45%,55%",options="header",] +|=== +2+|Interface: Asset Administration Shell Registry +h|*Operation Name* h|*Description* +|GetAllAssetAdministrationShellDescriptors |Returns all Asset Administration Shell Descriptors +|GetAssetAdministrationShellDescriptorById |Returns a specific Asset Administration Shell Descriptor +|PostAssetAdministrationShellDescriptor |Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS +|PutAssetAdministrationShellDescriptorById |Replaces an existing Asset Administration Shell Descriptor, i.e. replaces registration information +|DeleteAssetAdministrationShellDescriptorById |Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS +|=== + +==== Operation GetAllAssetAdministrationShellDescriptors + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetAdministrationShellDescriptors +|*Explanation* |Returns all Asset Administration Shell Descriptors +|*semanticId* |https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptors/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +|assetKind |The kind of the assets to retrieve (Type, Instance) |Yes |AssetKind |1 +|assetType |The type of the assets to retrieve, encoded as unique id |Yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |List of Asset Administration Shell Descriptors |no |AssetAdministrationShellDescriptor |1..* +|=== + +==== Operation GetAssetAdministrationShellDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAssetAdministrationShellDescriptorById +|*Explanation* |Returns a specific Asset Administration Shell Descriptor +|*semanticId* |https://admin-shell.io/aas/API/GetAssetAdministrationShellDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIdentifier |The Asset Administration Shell’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Administration Shell Descriptor |yes |AssetAdministrationShellDescriptor |1 +|=== + +==== Operation PostAssetAdministrationShellDescriptor + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostAssetAdministrationShellDescriptor +|*Explanation* |Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS +|*semanticId* |https://admin-shell.io/aas/API/PostAssetAdministrationShellDescriptor/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|shellDescriptor |Object containing the Asset Administration Shell’s identification and endpoint informationntaining the Asset Administration Shell’s identification and endpoint information |yes |AssetAdministrationShellDescriptor |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created Asset Administration Shell Descriptor |yes |AssetAdministrationShellDescriptor |1 +|=== + +==== Operation PutAssetAdministrationShellDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutAssetAdministrationShellDescriptorById +|*Explanation* |Replaces an existing Asset Administration Shell Descriptor, i.e. replaces registration information +|*semanticId* |https://admin-shell.io/aas/API/PutAssetAdministrationShellDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|shellDescriptor |Object containing the Asset Administration Shell’s identification and endpoint informationcontaining the Asset Administration Shell’s identification and endpoint information |yes |AssetAdministrationShellDescriptor |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced Asset Administration Shell Descriptor |yes |AssetAdministrationShellDescriptor |1 +|=== + +==== Operation DeleteAssetAdministrationShellDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteAssetAdministrationShellDescriptorById +|*Explanation* |Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS +|*semanticId* |https://admin-shell.io/aas/API/DeleteAssetAdministrationShellDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIdentifier |The Asset Administration Shell’s unique id |yes |Identifer |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +=== Submodel Registry Interface and Operations + +==== Submodel Registry Interface + + +[%autowidth, width="100%", cols="31%,69%",options="header",] +|=== +2+|Interface:Submodel Registry +h|*Operation Name* h|*Description* +|GetAllSubmodelDescriptors |Returns all submodel descriptors +|GetSubmodelDescriptorById |Returns a specific submodel descriptor +|PostSubmodelDescriptor |Creates a new submodel descriptor, i.e. registers a submodel +|PutSubmodelDescriptorById |Replaces an existing submodel descriptor, i.e. replaces registration information +|DeleteSubmodelDescriptorById |Deletes a submodel descriptor, i.e. de-registers a submodel +|=== + +==== Operation GetAllSubmodelDescriptors + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodelDescriptors +|*Explanation* |Returns all submodel descriptors +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |The maximum size of the result set |yes |StatusCode |1 +|payload |The position from which to resume a result listing |no |SubmodelDescriptor |1..* +|=== + +==== Operation GetSubmodelDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSubmodelDescriptorById +|*Explanation* |Returns a specific Submodel Descriptor +|*semanticId* |https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodelIdentifier |The Submodel’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested submodel descriptor |yes |SubmodelDescriptor |1 +|=== + +==== Operation PostSubmodelDescriptor + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostSubmodelDescriptor +|*Explanation* |Creates a new submodel descriptor, i.e. registers a submodel +|*semanticId* |https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodel + +Descriptor |Object containing the Submodel’s identification and endpoint information |yes |SubmodelDescriptor |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created submodel descriptor |yes |SubmodelDescriptor |1 +|=== + +==== Operation PutSubmodelDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutSubmodelDescriptorById +|*Explanation* |Replaces an existing submodel descriptor, i.e. replaces registration information +|*semanticId* |https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodel + +Descriptor |Object containing the Submodel’s identification and endpoint information |yes |SubmodelDescriptor |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced submodel descriptor |yes |SubmodelDescriptor |1 +|=== + +==== Operation DeleteSubmodelDescriptorById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteSubmodelDescriptorById +|*Explanation* |Deletes a Submodel Descriptor, i.e. de-registers a submodel +|*semanticId* |https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodelIdentifier |The Submodel’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +== Repository Interfaces + +=== General + +These interfaces allow to manage Asset Administration Shells, Submodels, and Concept Descriptions. They further provide access to the data of these elements through interfaces described in Clause 5. A repository can host multiple entities. These entities can be stored in individual repositories of a decentral system. The endpoints of the entities managed by one repository shall be resolved by subsequent calls to discover (Clause 8) and lookup (Clause 6) interfaces to such decentralized systems. + +Sometimes, these kinds of services are also classified as Asset Administration Shell management services. + +The interfaces that provide access to the entities (Asset Administration Shells, Submodels, Concept Descriptions) themselves are convenience interfaces that provide access in a system where the services are managed by central repositories. + +=== Asset Administration Shell Repository Interface and Operations + +==== Asset Administration Shell Repository Interface + + +[%autowidth, width="100%", cols="41%,59%",options="header",] +|=== +2+|Interface: Asset Administration Shell Registry +h|*Operation Name* h|*Description* +|GetAllAssetAdministrationShells |Returns all Asset Administration Shells +|GetAssetAdministrationShellById |Returns a specific Asset Administration Shell +|GetAllAssetAdministrationShellsByAssetId |Returns all Asset Administration Shells that are linked to a globally unique asset identifier or to specific asset ids +|GetAllAssetAdministrationShellsByIdShort |Returns all Asset Administration Shells with a specific idShort +|PostAssetAdministrationShell a| +Creates a new Asset Administration Shell. The id of the new Asset Administration Shell must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|PutAssetAdministrationShellById |Replaces an existing Asset Administration Shell +|DeleteAssetAdministrationShellById |Deletes an Asset Administration Shell +|=== + +==== Operation GetAllAssetAdministrationShells + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetAdministrationShells +|*Explanation* |Returns all Asset Administration Shells +|*semanticId* |https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |List of Asset Administration Shells |no |AssetAdministrationShell |1 +|=== + +==== Operation GetAssetAdministrationShellById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAssetAdministrationShellById +|*Explanation* |Returns a specific Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|id |The Asset Administration Shell’s unique id |yes |Identifier |1 +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Administration Shell |yes |AssetAdministrationShell |1 +|=== + +==== Operation GetAllAssetAdministrationShellsByAssetId + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetAdministrationShellsByAssetId +|*Explanation* |Returns all Asset Administration Shells that are linked to a globally unique asset identifier or to specific asset ids +|*semanticId* |https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|key |The key of the AssetId The name of the specific asset identifier or the predefined name “_globalAssetId_” that would refer to the _AssetInformation/globalAssetId_ |yes |string |1 +|keyIdentifier |The key identifier object |yes |string |1 +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |yes |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Administration Shells |no |AssetAdministrationShell |1..* +|=== + +==== Operation GetAllAssetAdministrationShellsByIdShort + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetAdministrationShellsByIdShort +|*Explanation* |Returns all Asset Administration Shells with a specific _idShort_ +|*semanticId* |https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|idShort |The Asset Administration Shell’s idShort |yes |NameType | +|serializationModifier |Defines the format of the response |yes |SerializationModifier | +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Asset Administration Shells |no |AssetAdministrationShell |1 +|=== + +==== Operation PostAssetAdministrationShell + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostAssetAdministrationShell +|*Explanation* a| +Creates a new Asset Administration Shell. The id of the new Asset Administration Shell must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|*semanticId* |https://admin-shell.io/aas/API/PostAssetAdministrationShell/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aas |Asset Administration Shell object |yes |AssetAdministrationShell |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created Asset Administration Shell |yes |AssetAdministrationShell |1 +|=== + +==== Operation PutAssetAdministrationShellById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutAssetAdministrationShellById +|*Explanation* |Replaces an existing Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/PutAssetAdministrationShellById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aas |Asset Administration Shell object |yes |AssetAdministrationShell |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced Asset Administration Shell |yes |AssetAdministrationShell |1 +|=== + +==== Operation DeleteAssetAdministrationShellById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteAssetAdministrationShellById +|*Explanation* |Deletes an Asset Administration Shell +|*semanticId* |https://admin-shell.io/aas/API/DeleteAssetAdministrationShellById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|id |The Asset Administration Shell’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +=== Submodel Repository Interface and Operations + +==== Submodel Repository Interface + + +[%autowidth, width="100%", cols="44%,56%",options="header",] +|=== +2+|Interface: Submodel Repository +h|*Operation Name* h|*Description* +|GetAllSubmodels |Returns all Submodels +|GetSubmodelById |Returns a specific Submodel +|GetAllSubmodelsBySemanticId |Returns all Submodels with a specific SemanticId +|GetAllSubmodelsBySupplementalSemanticId |Returns all Submodels with a specific SupplementalSemanticId +|GetAllSubmodelsByIdShort |Returns all Submodels with a specific _idShort_ +|PostSubmodel a| +Creates a new Submodel. The id of the new submodel must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|PutSubmodelById |Replaces an existing Submodel +|PatchSubmodelById |Updates an existing submodel +|DeleteSubmodelById |Deletes a Submodel +|=== + +==== Operation GetAllSubmodels + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodels +|*Explanation* |Returns all Submodels +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodels/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |List of Submodels |no |Submodel |1..* +|=== + +==== Operation GetSubmodelById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSubmodelById +|*Explanation* |Returns a specific Submodel +|*semanticId* |https://admin-shell.io/aas/API/GetSubmodelById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|id |The Submodel’s unique id |yes |Identifier |1 +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Submodel |yes |Submodel |1 +|=== + +==== Operation GetAllSubmodelsBySemanticId + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodelsBySemanticId +|*Explanation* |Returns all Submodels with a specific SemanticId or SupplementalSemanticId. If either the semanticId fits to the input parameter or at least one of the SupplementalSemanticIds, the submodel is returned. +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|semanticId |Identifier of the semantic definition |yes |Reference |1 +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Submodels |no |Submodel |1..* +|=== + +==== Operation GetAllSubmodelsByIdShort + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllSubmodelsByIdShort +|*Explanation* |Returns all Submodels with a specific _idShort_ +|*semanticId* |https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|idShort |The Submodel’s idShort |yes |NameType |1 +|serializationModifier |Defines the format of the response |yes |SerializationModifier |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Submodels |no |Submodel |1..* +|=== + +==== Operation PostSubmodel + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostSubmodel +|*Explanation* a| +Creates a new Submodel. The id of the new submodel must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|*semanticId* |https://admin-shell.io/aas/API/PostSubmodel/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodel |Submodel object |yes |Submodel |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created Submodel |yes |Submodel |1 +|=== + +==== Operation PutSubmodelById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutSubmodelById +|*Explanation* |Replaces an existing Submodel +|*semanticId* |https://admin-shell.io/aas/API/PutSubmodelById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|submodel |Submodel object |yes |Submodel |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced Submodel |yes |Submodel |1 +|=== + +==== Operation PatchSubmodelById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PatchSubmodelById +|*Explanation* |Updates an existing Submodel +|*semanticId* |https://admin-shell.io/aas/API/PatchSubmodelById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|serializationModifier a| +Defines the format of the input + + +==== +Note: values remain unchanged with content=metadata. +==== + + +|yes |SerializationModifier |1 +|submodel |Submodel object |yes |Submodel |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Updated submodel |yes |Submodel |1 +|=== + +==== Operation DeleteSubmodelById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteSubmodelById +|*Explanation* |Deletes a Submodel +|*semanticId* |https://admin-shell.io/aas/API/DeleteSubmodelById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|id |The Submodel’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +=== Concept Description Repository Interface and Operations + +==== Concept Description Repository Interface + + +[%autowidth, width="100%", cols="55%,45%",options="header",] +|=== +2+|Interface: Concept Description Repository +h|*Operation Name* h|*Description* +|GetAllConceptDescriptions |Returns all Concept Descriptions +|GetConceptDescriptionById |Returns a specific Concept Description +|GetAllConceptDescriptionsByIdShort |Returns all Concept Descriptions with a specific _idShort_ +|GetAllConceptDescriptionsByIsCaseOf |Returns all Concept Descriptions with a specific _IsCaseOf_-reference +|GetAllConceptDescriptionsByDataSpecificationReference |Returns all Concept Descriptions with a specific _dataSpecification_ reference +|PostConceptDescription a| +Creates a new Concept Description. The id of the the new Concept Description must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|PutConceptDescriptionById |Replaces an existing Concept Description +|DeleteConceptDescriptionById |Deletes a Concept Description +|=== + +==== Operation GetAllConceptDescriptions + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllConceptDescriptions +|*Explanation* |Returns all Concept Descriptions +|*semanticId* |https://admin-shell.io/aas/API/GetAllConceptDescriptions/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|limit |The maximum size of the result set |No |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |String |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |List of Concept Descriptions |no |ConceptDescription |1..* +|=== + +==== Operation GetConceptDescriptionById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetConceptDescriptionById +|*Explanation* |Returns a specific Concept Description +|*semanticId* |https://admin-shell.io/aas/API/GetConceptDescriptionById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|id |The Concept Description’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Concept Description |yes |ConceptDescription |1 +|=== + +==== Operation GetAllConceptDescriptionsByIdShort + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllConceptDescriptionsByIdShort +|*Explanation* |Returns all Concept Descriptions with a specific _idShort_ +|*semanticId* |https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIdShort/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|idShort |The Concept Description’s idShort |yes |NameType |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Concept Descriptions |no |ConceptDescription |1..* +|=== + +==== Operation GetAllConceptDescriptionsByIsCaseOf + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllConceptDescriptionsByIsCaseOf +|*Explanation* |Returns all Concept Descriptions with a specific _IsCaseOf_ reference +|*semanticId* |https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIsCaseOf/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|isCaseOf |IsCaseOf reference |yes |Reference |1 +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Concept Descriptions |no |ConceptDescription |1..* +|=== + +==== Operation GetAllConceptDescriptionsByDataSpecificationReference + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllConceptDescriptionsByDataSpecificationReference +|*Explanation* |Returns all Concept Descriptions with a specific _dataSpecification_ reference +|*semanticId* |https://admin-shell.io/aas/API/GetAllConceptDescriptionsByDataSpecificationReference/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|dataSpecification-Reference |_DataSpecification_ reference |yes |Reference |_1_ +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Requested Concept Descriptions |no |ConceptDescription |1..* +|=== + +==== Operation PostConceptDescription + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostConceptDescription +|*Explanation* a| +Creates a new Concept Description. The id of the new Concept Description must be set in the payload. + + +==== +Note: the creation of the idShort is out of scope and must be handled in a proprietary way. +==== + + +|*semanticId* |https://admin-shell.io/aas/API/PostConceptDescription/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|conceptDescription |Concept Description object |yes |ConceptDescription |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Created Concept Description |yes |ConceptDescription |1 +|=== + +==== Operation PutConceptDescriptionById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PutConceptDescriptionById +|*Explanation* |Replaces an existing Concept Description +|*semanticId* |https://admin-shell.io/aas/API/PutConceptDescriptionById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|conceptDescription |Concept Description object |yes |ConceptDescription |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Replaced Concept Description |yes |ConceptDescription |1 +|=== + +==== Operation DeleteConceptDescriptionById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteConceptDescriptionById +|*Explanation* |Deletes a Concept Description +|*semanticId* |https://admin-shell.io/aas/API/DeleteConceptDescriptionById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|cdIdentifier |The Concept Description’s unique id |yes |Identifier |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +== Publish and Discovery Interfaces + +=== General + +These interfaces allow to publish information about Asset Administration Shells that enable a search for asset IDs of the corresponding Asset Administration Shells in a subsequent discovery interface call. + +=== Asset Administration Shell Basic Discovery Interface and Operations + +==== Asset Administration Shell Basic Discovery Interface + + +[%autowidth, width="100%", cols="45%,55%",options="header",] +|=== +2+|Interface: Asset Administration Shell Basic Discovery +h|*Operation Name* h|*Description* +|GetAllAssetAdministrationShellIdsByAssetLink |Returns a list of Asset Administration Shell ids based on asset identifier key-value-pairs +|GetAllAssetLinksById |Returns a list of asset identifier key-value-pairs based on a given Asset Administration Shell id +|PostAllAssetLinksById |Creates or replaces all asset identifier key-value-pairs linked to an Asset Administration Shell to edit discoverable content +|DeleteAllAssetLinksById |Deletes all asset identifier key-value-pair linked to an Asset Administration Shell +|=== + +==== Operation GetAllAssetAdministrationShellIdsByAssetLink + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetAdministrationShellIdsByAssetLink +|*Explanation* |Returns a list of Asset Administration Shell ids based on asset identifier key-value-pairs +|*semanticId* |https://admin-shell.io/aas/API/GetAllAssetAdministrationShellIdsByAssetLink/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|assetIds a| +The specific assetId of an asset identifier, which could be the globalAssetId or specificAssetIds. + + +==== +Note: The key of the asset identifier key-value-pair for the globalAssetId is defined in Clause 4.5. It is the predefined key “_globalAssetId_” that would refer to the _AssetInformation/globalAssetId_. +==== + + +|yes |SpecificAssetId |1..* +|limit |The maximum size of the result set |no |nonNegativeInteger |1 +|cursor |The position from which to resume a result listing |no |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Identifiers of all Asset Administration Shells which contain all asset identifier key-value-pairs in their asset information, i.e. AND-match of key-value-pairs per Asset Administration Shell |yes |Identifier |1..* +|=== + +==== Operation GetAllAssetLinksById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetAllAssetLinksById +|*Explanation* |Returns a list of asset identifier key-value-pairs based on an Asset Administration Shell id to edit discoverable content +|*semanticId* |https://admin-shell.io/aas/API/AssetAdministrationShellBasicDiscoveryInterfae/GetAllAssetLinksById/1/0/RC02[https://admin-shell.io/aas/API/GetAllAssetLinksById/3/0] +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIdentifier |The Asset Administration Shell’s unique id |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload a| +Requested asset identifier, which could be the globalAssetId or specificAssetIds. + + +==== +Note: the name of the SpecificAssetId for the globalAssetId is defined in Clause 4.5. It is the predefined name “_globalAssetId_” that would refer to the _AssetInformation/globalAssetId_. +==== + + +|no |SpecificAssetId |1..* +|=== + +==== Operation PostAllAssetLinksById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |PostAllAssetLinksById +|*Explanation* |Creates new asset identifier key-value-pairs linked to an Asset Administration Shell for discoverable content. The existing content might have to be deleted first. +|*semanticId* |https://admin-shell.io/aas/API/PostAllAssetLinksById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIdentifier |The Asset Administration Shell’s unique id |yes |string |1 +|assetLinks a| +Asset identifier, which could be the globalAssetId or specificAssetIds. + + +==== +Note: the name for the globalAssetId is defined in Clause 4.5. It is the predefined key “_globalAssetId_” that would refer to the _AssetInformation/globalAssetId_. +==== + + +|yes |SpecificAssetId |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|payload |Asset identifier created successfully |yes |SpecificAssetId |1 +|=== + +==== Operation DeleteAllAssetLinksById + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |DeleteAllAssetLinksById +|*Explanation* |Deletes all asset identifier key-value-pairs linked to an Asset Administration Shell to edit discoverable content +|*semanticId* |https://admin-shell.io/aas/API/DeleteAllAssetLinksById/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|aasIdentifier |The Asset Administration Shell’s unique id |yes |string |1 +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|=== + +== Self Description Interface + +=== Self-Description Interface + + +[%autowidth, width="100%", cols="19%,81%",options="header",] +|=== +2+|Interface: Self-Description +h|*Operation Name* h|*Description* +|GetSelfDescription |Returns a description object containing the capabilities and supported features of the server. +|=== + +=== Operation GetSelfDescription + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d",] +|=== +|*Operation Name* |GetSelfDescription +|*Explanation* |Returns a description object containing the capabilities and supported features of the server. +|*semanticId* |https://admin-shell.io/aas/API/GetSelfDescription/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Output Parameter +|statusCode |Status code |yes |StatusCode |1 +|description |Key-value-pairs that describe the capabilities of the providing server |yes |ServiceDescription |1 +|=== + + +==== +Note 1: a server implementing more than one service specification profile, e.g. hosting a repository and a registry at the same time, adds both ServiceSpecificationProfileEnum items in the profiles list. +==== + + + +==== +Note 2: a profile value must only be used if the related API is implemented at the path where the API Operation “GetDescription” is published, or child paths. +==== + + +== Data Types for Payload + +=== General + +For metamodel elements like AssetAdministrationShell, Submodel, Identifier, etc. that are specified in Part 1 link:#bib1[[1\]], please refer to the specification in Bibliography. The AAS package format and the AAS Package type are defined in Part 5 link:#bib3[[3\]]. This clause only defines additional classes that are needed for communication with the API. + +=== Metamodel Specification Details + +The following type definitions are used to describe specific metamodel elements like Asset Administration Shells and submodels regarding their network and deployment configuration. They use certain attributes copied from the model element itself to describe it – hence the name _Descriptor_. + +==== Descriptor + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Descriptor +|*Explanation* |The self-describing information of a network resource. This class is not part of the metamodel. +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/Descriptor/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|description a| +Description or comments on the element + +The description can be provided in several languages + +|MultiLanguageTextType |0..1 +|displayName |Display name; can be provided in several languages |MultiLanguageNameType |0..1 +|extension |An extension of the element |Extension |0..* +|=== + +==== AssetAdministrationShellDescriptor + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |AssetAdministrationShellDescriptor +|*Explanation* |Descriptor of an Asset Administration Shell +|*Inherits from* |Descriptor +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/AssetAdministrationShellDescriptor/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Attribute* |*Explanation* | *Type* |*Card.* +|administration |Administrative information of the Asset Administration Shell |AdministrativeInformation |0..1 +|assetKind |Denotes whether the asset of the described Asset Administration Shell is of kind “Type” or “Instance” |AssetKind |0..1 +|assetType |The type of the asset described by the Asset Administration Shell of this Descriptor. See AssetInformation/assetType for further information. |Identifier |0..1 +|endpoint |Endpoint of the network resource |Endpoint |0..* +|globalAssetId |Global reference to the asset the AAS is representing |Identifier |0..1 +|idShort |Short name of the Asset Administration Shell |NameType |0..1 +|id |Globally unique identification of the Asset Administration Shell |Identifier |1 +|specificAssetId |Specific asset identifier |SpecificAssetId |0..* +|submodelDescriptor |Descriptor of a submodel of the Asset Administration Shell |SubmodelDescriptor |0..* +|=== + + +==== +Note: the cardinality restriction for AssetAdministrationShellDescriptor/endpoint (optional: 0..*) allows a provider to skip the declaration of the location of an AssetAdministrationShell and directly point to the endpoints of the contained Submodels through the path AssetAdministrationShellDescriptor/submodelDescriptor-> SubmodelDescriptor/endpoint. A client, therefore, might decide to skip the lookup on the AssetAdministrationShell. Nevertheless, in case the information contained in the AssetAdministrationShellDescriptor deviates from the related AssetAdministrationShell, or attributes are missing, the AssetAdministrationShell is always the source of truth. +==== + + +==== SubmodelDescriptor + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |SubmodelDescriptor +|*Explanation* |A descriptor of a submodel +|*Inherits from* |Descriptor +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/SubmodelDescriptor/3/0 +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Attribute* |*Explanation* | *Type* |*Card.* +|administration |Administrative information of the Submodel |AdministrativeInformation |0..1 +|endpoint |Endpoint of the network resource |Endpoint |1..* +|idShort |Short name of the Submodel |NameType |0..1 +|id |Globally unique identification of the Submodel |Identifier |1 +|semanticId |Identifier of the semantic definition of the Submodel |Reference |0..1 +|supplementalSemanticId |Identifier of a supplemental semantic definition of the element called supplemental semantic ID of the element |Reference |0..* +|=== + +==== Endpoint + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Endpoint +|*Explanation* |The endpoint description of a network resource. This class is not part of the metamodel. +|*Inherits from* |- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/Endpoint/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|protocolInformation |Protocol information of the network resource endpoint |ProtocolInformation |1 +|interface |Name of the offered interface at the endpoint |IdShortType |1 +|=== + +The following names will be used for the interfaces: + +[%autowidth, width="100%", options="header",] +|=== +|*Interface* |*interface-shortName* +|Asset Administration Shell Interface |AAS +|Submodel Interface |SUBMODEL +|Serialization Interface |SERIALIZE +|AASX File Server Interface |AASX-FILE +|Asset Administration Shell Registry Interface |AAS-REGISTRY +|Submodel Registry Interface |SUBMODEL-REGISTRY +|Asset Administration Shell Repository Interface |AAS-REPOSITORY +|Submodel Repository Interface |SUBMODEL-REPOSITORY +|Concept Description Repository Interface |CD-REPOSITORY +|Asset Administration Shell Basic Discovery Interface |AAS-DISCOVERY +|=== + +The value for the interface attribute is “\{interface-shortName}-\{interface-version}”. + +The interface-version of this specification is “3.0”, e.g. the entry for the Asset Administration Shell Interface is “AAS-3.0”. + +See the following example for a descriptor with several endpoints: + +image:image5.png[image5] + +==== ProtocolInformation + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |ProtocolInformation +|*Explanation* a| +The protocol information of a network resource endpoint will be defined in DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel. + +The information in this table is a 1:1 copy from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group. + + +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/ProtocolInformation/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|href |The endpoint address as an URL |String 2048 |1 +|endpointProtocol |Either scheme of endpointAdress or scheme + further information. Scheme denotes the highest level of doubtless transmission. |IdShortType |0..1 +|endpointProtocolVersion |Array of strings, each entry represents one supported version at this very endpoint, the entry shall be formatted according to the regulations of the protocol specified in the href |IdShortType |0..* +|subprotocol |Allows for referencing sub-protocols that may be used in the context of that endpoint e.g. “OPC Basic SOAP” or UA Binary |IdShortType |0..1 +|subprotocolBody |If the sub-protocol field is present, a subprotocolBody might be given to hold extra information, e.g. node and namespace in an OPC UA server |IdShortType |0..1 +|subprotocolBodyEncoding |If subprotocolBody is present, the encoding might be explicitly defined, otherwise it shall default to subprotocols encoding scheme |IdShortType |0..1 +|securityAttributes a| +Array of securityAttribute objects, each attribute has 3 properties: + +\{ *type* = Enum security type or standard: + +* ‘NONE’, +* 'RFC_TLSA' - TLSA according to rfc6698 +* 'W3C_DID' - W3C DID document , + +*key* = security attribute key according to standard definitions of the security type, + +*value* = security attribute value e.g. DANE TLSA Ressource Record } + +The securityAttribute objects are treated as possible alternatives (logical “or”) + +|SecurityAttributeObject |1..* +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |SecurityAttributeObject +|*Explanation* a| +Security attributes as defined by DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel. + +The information in this table is derived from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group. + + +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/SecurityAttributeObject/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|type |Enum security type or standard |SecurityTypeEnum |1 +|key |Security attribute key according to standard definitions of the security type |string |1 +|value |Security attribute value e.g. DANE TLSA Ressource Record |string |1 +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Enumeration* |SecurityTypeEnum +|*Explanation* a| +The security types as defined by DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel. + +The information in this table is derived from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group. + +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/ SecurityTypeEnum/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Literal* |*Explanation* +|NONE |No predefined security type available +|RFC_TLSA |TLSA according to RFC 6698 +|W3C_DID |Decentralized Identifiers according to the W3C Recommendation link:#bib7[[7\]] +|=== + +==== ServiceDescription + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |ServiceDescription +|*Explanation* a| +The self-describing information of an API Implementation. It enables servers to present their capabilities to the clients, in particular which profiles they implement. At least one defined profile is required. Additional, proprietary attributes might be included. Nevertheless, the server must not expect that a regular client understands them. + +This class is not part of the metamodel. + + +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/ServiceDescription/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|profiles |List of implemented server specification profiles. |ServiceSpecificationProfileEnum |1..* +|=== + + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="43%h,57%"] +|=== +|*Enumeration* |ServiceSpecificationProfileEnum +|*Explanation* |The identifiers of the standardized service specification profiles. See also clause 12.12 for further details. +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/ ServiceSpecificationProfileEnum/3/0 +|=== +[%autowidth, width="100%", options="header",cols="43%,57%"] +|=== +|*Literal* |*Explanation* +|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001 |Indicates that the server implemented all features of the Asset Administration Shell Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002 |Indicates that the server implemented all features of the Asset Administration Shell Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001 |Indicates that the server implemented all features of the Submodel Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002 |Indicates that the server implemented all features of the Submodel Service Specification Value Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003 |Indicates that the server implemented all features of the Submodel Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001 |Indicates that the server implemented all details of the AASX File Server Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Registry Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-002 |Indicates that the server implemented all details of the Asset Administration Shell Registry Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-003 |Indicates that the server implemented all details of the Asset Administration Shell Registry Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-004 |Indicates that the server implemented all details of the Submodel Registry Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-005 |Indicates that the server implemented all details of the Submodel Registry Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Discovery Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RepositoryServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Repository Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/RepositoryServiceSpecification/SSP-002 |Indicates that the server implemented all details of the Repository Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Asset Administration Shell Repository Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002 |Indicates that the server implemented all details of the Asset Administration Shell Repository Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Submodel Service Specification Full Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-002 |Indicates that the server implemented all details of the Submodel Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-003 |Indicates that the server implemented all details of the Submodel Service Specification Read Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-004 |Indicates that the server implemented all details of the Submodel Service Specification Template Profile in version 3.0. +|https://admin-shell.io/aas/API/3/0/ConceptDescriptionServiceSpecification/SSP-001 |Indicates that the server implemented all details of the Concept Description Service Specification Read Template Profile in version 3.0. +|=== + +An example ServiceDescription object might look like the following, indicating that the server supports two profiles at the same time (see Clause 12.12.3 for further details on service specifications and profiles): + +image:image6.png[image6] + +==== Simple Data Types + +All simple data types from Part 1 link:#bib1[[1\]] apply also to the specifications described in this document. Additional data types are defined in Table 2. + +.Simple Data Types used for API-specific Classes +[%autowidth, width="100%", cols="22%,30%,48%",options="header",] +|=== +|*Primitive* |*Definition* |*Value Examples* +|NonNegativeInteger |The _nonNegativeInteger_ datatype as defined by XML Schema Part 2 in version 1.0 footnote:[https://www.w3.org/TR/xmlschema-2/] a| +0 + +42 + +|=== + +==== Primitive Data Types + +All primitive data types from Part 1 version 3.0 apply also to the specifications described in this document. All constraints and spelling patterns apply as well. In addition, the following data types are defined. + +.Primitive Data Types used for the API-specific Classes +[%autowidth, width="100%", cols="14%,44%,42%",options="header",] +|=== +|*Primitive* |*Definition* |*Value Examples* +|CodeType |_string_ with max 32 and min 1 characters a| +“409” + +“Bad_UserAccessDenied” + +|ShortIdType a| +same as _NameType_ + + +==== +Note: ShortIdType is _not_ the data type of idShort attributes but for IDs which shall be shorter than the identifier type. +==== + + +a| +“02063059-b81c-482b-97d1-d29cbe382ef6” + +“my-random-id” + +|=== + +==== Status Code, Error Handling & Result Messages + +This clause deals with the error and result handling of an operation’s execution in a technology-independent manner. + +The first clause covers generic status codes that are returned on each request, independent of the operation’s success or failure. The subsequent clause describes the result object that is returned in case of failure. + +===== Generic Status Codes + +Successful operations return one of the success status codes and their respective payload. Unsuccessful operations return one of the failure status codes and a result object as defined in Clause 0. + +Table 4 shows generic status codes returned to the requester. Additionally, the table indicates whether a specific status code comes with a result object in the returned payload. + +.Status Codes +[%autowidth, width="100%", cols="31%,61%,8%",options="header",] +|=== +|*Generic Status Code* |*Meaning* |*Has Result Object* +|Success |Success |No +|SuccessCreated |Successful creation of a new resource |No +|SuccessAccepted |The reception of the request was successful |No +|SuccessNoContent |Success with explicitly no content in the payload |No +|ClientErrorBadRequest |Bad or malformed request |Yes +|ClientNotAuthorized |Wrong or missing authorization credentials |Yes +|ClientForbidden |Authorization has been refused |Yes +|ClientMethodNotAllowed |Operation request is not allowed |Yes +|ClientErrorResourceNotFound |Resource not found |Yes +|ClientResourceConflict |Conflict-creating resource (resource already exists) |Yes +|ServerInternalError |Unexpected error |Yes +|ServerErrorBadGateway |Bad gateway |Yes +|=== + +===== General Result Object + +In case of a failed operation execution, a result object [.underline]#shall be returned# containing more information about the reasons why the operation failed to execute. + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Result +|*Explanation* |The result object +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/Result/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|message |Additional message containing information for the requester |Message |0..* +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Message +|*Explanation* |A message containing more information for the requester about a certain happening in the backend +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/Message/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|messageType |The message type |MessageTypeEnum |1 +|text |The message text |string |1 +|code |Technology-dependent status or error code |CodeType |0..1 +|correlationId |Identifier to relate several result messages throughout several systems |ShortIdType |0..1 +|timestamp |Timestamp of the message |dateTime |0..1 +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Enumeration* |MessageTypeEnum +|*Explanation* |The message type +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/MessageTypeEnum/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Literal* |*Explanation* +|Info |Used to inform the user about a certain fact +|Warning |Used for warnings; warnings may lead to errors in the subsequent execution +|Error |Used for handling errors +|Exception |Used in case of an internal and/or unhandled exception +|=== + +===== Operation Objects + +The following type definitions are used to call and handle the requests and responses while performing synchronous or asynchronous operation invocation. + +====== OperationRequest + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |OperationRequest +|*Explanation* |The operation request object +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/OperationRequest/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|inputArguments |Input argument |OperationVariable |0..* +|inoutputArguments |InOutput argument |OperationVariable |0..* +|clientTimeoutDuration |Duration indicating when the client expects the server to have finished execution of the invoked operation |duration |0..1 +|=== + +====== OperationResult + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |OperationResult +|*Explanation* |The operation’s invocation result object +|*Inherits from* |Result +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/OperationResult/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute + +(* = mandatory)* |*Explanation* |*Type* |*Card.* +|outputArguments |Output argument |OperationVariable |0..* +|inoutputArguments |InOutput argument |OperationVariable |0..* +|executionState |Execution state |ExecutionState |1 +|success |Flag indicating whether the business operation behind the operation was successful (true) or not (false) |boolean |0..1 +|=== + +====== Enumeration ExecutionState + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Enumeration* |ExecutionState +|*Explanation* |The operation’s invocation result state +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/ExecutionState/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Literal* |*Explanation* +|Initiated |The operation is ready to be executed (initial state) +|Running |The operation is running +|Completed |The operation is completed +|Canceled |The operation was cancelled externally +|Failed |The operation failed +|Timeout |The operation has timed out due to given client or server timeout +|=== + +====== OperationHandle + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |OperationHandle +|*Explanation* |The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution +|*Inherits from* |-- +|*semanticId* |https://admin-shell.io/aas/API/DataTypes/OperationHandle/3/0 +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|handleId |Handle id |ShortIdType |1 +|=== + +==== File Content + +The “File Content” type of the operations mentioned above is seen as “arbitrary binary data” according to RFC 2046 and is as such defined as byte-array in UTF8-encoding. If a content type is required, “application/octet-stream” must be used as defined in RFC 2046. + +== Basic Operation Parameters + +=== General + +This clause specifies the parameters for API operations. + +=== SerializationModifiers in Operations + +*Definition* + +For GET operations, a SerializationModifier indicates the requester’s expected or desired response content. For PUT and PATCH operations, a SerializationModifier indicates the input content. The SerializationModifier comprises three orthogonal enumerations. When combined, these enumerations influence the input or response content of the requested operation. + + +==== +Note: values remain unchanged with content=metadata. +==== + + +[arabic] +. *Enumeration: Level* + +The first enumeration _Level_ indicates the depth of the structure of the response or input content. + +.Level Parameters +[%autowidth, width="100%", cols="29%,71%",options="header",] +|=== +|*Value* |*Explanation* +|Deep (Default) |All elements of a requested hierarchy level and all children on all sublevels are returned. Children in this sense are SubmodelElements which are contained at the ‘submodelElements’ field of Submodels, the ‘value’ field of SubmodelElementCollections or SubmodelElementLists, the ‘statements’ field of Entities, or the ‘annotations’ field of AnnotatedRelationshipElements. +|Core |Only elements of a requested hierarchy level as well as direct children are returned. By this, a client can iterate the hierarchy step by step. +|=== + + +==== +Note: level parameters are mapped to the query parameter “?level” in the HTTP/REST APIs, see also Clause 12.8. +==== + + +[arabic, start=2] +. *Enumeration: Content* + +The second enumeration _Content_ indicates the kind of serialization of the response or input content. + +For Content equal to Value see Clause 0 for details. + +.Content Parameters +[%autowidth, width="100%", cols="29%,71%",options="header",] +|=== +|*Value* |*Explanation* +|Normal (Default) |The standard serialization of the model element or child elements is applied. +|Metadata |Only metadata of an element or child elements is returned; the value is not . +|Value |Only the raw value of the model element or child elements is returned; it is commonly referred to as _ValueOnly_-serialization. +|Reference |Only applicable to Referables. Only the reference to the found element is returned; potential child elements are ignored. +|Path |Returns the idShort of the requested element and a list of _idShort_ paths to child elements if the requested element is a Submodel, a SubmodelElementCollection, a SubmodelElementList, a AnnotatedRelationshipElement, or an Entity. +|=== + + +==== +Note: level parameters are mapped to path suffixes “/$” in the HTTP/REST APIs, see also Clause 12.8. +==== + + +[arabic, start=3] +. *Enumeration: Extent* + +The third enumeration _Extent_ indicates to which extent the response or input content is being serialized. At this stage, the listed values could also be represented as binary values on BLOB-elements. They are, however, kept as generic extent values for the sake of extension. + +.Extent Parameters +[%autowidth, width="100%", cols="30%,70%",options="header",] +|=== +|*Value* |*Explanation* +|WithoutBLOBValue (Default) |Only applicable to BLOB-elements; the BLOB content is not returned. +|WithBLOBValue |Only applicable to BLOB-elements; the BLOB content is returned as _base64_-encoded string. +|=== + + +==== +Note: level parameters are mapped to the query parameter “?extent” in the HTTP/REST APIs, see also Clause 12.8. +==== + + +=== Applicability of SerializationModifiers + +The defined SerializationModifiers are only valid for specific operations due to their generic nature. Also, the applicability depends on the kind of the accessed resource. The following list defines the applicability of the modifiers to the resources. + +GET and PATCH operations may combine all SerializationModifiers as listed below. PUT operations may only use the Extent Modifier. POST operations do not use SerializationModifiers. + +.Applicability of SerializationModifiers +[%autowidth, width="100%", cols="37%,13%,28%,22%",options="header",] +|=== +|*Resource Name* |*Level Modifier* |*Content Modifier* |*Extent Modifier* +|Asset Administration Shell |No |Normal/Reference |No +|Submodel Reference |No |No |No +|Submodel |Deep/Core |Normal/ + +Metadata/Value/Reference/Path a| +WithoutBLOBValue/ + +WithBLOBValue + +4+|*SubmodelElements* +|SubmodelElementCollection |Deep/Core |Normal/ Metadata/Value/Reference/Path a| +WithoutBLOBValue/ + +WithBLOBValue + +|SubmodelElementList |Deep/Core |Normal/ Metadata/Value/Reference/Path a| +WithoutBLOBValue/ + +WithBLOBValue + +|Entity |Deep/Core |Normal/ Metadata/Value/Reference/Path a| +WithoutBLOBValue/ + +WithBLOBValue + +|BasicEventElement |No |Normal/ + +Metadata/Value/Reference |No +|Capability |No |Normal/Reference |No +|Operation |No |Normal/Reference |No +4+|*DataElements* +|Property |No |Normal/ Metadata/Value/Reference |No +|MultilanguageProperty |No |Normal/ Metadata/Value/Reference |No +|Range |No |Normal/ Metadata/Value/Reference |No +|ReferenceElement |No |Normal/ Metadata/Value/Reference |No +|RelationshipElement |No |Normal/ Metadata/Value/Reference |No +|AnnotatedRelationshipElement |No |Normal/ Metadata/Value/Reference |No +|Blob |No |Normal/ Metadata/Value/Reference a| +WithoutBLOBValue/ + +WithBLOBValue + +|File |No |Normal/ Metadata/Value/Reference |No +|=== + + +==== +Note: EventPayload defines the necessary information of an event instance sent out or received. It is, however not part of the AAS and submodel hierarchical structure. +==== + + +=== Serialization in Specified Formats (SerializationModifier _Content_) + +==== General + +If the SerializationModifier _Content_ is set to *Value*, the ValueOnly-Serialization is used as described below. + + +==== +Note: to date, only the serialization in JSON has been specified. Other serialization formats (e.g. XML, RDF, etc.) will be defined in future versions of this document. +==== + + +==== ValueOnly-Serialization in JSON + + +==== +Note: this clause explains how to return the submodel element’s value only if the SerializationModifier _Content_ is set to _Value_. +==== + + +In many cases, applications using data from Asset Administration Shells already know the Submodel regarding its structure, attributes, and semantics. Consequently, there is not always a need to receive the entire model information, which can be requested separately via _Content_ modifier set to _Metadata_, in each request since it is constant most of the time. Instead, applications are most likely only interested in the values of the modelled data. Furthermore, having limited processing power or limited bandwidth, one use case of this SerializationModifier is to transfer data as efficiently as possible. Semantics and data might be split into two separate architecture building blocks. For example, a database would suit the needs for querying semantics, while a device would only provide the data at runtime. Two separate requests make it possible to build up a user interface (UI) and show new upcoming values highly efficiently. + +Values are only available for + +* All subtypes of abstract type _DataElement_, +* SubmodelElementList and SubmodelElementCollection resp. for their included SubmodelElements, +* ReferenceElement, +* RelationshipElement + AnnotatedRelationshipElement, +* Entity, +* BasicEventElement. + +Capabilities are excluded from the SerializationModifier’s scope since only data containing elements are in the focus. They are consequently omitted in the serialization. + +The following rules shall be adhered to when serializing a submodel with the SerializationModifier _Value_: + +* A submodel is serialized as an unnamed JSON object. +* A submodel element is considered a leaf submodel element if it does not contain other submodel elements. A leaf submodel element follows the rules for the different submodel elements considered in the serialization, as described below. If it is not a leaf element, the serialization rules must be transitively followed until the value is a leaf submodel element. +* For each submodel element: +** _Property_ is serialized as $\{Property/idShort}: $\{Property/value} where $\{Property/value} is the JSON serialization of the respective property’s value in accordance with the data type to value mapping (see table after this section). +** _MultiLanguageProperty_ is serialized as named JSON object with $\{MultiLanguageProperty/idShort} as the name of the containing JSON property. The JSON object contains an array of JSON objects for each language of the _MultiLanguageProperty_ with the language as name and the corresponding localized string as value of the respective JSON property. The language name is defined as two chars according to ISO 639-1. +** _Range_ is serialized as named JSON object with $\{Range/idShort} as the name of the containing JSON property. The JSON object contains two JSON properties. The first is named “min”. The second is named “max”. Their corresponding values are $\{Range/min} and $\{Range/max}. +** _File_ and _Blob_ are serialized as named JSON objects with $\{File/idShort} or $\{Blob/idShort}as the name of the containing JSON property. The JSON object contains two JSON properties. The first refers to the content type named $\{File/contentType} resp. $\{Blob/contentType}. The latter refers to the value named “value” $\{File/value} resp. $\{Blob/value}. The resulting ValueOnly object is indistinguishable whether it contains File or Blob attributes. Therefore, the receiver needs to take the type of the target resource into account. Since the receiver knows in advance if a File or a Blob SubmodelElement shall be manipulated, it can parse the transferred ValueOnly object accordingly as a File or Blob object. +** _SubmodelElementCollection_ is serialized as named JSON object with $\{SubmodelElementCollection/idShort} as the name of the containing JSON property. The elements contained within the struct are serialized according to their respective type with $\{SubmodelElement/idShort} as the name of the containing JSON property. +** _SubmodelElementList_ is serialized as a JSON array with the index of the contained SubmodelElement in the list as the position in the JSON array. The elements contained within the list are serialized according to their respective type. +** _ReferenceElement_ is serialized as $\{ReferenceElement/idShort}: $\{ReferenceElement/value} where $\{ReferenceElement/value} is the serialization of the _Reference_ class. +** _RelationshipElement_ is serialized as named JSON object with $\{RelationshipElement/idShort} as the name of the containing JSON property. The JSON object contains two JSON properties. The first is named “first”. The second is named “second”. Their corresponding values are $\{RelationshipElement/first} resp. $\{Relationship/second}. The values are serialized according to the serialization of a _ReferenceElement_ (see above). +** _AnnotatedRelationshipElement_ is serialized according to the serialization of a _ReleationshipElement_ (see above). Additionally, a third named JSON object is introduced with “annotations” as the name of the containing JSON property. The value is $\{AnnotatedRelationshipElement/annotations}. The values of the array items are serialized depending on the type of the annotation data element. +** _Entity_ is serialized as named JSON object with $\{Entity/idShort} as the name of the containing JSON property. The JSON object contains three JSON properties. The first is named “statements” $\{Entity/statements} and contains an array of the serialized submodel elements according to their respective serialization mentioned in this clause. The second is named either “globalAssetId” or “specificAssetId” and contains either a _Reference_ (see above) or a _SpecificAssetId_. The third property is named “entityType” and contains a string representation of $\{Entity/entityType}. +** _BasicEventElement_ is serialized as named JSON object with $\{BasicEventElement/idShort} as the name of the containing JSON property. The JSON object contains one JSON property named “observed” with the corresponding value of $\{BasicEventElement/observed} as the standard serialization of the _Reference_ class. +** _SpecificAssetId_ is serialized as named JSON object with three JSON properties named as the attributes of _SpecificAssetId._ + +* Submodel elements defined in the submodel other than the ones mentioned above are not subject to serialization of that SerializationModifier. + +*Data type to value mapping* footnote:[cf. https://openmanufacturingplatform.github.io/sds-documentation/bamm-specification/2.0.0/datatypes.html] + +The serialization of submodel element values is described in the following table. The left column “Data Type” shows the data types which can be used for submodel element values. The data types are defined according to the W3C XML Schema (https://www.w3.org/TR/xmlschema-2/#built-in-datatypes and https://www.w3.org/TR/xmlschema-2/#built-in-derived). “Value Range” further explains the possible range of data values for this data type. The right column comprises related examples of the serialization of submodel element values. + +.Mapping of Data Types in ValueOnly-Serialization +[%autowidth, width="100%", cols="15%,15%,9%,30%,31%",options="header",] +|=== +| |*Data Type* |*JSON Type* |*Value Range* |*Sample Values* +|Core Types |xs:string |string |Character string |"Hello world", "Καλημέρα κόσμε", "コンニチハ" +| |xs:boolean |boolean |true, false |true, false +| |xs:decimal |number |Arbitrary-precision decimal numbers |-1.23, 126789672374892739424.543233, 100000.00, 210 +| |xs:integer |number |Arbitrary-size integer numbers |-1, 0, 126789675432332938792837429837429837429, 100000 +|IEEE-floating-point numbers |xs:double |number |64-bit floating point numbers |-1.0, -0.0, 0.0, 234.567e8, 234.567e+8, 234.567e-8 +| |xs:float |number |32-bit floating point numbers |-1.0, -0.0, 0.0, 234.567e8, 234.567e+8, 234.567e-8 +|Time and data |xs:date |string |Dates (yyyy-mm-dd) with or without time zone |"2000-01-01","2000-01-01Z", "2000-01-01+12:05" +| |xs:time |string |Times (hh:mm:ss.sss…​) with or without time zone |"14:23:00", "14:23:00.527634Z", "14:23:00+03:00" +| |xs:dateTime |string |Date and time with or without time zone |"2000-01-01T14:23:00", "2000-01-01T14:23:00.66372+14:00" +| |xs:dateTimeStamp |string |Date and time with required time zone |"2000-01-01T14:23:00.66372+14:00" +|Recurring and partial dates |xs:gYear |string |Gregorian calendar year |"2000", "2000+03:00" +| |xs:gMonth |string |Gregorian calendar month |"--04", "--04+03:00" +| |xs:gDay |string |Gregorian calendar day of the month |"---04", "---04+03:00" +| |xs:gYearMonth |string |Gregorian calendar year and month |"2000-01", "2000-01+03:00" +| |xs:gMonthDay |string |Gregorian calendar month and day |"--01-01", "--01-01+03:00" +| |xs:duration |string |Duration of time |"P30D", "-P1Y2M3DT1H", "PT1H5M0S" +| |xs:yearMonthDuration |string |Duration of time (months and years only) |"P10M", 'P5Y2M" +| |xs:dayTimeDuration |string |Duration of time (days, hours, minutes, seconds only) |"P30D", 'P1DT5H", 'PT1H5M0S" +|Limited-range integer numbers |xs:byte |number |-128…+127 (8 bit) |-1, 0, 127 +| |xs:short |number |-32768…+32767 (16 bit) |-1, 0, 32767 +| |xs:int |number |2147483648…+2147483647 (32 bit) |-1, 0, 2147483647 +| |xs:long |number |-9223372036854775808…+9223372036854775807 (64 bit) |-1, 0, 9223372036854775807 +| |xs:unsignedByte |number |0…255 (8 bit) |0, 1, 255 +| |xs:unsignedShort |number |0…65535 (16 bit) |0, 1, 65535 +| |xs:unsignedInt |number |0…4294967295 (32 bit) |0, 1, 4294967295 +| |xs:unsignedLong |number |0…18446744073709551615 (64 bit) |0, 1, 18446744073709551615 +| |xs:positiveInteger |number |Integer numbers >0 |1, 7345683746578364857368475638745 +| |xs:nonNegativeInteger |number |Integer numbers ≥0 |0, 1, 7345683746578364857368475638745 +| |xs:negativeInteger |number |Integer numbers <0 |-1, -23487263847628376482736487263847 +| |xs:nonPositiveInteger |number |Integer numbers ≤0 |-1, 0, -93845837498573987498798987394 +|Encoded binary data |xs:hexBinary |string |Hex-encoded binary data |"6b756d6f77617368657265" +| |xs:base64Binary |string |base64-encoded binary data |"a3Vtb3dhc2hlcmU=" +|Miscellaneous types |xs:anyURI |string |Absolute or relative URIs and IRIs |"http://customer.com/demo/aas/1/1/1234859590", "urn:example:company:1.0.0" +| |rdf:langString |string |Strings with language tags a| +"'Hello'@en", "'Hallo'@de" + + +==== +Note: the examples are written in RDF/Turtle syntax, and only "Hello" and "Hallo" are the actual values. +==== + + +|=== + +The following types defined by the XSD and RDF specifications are explicitly omitted for serialization: + +xs:language, xs:normalizedString, xs:token, xs:NMTOKEN, xs:Name, xs:NCName, xs:QName, xs:ENTITY, xs:ID, xs:IDREF, xs:NOTATION, xs:IDREFS, xs:ENTITIES, xs:NMTOKENS, rdf:HTML and rdf:XMLLiteral. + + +==== +Note 1: due to the limits in the representation of numbers in JSON, the maximum integer number that can be used without losing precision is 2⁵³-1 (defined as Number.MAX_SAFE_INTEGER). Even if the used data type would allow higher or lower values, they cannot be used if they cannot be represented in JSON. Affected data types are unbounded numeric types xs:decimal, xs:integer, xs:positiveInteger, xs:nonNegativeInteger, xs:negativeInteger, xs:nonPositiveInteger and the bounded type xs:unsignedLong. Other numeric types are not affected. footnote:[cf. https://openmanufacturingplatform.github.io/sds-documentation/bamm-specification/v1.0.0/datatypes.html (with adjustments for +/-INF, NaN, and language-typed literal support)] +==== + + + +==== +Note 2: the ValueOnly-serialization uses JSON native data types, AAS in general uses XML Schema Built-in Datatypes for Simple Data Types and ValueDataType. In case of booleans, JSON accepts only literals true and false, whereas xs:boolean also accepts 1 and 0, respectively. In case of double, JSON number is used in ValueOnly, but JSON number does not support INF/-INF (positive Infinity/negative), which is supported by xs:double. Furthermore, NaN (Not a Number) is also not supported. + +==== + +(See https://datatracker.ietf.org/doc/html/rfc8259#section-6 ) + + +==== +Note 3: language-tagged strings (rdf:langString) containing single quotes (‘) or double quotes (“) are not supported. +==== + + +*Examples conformant to link:#bib1[[1\]]:* + +Full serialization of single submodel element _Property_: + +[source,json,linenums] +---- +{ + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "kind": "Instance", + "semanticlId": { + "type": "ModelReference", + "keys": [ + { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } + ] + }, + "modelType": "Property", + "valueType": "xs:int", + "value": "5000" +} +---- + +With the SerializationModifier set to _Value,_ the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "MaxRotationSpeed": 5000 +} +---- + +For a _SubmodelElementCollection,_ the struct is serialized as objects denoted by curly brackets: + +[source,json,linenums] +---- +{ + "NamesOfFamilyMembers": { + "NameOfMother": "Martha ExampleFamily", + "NameOfFather": "Jonathan ExampleFamily", + "NameOfSon": "Clark ExampleFamily" + } +} +---- + +For a _SubmodelElementList,_ the struct is serialized as array denoted by square brackets: + +[source,json,linenums] +---- +{ + "NamesOfFamilyMembers": [ + "Martha ExampleFamily", + "Jonathan ExampleFamily", + "Clark ExampleFamily" + ] +} +---- + +For a _MultiLanguageProperty_ named “Label”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "Label": [ + {"de": "Das ist ein deutscher Bezeichner"}, + {"en": "That's an English label"} + ] +} +---- + + +==== +Note: in accordance with IETF https://tools.ietf.org/html/rfc5646#page-5[RFC 5646], the language names match the following regular expression: +==== + + +^[a-z]\{2,4}(-[A-Z][a-z]\{3})?(-([A-Z]\{2}|[0-9]\{3}))?$ + +For a _Range_ named “TorqueRange”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "TorqueRange": { + "min": 3, + "max": 15 + } +} +---- + +For a _ReferenceElement_ named “MaxRotationSpeedReference”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "MaxRotationSpeedReference": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "MaxRotationSpeed" + } + ] + } +} +---- + +For the same _ReferenceElement,_ the payload is minimized to the following in case the _Reference_ is of subtype _GlobalReference_: + +[source,json,linenums] +---- +{ + "MaxRotationSpeedReference": { + "type": "ExternalReference", + "keys": [ + { + "type": "GlobalReference", + "value": "0173-1#02-BAA120#008" + } + ] + } +} +---- + +For a _File_ named “Document”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "Document": { + "contentType": "application/pdf", + "value": "SafetyInstructions.pdf" + } +} +---- + +For a _Blob_ named “Library”, the payload is minimized to the following if the SerializationModifier _Extent_ is set to *_WithoutBLOBValue_* + +[source,json,linenums] +---- +{ + "Library": { + "contentType": "application/octet-stream" + } +} +---- + +If the SerializationModifier Extent is set to *_WithBlobValue_*, there is an additional attribute containing the base64-encoded value: + +[source,json,linenums] +---- +{ + "Library": { + "contentType": "application/octet-stream", + "value": "VGhpcyBpcyBteSBibG9i" + } +} +---- + +For a _RelationshipElement_ named “CurrentFlowsFrom”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "CurrentFlowsFrom": { + "first": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "PlusPole" + } + ] + }, + "second": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/0/1234859123490" + }, + { + "type": "Property", + "value": "MinusPole" + } + ] + } + } +} +---- + +For an _AnnotatedRelationshipElement_ named “CurrentFlowFrom”, with an annotated _Property_-DataElement “AppliedRule”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "CurrentFlowsFrom": { + "first": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "PlusPole" + } + ] + }, + "second": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/0/1234859123490" + }, + { + "type": "Property", + "value": "MinusPole" + } + ] + }, + "annotation": [ + { + "AppliedRule": "TechnicalCurrentFlowDirection" + } + ] + } +} +---- + +For an _Entity_ named “MySubAssetEntity”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "MySubAssetEntity": { + "statements": { + "MaxRotationSpeed": 5000 + }, + "entityType": "SelfManagedEntity", + "globalAssetId": { + "type": "ExternalReference", + "keys": [ + { + "type": "GlobalReference", + "value": "http://customer.com/demo/asset/1/1/MySubAsset" + } + ] + } + } +} +---- + +For a BasicEventElement named “MyBasicEvent”, the payload is minimized to the following: + +[source,json,linenums] +---- +{ + "MyBasicEvent": { + "observed": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "CurrentValue" + } + ] + } + } +} +---- + +==== JSON-Schema for the ValueOnly-Serialization + +The following JSON-Schema represents the validation schema for the ValueOnly-Serialization of submodel elements. This holds true for all submodel elements mentioned in the previous clause except for _SubmodelElementCollections_. Since _SubmodelElementCollections_ are treated as objects containing submodel elements of any kind, the integration into the same validation schema would result in a circular reference or ambiguous results ignoring the actual validation of submodel elements other than _SubmodelElementCollections_. Hence, the same validation schema must be applied for each _SubmodelElementCollection_ within a submodel element hierarchy. In this case, it may be necessary to create a specific JSON-Schema for the individual use case. The _SubmodelElementCollection_ is added to the following schema for completeness and clarity. It is, however, not referenced from the _SubmodelElementValue_-oneOf-Enumeration due to the reasons mentioned above. + +See Annex B for an example that validates against this schema. + +[source,json,linenums] +---- +{ + "$schema": "https://json-schema.org/draft/2019-09/schema", + "title": "ValueOnly-Serialization-Schema", + "$id": "https://admin-shell.io/schema/valueonly/json/V3.0", + "definitions": { + "AnnotatedRelationshipElementValue": { + "type": "object", + "properties": { + "first": { + "$ref": "#/definitions/ReferenceValue" + }, + "second": { + "$ref": "#/definitions/ReferenceValue" + }, + "annotation": { + "type": "array", + "items": { + "$ref": "#/definitions/ValueOnly" + } + } + }, + "required": [ + "first", + "second", + "annotation" + ], + "additionalProperties": false + }, + "BasicEventElementValue": { + "type": "object", + "properties": { + "observed": { + "$ref": "#/definitions/ReferenceValue" + } + }, + "required": [ + "observed" + ], + "additionalProperties": false + }, + "BlobValue": { + "type": "object", + "properties": { + "contentType": { + "type": "string", + "minLength": "1", + "maxLength": "100" + }, + "value": { + "type": "string" + } + }, + "required": [ + "contentType", + "value" + ], + "additionalProperties": false + }, + "BooleanValue": { + "type": "boolean", + "additionalProperties": false + }, + "EntityValue": { + "type": "object", + "properties": { + "statements": { + "$ref": "#/definitions/ValueOnly" + }, + "entityType": { + "enum": [ + "SelfManagedEntity", + "CoManagedEntity" + ] + }, + "globalAssetId": { + "type": "string" + }, + "specificAssetIds": { + "type": "array", + "items": { + "$ref": "#/definitions/SpecificAssetIdValue" + } + } + }, + "required": [ + "statements", + "entityType" + ], + "additionalProperties": false + }, + "FileValue": { + "type": "object", + "properties": { + "contentType": { + "type": "string", + "minLength": "1", + "maxLength": "100" + }, + "value": { + "type": "string", + "minLength": "1", + "maxLength": "200" + } + }, + "required": [ + "contentType", + "value" + ], + "additionalProperties": false + }, + "Identifier": { + "type": "string" + }, + "Key": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "type", + "value" + ], + "additionalProperties": false + }, + "LangString": { + "type": "object", + "patternProperties": { + "^[a-z]{2,4}(-[A-Z][a-z]{3})?(-([A-Z]{2}|[0-9]{3}))?$": { + "type": "string" + } + }, + "additionalProperties": false + }, + "MultiLanguagePropertyValue": { + "type": "array", + "items": { + "$ref": "#/definitions/LangString" + }, + "additionalProperties": false + }, + "NumberValue": { + "type": "number", + "additionalProperties": false + }, + "OperationRequestValueOnly": { + "inoutputArguments": { + "$ref": "#/definitions/ValueOnly" + }, + "inputArguments": { + "$ref": "#/definitions/ValueOnly" + }, + "timestamp": { + "type": "string", + "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$" + }, + "additionalProperties": false + }, + "OperationResultValueOnly": { + "executionState": { + "type": "string", + "enum": ["Initiated", "Running", "Completed", "Canceled", "string", + "Failed", "Timeout"] + }, + "inoutputArguments": { + "$ref": "#/definitions/ValueOnly" + }, + "outputArguments": { + "$ref": "#/definitions/ValueOnly" + }, + "additionalProperties": false + }, + "PropertyValue": { + "oneOf": [ + { + "$ref": "#/definitions/StringValue" + }, + { + "$ref": "#/definitions/NumberValue" + }, + { + "$ref": "#/definitions/BooleanValue" + } + ] + }, + "RangeValue": { + "type": "object", + "properties": { + "min": { + "type": "number" + }, + "max": { + "type": "number" + } + }, + "required": [ + "min", + "max" + ], + "additionalProperties": false + }, + "ReferenceElementValue": { + "$ref": "#/definitions/ReferenceValue" + }, + "ReferenceValue": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": ["ModelReference", "ExternalReference"] + }, + "keys": { + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + }, + "additionalProperties": false + }, + "RelationshipElementValue": { + "type": "object", + "properties": { + "first": { + "$ref": "#/definitions/ReferenceValue" + }, + "second": { + "$ref": "#/definitions/ReferenceValue" + } + }, + "required": [ + "first", + "second" + ], + "additionalProperties": false + }, + "SpecificAssetIdValue": { + "type": "object", + "patternProperties": { + "(.*?)": { + "type": "string" + } + } + }, + "StringValue": { + "type": "string", + "additionalProperties": false + }, + "SubmodelElementCollectionValue": { + "$ref": "#/definitions/ValueOnly" + }, + "SubmodelElementListValue": { + "type": "array", + "items": { + "$ref": "#/definitions/SubmodelElementValue" + } + }, + "SubmodelElementValue": { + "oneOf": [ + { + "$ref": "#/definitions/BasicEventElementValue" + }, + { + "$ref": "#/definitions/RangeValue" + }, + { + "$ref": "#/definitions/MultiLanguagePropertyValue" + }, + { + "$ref": "#/definitions/FileBlobValue" + }, + { + "$ref": "#/definitions/ReferenceElementValue" + }, + { + "$ref": "#/definitions/RelationshipElementValue" + }, + { + "$ref": "#/definitions/AnnotatedRelationshipElementValue" + }, + { + "$ref": "#/definitions/EntityValue" + }, + { + "$ref": "#/definitions/PropertyValue" + }, + { + "$ref": "#/definitions/SubmodelElementListValue" + } + ] + }, + "ValueOnly": { + "propertyNames": { + "pattern": "^[A-Za-z_][A-Za-z0-9_-]*$" + }, + "patternProperties": { + "^[A-Za-z_][A-Za-z0-9_-]*$": { + "$ref": "#/definitions/SubmodelElementValue" + } + }, + "additionalProperties": false + } + } +} +---- + +==== IdShortPath Serialization + +To get only the idShort paths of a submodel element hierarchy, the serialization format is specified in terms of an idShortPath notation to be returned in an unnamed JSON-array. The notation differs depending on whether a SubmodelElementCollection or a SubmodelElementList is used. In the first case, the submodel element’s idShort is separated by “.” (dot) from top level down to child level. In the second case, square brackets with an index “[\<>]” are appended after the idShort of the containing SubmodelElementList. + +In the following example, where a request for idShort paths starts at _MySubmodelElementCollection_ with SerializationModifier level = deep, the list of idShort paths is returned as follows: + +Submodel: MySubmodel + +* Property: MyTopLevelProperty +* SMC: MySubmodelElementCollection +** Property: MySubProperty1 +** Property: MySubProperty2 +** SMC: MySubSubmodelElementCollection +*** Property: MySubSubProperty1 +*** Property: MySubSubProperty2 +** SML: MySubSubmodelElementList1 +*** Property: “MySubTestValue1”, +*** Property: “MySubTestValue2”, +** SML: MySubSubmodelElementList2 +*** SML +**** Property: “MySubTestValue3” + + +[source,json,linenums] +---- +[ + "MySubmodelElementCollection", + "MySubmodelElementCollection.MySubProperty1", + "MySubmodelElementCollection.MySubProperty2", + "MySubmodelElementCollection.MySubmodelElementCollection", + "MySubmodelElementCollection.MySubmodelElementCollection.MySubProperty1", + "MySubmodelElementCollection.MySubmodelElementCollection.MySubProperty2", + "MySubmodelElementCollection.MySubSubmodelElementList1", + "MySubmodelElementCollection.MySubSubmodelElementList1[0]", + "MySubmodelElementCollection.MySubSubmodelElementList1[1]", + "MySubmodelElementCollection.MySubSubmodelElementList2", + "MySubmodelElementCollection.MySubSubmodelElementList2[0]", + "MySubmodelElementCollection.MySubSubmodelElementList2[0][0]" +] +---- + +== HTTP/REST API + +=== General + +This clause describes the technology mapping to HTTP/REST APIs. + +The OpenAPI specification of the HTTP/REST APIs can be found at SwaggerHub. + +To clearly separate the different parts of the AAS model, the model has been split into several HTTP/REST APIs. Combinations then form service specifications and profiles, each materialized as an individual OpenAPI document. + +The schema for the metamodel of Part 1 is available at: + +https://app.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0[https://app.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0#] + +This schema includes general objects, which are used in the further defined APIs. + +Additional objects are needed for Part 2, e.g. for the ValueOnly-Serialization or the descriptors for the registry. The related schema of Part 2 objects is available at: + +https://app.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0[https://app.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#] + +This schema includes general objects, which are used in the further defined APIs. + +The definition of endpoints is based on DIN SPEC 16593. The related schema for DIN SPEC 16593 is available at: https://app.swaggerhub.com/domains/Plattform_i40/DINSPEC16593-Schemas/V3.0[https://app.swaggerhub.com/domains/Plattform_i40/DINSPEC16593-Schemas/V3.0#] + +This schema includes general objects, which are used in the further defined APIs. These objects are the basis for the definition of Part 2 APIs. + +The AAS API including the Submodel API, Serialization API, and Self-Description API is available at: + +https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001[https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001#] + +This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1. + +The Submodel API including the Serialization API, and Self-Description API is available at: + +https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-001[https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-001#] + +This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1. + +The AAS Repository API including AAS API, Submodel API, Submodel Repository API, Serialization API, and Self-Description API is available at: https://app.swaggerhub.com/apis/Plattform_i40/RepositoryServiceSpecification/V3.0_SSP-001[https://app.swaggerhub.com/apis/Plattform_i40/RepositoryServiceSpecification/V3.0_SSP-001#] + +This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1. + +The Registry and Discovery APIs are independent from the other APIs. An AAS Registry including an AAS Registry API, Submodel Registry API, and Self-Description API is available at: + +https://app.swaggerhub.com/apis/Plattform_i40/RegistryServiceSpecification/V3.0_SSP-001[https://app.swaggerhub.com/apis/Plattform_i40/RegistryServiceSpecification/V3.0_SSP-001#] + +The Discovery API including the Self-Description API is available at: + +https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification/V3.0_SSP-001[https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification/V3.0_SSP-001#] + +Both are a combination of APIs, which form a service specification according to the Industrie 4.0 Service Model in Clause 4.1. + +This clause gives an overview of the HTTP/REST API and describes general design decisions. + +=== Design Decisions + +The following design decisions and constraints hold for the HTTP/REST API: + +* OpenAPI and Swaggerhub shall be used for specification. This leads to the constraint that one operation can only provide one type of a resulting payload. +* This document assumes version 1.1 of HTTP. +* An endpoint of the HTTP/REST API shall always use HTTPS (Port 443) with an up-to-date level of encryption. +* The SerializationModifier “content” changes the type the of payload for inputs or results. To ensure type-safe APIs, this parameter is mapped to the path suffixes “/$value”, “/$metadata”, “/$reference”, and “/$path”. “content=Normal” is mapped to the path without any “/$” suffix. +* Generic SerializationModifiers changing the size of payload for input or result have been mapped to corresponding query parameters, e.g. ”?level=” or “?extent=”. +* Query parameters are also used when the type of a resulting payload is a list of objects and the type remains the same, while the query parameter filters the content of the list, e.g. GetAllSubmodels with optional query parameters “?semanticId=” or “?idShort=”. +* Complete objects are provided as requested payloads, e.g. a complete submodel. This corresponds to the generic SerializationModifier content=”Normal”. Reduced objects can be requested by the path suffix “/$”. See Clause 12.5 for further details. Exceptions to this rule are API Operations requiring pagination and error cases. +* By default, blobs are not part of the payload. Using ?extent=WithBLOBValue includes blobs for submodel elements of kind BLOB. +* Submodels define a hierarchical structure. Certain operations use an idShort-path to access deeper parts in the hierarchy. To easily support this in the REST API, “.” or “[index]” is used as a delimiter in the idShort-paths. Please see Clause 12.3. Since an idShort-path could include square brackets like “[index]”, the idShort-path must be URL-encoded. +* Identifiers of Identifiables are base64url-encoded to be passed to the HTTP/REST API (see https://www.base64url.com/). These may be identifiers for Asset Administration Shells, Submodels, or Concept Descriptions. + +Identifiers may also be passed as base64url-encoded query parameters, e.g. for semanticId or assetId. Such query parameters are typically used when a list of objects may be retrieved in the resulting payload. A list of base64url-encoded ids is simply passed as comma-separated query parameters. +* Please note that base64url-encoding differs slightly from base64-encoding and has been specifically defined for passing URLs. An appropriate base64url implementation needs to be used for encoding/decoding. See RFC 4648 for further details. +* When base64url or base64-encoding is mentioned in connection with string values (e.g. Identifiers), the UTF-8 decoded byte array representation of that string is used for the base64url or base64-encoding. +* When retrieving AssetAdministrationShells (/shells, /lookup/shells), a query parameter “?assetids=” can be specified. Such assetId may be a globalAssetId or specificAssetId. The corresponding key-value-pair is first serialized to JSON and then base64url-encoded. The resulting encoded string is the value of “?assetids=”. +* In some operations, references are part of the query parameters e.g. “?semanticId=”. The corresponding reference is first serialized to JSON and then base64url-encoded. The resulting encoded string is the value of “?semanticId=”. +* Even though the metamodel of the AAS distinguishes between the attributes “semanticId” and “supplementalSemanticId”, the query parameter “?semanticId” targets both. +* This encoding (serialize to JSON + base64url) is also used for SpecificAssetIds, i.e. for GetAllAssetAdministrationShellIdsByAssetLink (/lookup/shells). For the example “[\{"key": "globalAssetId","value": "http://example.company/myAsset"},\{"key": "myOwnInternalAssetId","value": "12345ABC"}]”, the resulting base64url-encoded value of the query parameter is + +“?assetIds=W3sia2V5IjogImdsb2JhbEFzc2V0SWQiLCJ2YWx1ZSI6ICJodHRwOi8vZXhhbXBsZS5jb21wYW55L215QXNzZXQifSx7ImtleSI6ICJteU93bkludGVybmFsQXNzZXRJZCIsInZhbHVlIjogIjEyMzQ1QUJDIn1d”. + +If several key-value-pairs are included, all must be part of the key-value-pairs on the server. +* Comparisons of idShort are made case-sensitive in the HTTP/REST API to avoid repeating toupper()/tolower() conversions. + + +==== +Note: this is conformant to the change made in Part 1 V3.0 link:#bib1[[1\]]. +==== + + +* GetAll…-API Operations will retrieve a list of objects as the resulting payload, e.g. GetAllSubmodelElements. +* The splitting of big result sets into smaller pieces, commonly referred to as “pagination”, is executed using the cursor query parameter. Therefore, result objects for GetAll…-API Operations and others requiring pagination return their content inside a Result structure. See Clause 12.6 for further explanations. +* In general, only GET, POST, PUT, PATCH and DELETE are used. POST is used to create new objects and to invoke operations. +* Some interfaces may be combined in a so-called “superpaths”, e.g. the Asset Administration Shell Repository Interface may be combined with the AAS Interface and the Submodel Interface. This results in a complete path like “/shells/\{aas-identifier}/submodels/\{submodel-identifier}/*”. This is especially useful when all data is hosted in the same repository. Superpaths are defined as part of the service specifications and profiles. +* The attribute AssetAdministrationShell/submodels (array of References) maps to the path segment “/submodel-refs” to distinguish it from the superpath segment “/submodels” (array of Submodels). +* Each interface includes a “/description” operation for self-discovery to provide detailed information about the interface. A server supporting the HTTP/REST API may also provide a server global “/description” to provide the information about all available profiles on that server. +* The recursive nature of the reference class (Reference/referredSemanticId points to Reference again) cannot be represented in SwaggerHub due to a bug in the SwaggerUI code. Therefore, the additional class “ReferenceParent" has been added. “ReferenceParent" shall not be used in productive operations and is only a placeholder for “Reference”. When implementing generated code originating from the SwaggerHub schemas, please delete “ReferenceParent” and add its attributes to “Reference”. + +=== API Versioning + +API versioning provides a way to deal with different versions of the same API at the same time. This way, older versions may still be accessible on the same server to provide services to legacy clients without breaking existing functionality. + +There are different solutions regarding API versioning involving URL-based versioning, query parameter-based versioning, as well as HTTP header-oriented solutions using custom or standard headers. + +As different solutions also provide different advantages and disadvantages, *URL-based versioning* has been selected as the most suitable method for the AAS API. Among other advantages, implementation complexity on clients as well as servers is rather low and different versions can be easily accessed through browsers without the need for specific development tools or extensions. + +.Generic URL Scheme for AAS API Versioning +image::image23.png[Ein Bild, das Dunkel enthält. Automatisch generierte Beschreibung,width=481,height=110] + + +Upcoming implementations of AAS related servers need to implement the version prefix “*api/v/*” to provide information of the specific major version regarding AAS Part 2 version, where denotes the implemented major version and denotes the minor version, e.g. “api/v3.0/” (see Figure 4). + +==== +Note:* all URLs mentioned in this document regarding the REST mapping of the AAS APIs have to be understood with this prefix in mind. +==== + + +The versioning scheme for AAS API related services follows semantic versioning footnote:[http://semver.org]. Very briefly, this defines version numbers as a format following: ... + +The major version changes in case of breaking or incompatible changes that need to be addressed by clients. Minor versions add (new) functionality in a backwards compatible way and allow clients with lower minor versions to keep their existing functionality. Patch versions only include backwards compatible bug fixes. + +AAS API versioning uses the major and minor version as described above. A specific AAS API version uses specific related versions of the metamodel as defined in Clause 1.2. AAS API versions with the same major version must remain compatible, i.e. a client written for an older or a newer minor version must still work. This requires corresponding testing of clients and servers. + +Additionally, “Release candidates” are variants of the implementation of the denoted major version. For example, “3.1.0 RC2” should be interpreted as the second (alternative) release candidate for version 3.1.0. This will still result in the version prefix “/api/v3.1/”. + +As multiple versions will be supported in the future, an AAS ecosystem consisting of Registry / Discovery services as well as AAS Repository, Submodel (standalone), or AAS (standalone) services should share a consistent version. Therefore, a consistent interface description in the form of OpenAPI documents shall be provided with each major version. + +Upcoming compatibility constraints regarding newer versions will be elaborated in further iterations of this document and related technical descriptions (OpenAPI specification). + +Finally, it is recommended to include an additional "/description” endpoint into each service to further denote information about APIs / servers capabilities. This endpoint provides further information about the API and its supported profiles. The “/description” will be extended with additional information in later versions. + +=== Addressing Resources + +The API allows to address each referable element, either by its global identifier or by its idShort-path depending on the object type. + +If the referable element is an identifiable, it can only be addressed by the global identifier of the object. All other referable elements are addressable by the idShort-path. + +The idShort-path is a chain of idShorts or SubmodelElementList-indexes, which points to an element within a hierarchy of elements. The root of the idShort-path is always a submodel and the first element in an idShort-path is always an idShort of a first level SubmodelElement within a Submodel. Technically, the idShort path is a string and the idShorts are separated by a dot while the SubmodelElementList-indexes are written in brackets. + +.Example Hierarchy of Submodel Elements +image::image24.jpeg[image24,width=642,height=367] + +The example hierarchy in Figure 5 shows a Submodel with a hierarchical structure of SubmodelElements. The submodel can be addressed by its global identifier “https://admin-shell.io/sampleSM”. The other elements in the figure do not have a global identifier; they are, however, uniquely identifiable and addressable by the submodel identifier and the idShort-path. The idShort-path in this example pointing to the Property p1 is “sme1.sme2[0].p1”. The hierarchy is built on parent-child relations between the elements. There are four elements which can aggregate SubmodelElements and create deeper hierarchal structures. The elements are Submodel, SubmodelElementCollection, SubmodelElementList, and Entity. The fields used to navigate to a deeper level of the hierarchy can be seen in the following table. + +.Children of certain objects +[%autowidth, width="100%", options="header",] +|=== +|*Element Name* |*Child aggregation field name* +|Submodel |SubmodelElement +|SubmodelElementCollection |value +|SubmodelElementList |value +|AnnotatedRelationshipElement |annotations +|Entity |statements +|=== + +*Example requests:* + +GET /submodels/aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ/submodel/submodelElements/ sme1.sme2%5B0%5D.p1 + +Add a new Property to the Entity statements: + +POST /submodels/aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ/submodel/submodelElements/ sme1.sme2%5B0%5D + + +==== +Note 1: to avoid problems with IRI values in URLs, the identifiers shall be base64url-encoded before using them as parameters in the HTTP-APIs. IdshortPaths are base64url-encoded to also allow square brackets. +==== + + + +==== +Note 2: in the example above, “aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ” is the base64url-encoding of “https://admin-shell.io/sampleSM”, “sme1.sme2%5B0%5D.p1” is the URL-encoding of “sme1.sme2[0].p1”, and “sme1.sme2%5B0%5D” is the URL-encoding of “sme1.sme2[0]”. +==== + + +=== Metadata Objects + +Metadata objects are defined for scenarios where a client only wants to access the metadata of an object, but not the value. *Metadata objects are only part of HTTP/REST and do not change the metamodel.* Metadata objects are used to reduce the payload response to a minimum and to avoid the recursive traversing through the data model when not needed. In many cases, a client is not interested in each child element or value of a resource, but only in the resource itself. + +A metadata object does not contain any additional fields in relation to its full object representation, only some fields are left off. The left off fields are fields which could be requested by an own API call and may consist of a recursive or potentially large substructure. The serialization of a metadata object is the same as for the original full object, but without the left off fields. + +.Metadata Attributes +[%autowidth, width="100%", cols="48%,52%",options="header",] +|=== +|*Class Name* |*Fields not available in metadata representation* +2+|*Identifiables* +|AssetAdministrationShell |assetInformation, submodels +|Submodel |submodelElements +2+|*SubmodelElements* +|SubmodelElementCollection |value +|SubmodelElementList |value +|Entity |statements, globalAssetId, specificAssetId +|BasicEventElement |observed +|Capability |-- +|Operation |-- +2+|*DataElements* +|Property |value, valueId +|MultilanguageProperty |value, valueId +|Range |min, max +|ReferenceElement |value +|RelationshipElement |first, second +|AnnotatedRelationshipElement |first, second, annotations +|Blob |value, contentType +|File |value, contentType +|=== + + +*Example* + +The example shows a JSON serialization of an AssetAdministrationShell object in its full representation and how it looks like in a metadata representation. + + +==== +Note: for editorial reasons, some fields which are the same for both representations are omitted. +==== + +.AssetAdministrationShell JSON Serialization Example +|=== +a| +[source,json,linenums] +---- +{ + "idShort": "TestAssetAdministrationShell", + "description": [...], + "id": {...}, + ... + "derivedFrom": {...} + "assetInformation": {...}, + "submodels": [...] +} +---- +|=== + +.AssetAdministrationShell Metadata JSON Serialization Example +|=== +a| +[source,json,linenums] +---- +{ + "idShort": "TestAssetAdministrationShell", + "description": [...], + "id": {...}, + ... + "derivedFrom": {...}, +} +---- +|=== + + +=== Pagination + +Pagination is a commonly used pattern to break down potentially long result lists into smaller pieces for a better control of the network and computational load on both the server and the client side. For instance, the OData protocol link:#bib8[[8\]] provides guidelines for parameters and behavior on the client and server side. In addition, the proposals of the RFC 8977 footnote:[see Chapter 2.4 of RFC 8977] present a best practice for web APIs. In the scope of the AAS HTTP/REST API, the query parameter “cursor” controls, which part of a longer result set is returned. + +The AAS client may decide on the appropriate size of the result list through the limit parameter. If it is not specified, the server must comply to the default value or explicitly indicate it in the response object. + +Pagination is currently only defined for the HTTP/REST API. Other APIs might introduce different patterns to control the response content. + +Pagination is controlled by the client via the query parameters “cursor” and “limit”. They can be combined with all other query parameters as defined in this document and listed in the following table: + +.Parameters for Pagination +[%autowidth, width="100%", cols="15%,19%,8%,58%",options="header",] +|=== +|*Parameter* |*Values* |*Default* |*Explanation* +|Cursor |string |- a| +The position from which to resume a result listing. The value may be base64url-encoded and contain additional information which helps the server to respond more efficiently. However, the client must not expect any meaning and treat the cursor value as an arbitrary character sequence. + +The server must interpret a missing cursor as if the client wants to retrieve the first part of the result set. + +|Limit |nonNegativeInteger |100 |The maximum size of the result list. +|=== + +[.underline]#Constraint AASa-001:# The value of the cursor query parameter must not be empty. If the client does not know the cursor value, it must omit the whole query parameter in the request. + + +==== +Note 1: this constraint prohibits that an empty cursor value is sent by the client, e.g. _…?cursor=""_. +==== + + + +==== +Note 2: if the client sends a request without a cursor query parameter, the server must interpret it as if the client wants to retrieve the results from the very beginning. A client may send the query parameter “limit" without any cursor. In that case, the server must return at max the specified number of result items from the beginning. +==== + + +Pagination requires a defined and consistent sorting. The server implementation must ensure a deterministic ordering of the result set. For instance, a server must not return an element A before another element C and in any later request return C before A. This applies in particular if any attribute of either A or C has been changed between the two requests. However, in case a new element B was created (or deleted), the client must expect that B and then C are returned after A. + +Nevertheless, the inherent order of the result set must stay the same. Implementations may maintain an internal sorting attribute to ensure this behavior or implement it in any other appropriate manner. The server is not obligated to inform the client about its ordering schema. + +The server informs the client about pagination attributes through the Result object in the request response. In particular, the Result contains the cursor value for the next page. Additional information, e.g. the overall number of result items, may also be part of it. + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Result +|*Explanation* |An object connecting the actual list of returned items with metadata information to, e.g. fetch the next part of the result set. +|*Inherits from* |-- +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|result |List of returned items. Any kind of Referables is possible, depending on the endpoint which has been requested. |Referable |0..* +|paging_metadata |Additional information for the client to, e.g. fetch the next part of the result set. |PagingMetadata |1 +|=== + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |PagingMetadata +|*Explanation* a| Additional information for the client to, e.g. fetch the next part of the result set. + +==== +Note: more attributes may be added to this class in future versions. +==== + +|*Inherits from* |-- +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|cursor |The cursor for the next part of the result set. No cursor attribute means that the end of the result set has been reached. |string |0..1 +|=== + +=== Payload + +The payload is generated from the technology-neutral specification as described in Part 1 of the Asset Administration Shell Series for JSON link:#bib1[[1\]]. + +The serialization of JSON values is described in Clause 11.4.2. + +Additional classes needed for payload of the HTTP/REST API specification can be found in Clause 10.2. + +=== Modifier Constraints + +To use metadata objects as described in Clause 12.5., modifiers are implemented as HTTP query parameters or path suffixes. For example, a request for a specific submodel may look like: + +GET /submodel/$value?level=deep&extent=withBlobValue + +The following constraints apply for the combination of modifiers: + +* If Level=Core and Content=Value, only the requested object and the direct children without their value (empty value) will be returned in value serialization. If a direct child is a SubmodelElementCollection, "": \{} will be returned. If a direct child is a SubmodelElementList, "": [] will be returned. +* The combination of Content=Metadata and Extent=WithBLOBValue is not allowed. +* The combination of Level=Deep and Content=Reference is not allowed. +* Modifiers cannot be used for POST operations. + +In addition, the modifiers can also be used for PUT operations. They define how the request content is delivered and have the same semantics as in the related GET operation. Only Content=Reference and Content=Path are not possible for PUT. + +=== Mapping of Operations + +The following + +Table 15 shows the mapping of the generic operations to the HTTP/REST API. + +The black entries correspond to the corresponding generic operations. + +[.blue]#The blue entries are operations which only exist in the HTTP/REST API.# + +.Mapping of the generic Interface Operations to HTTP API Operations +[%autowidth, width="100%", cols="31%,7%,23%,39%",options="header",] +|=== +|*Operation Name* |*HTTP + + Verb* |*REST-Path* |*Comment (e.g. optional query parameters)* +4+h|*Asset Administration Shell Interface* +|GetAssetAdministrationShell |GET |/aas |content-suffix: $reference +|PutAssetAdministrationShell |PUT | | +|GetAllSubmodelReferences |GET |/aas/submodel-refs |Pagination +|PostSubmodelReference |POST |/aas/submodel-refs | +|DeleteSubmodelReference |DELETE |/aas/submodel-refs/\{submodelIdentifier} |use base64url-encoded identifier +|GetAssetInformation |GET |/aas/asset-information | +|PutAssetInformation |PUT |/aas/asset-information | +|GetThumbnail |GET |/aas/asset-information/thumbnail | +|PutThumbnail |PUT |/aas/asset-information/thumbnail | +|DeleteThumbnail |DELETE |/aas/asset-information/thumbnail | +| |* |/aas/submodels/\{submodel-identifier}/* |superpath as defined in service specification or profile +4+h|*Submodel Interface* +|GetSubmodel |GET |/submodel a| +?level=deep/core + +path-suffix= $metadata/$value/$reference/$path or no suffix for normal + +?extent=WithoutBLOBValue/WithBLOBValue + +|PutSubmodel |PUT |/submodel | +|PatchSubmodel |PATCH |/submodel |path-suffix=$metadata/$value or no path for normal +|GetAllSubmodelElements |GET |/submodel/submodel-elements a| +?level=deep/core + +path-suffix= $metadata/$value/$reference/$path or no suffix for nomal + +?extent=WithoutBLOBValue/WithBLOBValue + +Pagination + +|GetSubmodelElementByPath |GET |/submodel/submodel-elements/\{idShortPath} a| +use separated idshort path of this element + +?level=deep/core + +path-suffix= $metadata/$value/$reference/$path or no suffix for nomal + +?extent=WithoutBLOBValue/WithBLOBValue + +URL-encoded IdShortPath + +|GetFileByPath |GET |/submodel/submodel-elements/\{idShortPath}/attachment a| +use separated idShort path of this element + +URL-encoded IdShortPath + +|PutFileByPath |PUT |/submodel/submodel-elements/\{idShortPath}/attachment a| +use separated idShort path of this element + +URL-encoded IdShortPath + +|DeleteFileByPath |DELETE |/submodel/submodel-elements/\{idShortPath}/attachment a| +use separated idShort path of this element + +URL-encoded IdShortPath + +|PostSubmodelElement |POST |/submodel/submodel-elements |SerializationModifiers are not used with POST +|PostSubmodelElementByPath |POST |/submodel/submodel-elements/\{idShortPath} a| +use separated idShort path of the parent element + +SerializationModifiers are not used with POST + +|PutSubmodelElementByPath |PUT |/submodel/submodel-elements/\{idShortPath} a| +use separated idShort path of this element + +URL-encoded IdShortPath + +|PatchSubmodelElementByPath |PATCH |/submodel/submodel-elements/\{idShortPath} a| +use separated idShort path of this element + +path-suffix=$metadata/$value or no suffix for normal + +URL-encoded IdShortPath + + +==== +Note: values remain unchanged with content=metadata +==== + + +|PatchSubmodelElementValueByPath |PATCH |/submodel/submodel-elements/\{idShortPath}/$value a| +use separated idShort path of this element; see Clause 11.4.2 for values + +path-suffix=$value + +URL-encoded IdShortPath + +|DeleteSubmodelElementByPath |DELETE |/submodel/submodel-elements/\{idShortPath} a| +use separated idshort path of this element + +URL-encoded IdShortPath + +|InvokeOperationSync |POST |/submodel/submodel-elements/\{idShortPath}/invoke a| +path-suffix=$value or no suffix for normal + +URL-encoded IdShortPath + +|InvokeOperationAsync |POST |/submodel/submodel-elements/\{idShortPath} + +/invoke-async a| +get operationHandle + +path-suffix=$value or no suffix for normal + +URL-encoded IdShortPath + +|GetOperationAsyncResult |GET |/submodel/submodel-elements/\{idShortPath} + +/operation-results/ + +\{handleId} a| +handleId=operationHandle + +path-suffix=$value or no suffix for normal + +URL-encoded IdShortPath + +4+h|*Shell Repository Interface* +|GetAllAssetAdministrationShells |GET |/shells a| +path-suffix=$reference or no suffix normal + +Pagination + +|GetAllAssetAdministrationShellsByAssetId |GET |/shells a| +base64url-encoded JSON-serialized key-value-pairs + +?assetids=… + +Pagination + +|GetAllAssetAdministrationShellsByIdShort |GET |/shells a| +Pagination + +?idShort= + +|GetAssetAdministrationShellById |GET |/shells/\{aasIdentifier} a| +base64url-encoded identifier + +path-suffix=$reference or no suffix normal + +|PostAssetAdministrationShell |POST |/shells | +|PutAssetAdministrationShellById |PUT |/shells/\{aasIdentifier} |base64url-encoded identifier +|DeleteAssetAdministrationShellById |DELETE |/shells/\{aasIdentifier} |base64url-encoded identifier +|AasInterface |* |/shells/\{aasIdentifier}/* |superpath as defined in Service Specification or Profile +| | +|*Submodel Repository Interface* | +|GetAllSubmodels |GET |/submodels a| +path-suffix= $metadata/$value/$reference/$path or no suffix for normal + +Pagination + +|GetAllSubmodelsBySemanticId |GET |/submodels a| +?semanticId= + +path-suffix= $metadata/$value/$reference/$path or no suffix for normal + +[.underline]#Constraint AASa-002#: The base64url-encoded identifier of the semanticId shall have a length of maximum 3072 characters. + +Pagination + +|GetAllSubmodelsByIdShort |GET |/submodels a| +path-suffix= $metadata/$value/$reference/$path or no suffix for normal + +Pagination + +|GetSubmodelById |GET |/submodels/\{submodelIdentifier} a| +path-suffix=$metadata or no suffix for normal + +base64url-encoded identifier + +|PostSubmodel |POST |/submodels | +|PutSubmodelById |PUT |/submodels/\{submodelIdentifier} |base64url-encoded identifier +|PatchSubmodelById |PATCH |/submodels/\{submodelIdentifier} |path-suffix=$metadata/$value or no suffix for normal +|DeleteSubmodelById |DELETE |/submodels/\{submodelIdentifier} |base64url-encoded identifier +|SubmodelInterface |* |/submodels/\{submodelIdentifier}/* |superpath as defined in service specification or profile +| | +|*Concept Description Repository Interface* | +|GetAllConceptDescriptions |GET |/concept-descriptions |Pagination +|GetConceptDescriptionById |GET |/concept-descriptions/\{cdIdentifier} a| +base64url-encoded identifier + +Pagination + +|GetAllConceptDescriptionsByIdShort |GET |/concept-descriptions |Pagination +|GetAllConceptDescriptionsByIsCaseOf |GET |/concept-descriptions a| +base64url-encoded identifier + +Pagination + +|GetAllConceptDescriptionsByDataSpecificationReference |GET |/concept-descriptions a| +base64url-encoded identifier + +Pagination + +|PostConceptDescription |POST |/concept-descriptions/ | +|PutConceptDescriptionById |PUT |/concept-descriptions/\{cdIdentifier} |base64url-encoded identifier +|DeleteConceptDescriptionById |DELETE |/concept-descriptions/\{cdIdentifier} |base64url-encoded identifier +| | +|*AASX File Server Interface* | +|GetAllAASXPackageIds |GET |/packages a| +base64url-encoded identifier + +Pagination + +|PostAASXPackage |POST |/packages | +|GetAASXByPackageId |GET |/packages/\{packageId} |base64url-encoded identifier +|PutAASXByPackageId |PUT |/packages/\{packageId} |base64url-encoded identifier +|DeleteAASXByPackageId |DELETE |/packages/\{packageId} |base64url-encoded identifier +| | +|*Serialization Interface* | +|GenerateSerializationByIds |GET |/serialization |base64url-encoded identifier; AcceptHeader: application/aasx+xml or application/json oder application/xml +| | +|*AAS Basic Discovery Interface* | +|GetAllAssetAdministrationShellIdsByAssetLink |GET |/lookup/shells a| +base64url-encoded JSON-serialized key-value-pairs + +?assetids=… + +Pagination + +|GetAllAssetLinksById |GET |/lookup/shells/\{aasIdentifier} |base64url-encoded identifier +|PostAllAssetLinksById |POST |/lookup/shells/\{aasIdentifier} |base64url-encoded identifier +|DeleteAllAssetLinksById |DELETE |/lookup/shells/\{aasIdentifier} |base64url-encoded identifier +| | +|*AAS Registry Interface* | +|GetAllAssetAdministrationShellDescriptors |GET |/shell-descriptors a| +Pagination + +assetKind=type\|instance + +assetType= base64url-encoded identifier + +|GetAssetAdministrationShellDescriptorById |GET |/shell-descriptors/\{aasIdentifier} |base64url-encoded identifier +|PostAssetAdministrationShellDescriptorById |POST |/shell-descriptors/\{aasIdentifier} |base64url-encoded identifier +|PutAssetAdministrationShellDescriptorById |PUT |/shell-descriptors/\{aasIdentifier} |base64url-encoded identifier +|DeleteAssetAdministrationShellDescriptorById |DELETE |/shell-descriptors/\{aasIdentifier} |base64url-encoded identifier +|Submodel Registry Interface |* |/shell-descriptors/\{aasIdentifier}/submodelDescriptors/* |superpath as defined in Service Specification or Profile +| | +|*Submodel Registry Interface* | +|GetAllSubmodelDescriptors |GET |/submodel-descriptors |Pagination +|GetSubmodelDescriptorById |GET |/submodel-descriptors/\{submodelIdentifier} |base64url-encoded identifier +|PostSubmodelDescriptor |POST |/submodel-descriptors/\{submodelIdentifier} |base64url-encoded identifier +|PutSubmodelDescriptorById |PUT |/submodel-descriptors/\{submodelIdentifier} |base64url-encoded identifier +|DeleteSubmodelDescriptorById |DELETE |/submodel-descriptors/\{submodelIdentifier} |base64url-encoded identifier +| | +|*Descriptor Interface* | +|GetDescription |GET |/description |Provide additional information on interface endpoint; may also be used at a server endpoint to list all descriptions available on that server +|=== + +==== Asynchronous Invocation of the SubmodelElement “Operation” + +The invocation of the SubmodelElement “Operation” is the only call that can appear either synchronously or asynchronously in the current version of the specification. The expected behavior is therefore explained in detail. + +.Sequence for asynchronous invocations of the SubmodelElement 'Operation' +image::image25.png[image25,width=642,height=488] + +The client informs the server whether it is interested in a synchronous (asynchronous) call by targeting the /invoke (/invoke-async) endpoint. In case of a synchronous interaction, the communication channel is kept open until the server has processed the request and responds with an OperationResult object, or a timeout or other kind of error occurs. + +In the asynchronous pattern, the server immediately responds with an Accepted (status code: 202) message containing the link to an endpoint where the client can fetch status information about his request (see Figure 6). This status endpoint is also located at the same SubmodelElement “Operation”, followed by the path segments "/operation-status/\{handleId}”. + +In case the request is incorrect and the server already recognizes it, the server responds directly with the according status code, e.g. 400. If the server can only recognize the error during later processing and not at the time it receives the request, it responds with an Accepted (202) message at first. Hence, a received Accepted message does not guarantee the client that its request is valid in every case. + +If the server has not finished processing the request, the status endpoint responds with an BaseOperationResult object with the attribute “executionState” set to “Running”. As soon as the processing is finished, the status endpoints deliver a Found (HTTP status code 302) response with the location of the result in the Location response header. The result is, similar to the status information, provided at the same SubmodelElement “Operation”, followed by the path segments "/operation-result/\{handleId}”. + +In case incorrect inputs have been provided by the client but the server was only able to recognize this during processing, or if the server perceived any other error during processing, the server must still provide the OperationResult object with status code 200 and set the attribute “executionState” to “Failed”. + + +==== +Note: the invocation of the SubmodelElement “Operation” may also be conducted in the “ValueOnly” content. In this case, the "/$value” path segment is added to the previously mentioned endpoints. +==== + + +=== Mapping of Status Codes + +The following table shows the mapping of the generic status codes to HTTP status codes according to IETF RFC 7231 (see Clause 6.1 https://datatracker.ietf.org/doc/html/rfc7231#section-6) + +.Status Code Mapping for HTTP +[%autowidth, width="100%", cols="29%,26%,18%,27%",options="header",] +|=== +|*Generic status code* |*Meaning* |*HTTP status code* |*Explanation* +|Success |Success |200 (OK) |Standard response for successful requests +|SuccessCreated |Successful creation of a new resource |201 (Created) |Successful request resulting in the creation of a new resource, e.g. SubmodelElement +|SuccessAccepted |The reception of the request was successful |202 (Accepted) |The server has accepted the request, but the result will be supplied later +|SuccessNoContent |Success with explicitly no content in the payload |204 (No Content) |Successful request with no content in return, e.g. used for updating existing resources +|ClientErrorBadRequest |Bad or malformed request |400 (Bad Request) |The server does not / cannot process the request due to a general client error, e.g. a malformed request +|ClientNotAuthorized |Wrong or missing authorization credentials |401 (Unauthorized) |The client missed or provided invalid credentials +|ClientForbidden |Authorization has been refused |403 (Forbidden) |The request content is basically valid and understood by the server, but the server refuses the action due to certain restrictions, e.g. profiles or roles +|ClientErrorResourceNotFound |Resource not found |404 (Not Found) |The requested resource was not found +|ClientMethodNotAllowed |Operation request is not allowed |405 (Method Not Allowed) |The server rejected the request for the requested resource, e.g. /invoke only for the operation submodel element +|ClientResourceConflict |Conflict-creating resource (resource already exists) |409 (Conflict) |A resource already exists; might occur if a Submodel or SubmodelElement with the same Identifier or ShortId is contained in a POST request. +|ServerInternalError |Unexpected error |500 (Internal Server Error) |General server-internal error due to an unexpected condition +|ServerNotImplemented |Not implemented |501 (Not Implemented) |The server does not support the functionality to fulfill the request +|ServerErrorBadGateway |Bad Gateway |502 (Bad Gateway) |The primarily addressed server that was acting as gateway or proxy received an invalid response from subsequent systems/servers +|=== + +=== Additional Data Types for Payload for HTTP/REST + +In addition to the data types used in the technology-neutral specification, the HTTP/REST API uses the data types as defined in this clause. + +==== PackageDescription + +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |PackageDescription +|*Explanation* |The package description consists of a system-wide unique packageId and its corresponding Asset Administration Shell identifiers. The packageId is used to identify the AASX package at the AASX file server. The package description is used to list the Asset Administration Shells in a given AASX package. This class is not part of the metamodel. +|*Inherits from* |-- +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute* |*Explanation* |*Type* |*Card.* +|packageId |File server specific package id |ShortIdType |1 +|aasId |Asset Administration Shell unique identifier |Identifier |0..* +|=== + +=== Service Specifications and Profiles + +Figure 2 defines that a service specification contains at least one API and that an API contains at least one API Operation. + +The profiles defined in this clause present complete service specifications and their subsets. + +For instance, the profile “RepositoryServiceSpecification/V3.0_SSP-002” contains the API Operation “GetAllSubmodels” but not “PostSubmodelElementByPath”, while the more comprehensive “RepositoryServiceSpecification/V3.0_SSP-001” contains both. Furthermore, profiles also define which of the SerializationModifiers (content, extent, level) or serialization formats (JSON) can be used or whether pagination or asynchronous operations are available. + +.Overview of Service Specifications and the Contained APIs +[%autowidth, width="100%", cols="52%,4%,4%,4%,4%,5%,4%,4%,4%,5%,5%,5%",options="header",] +|=== +a| +*Contained APIs:* + +*Service Specifications:* + +|Asset Administration Shell API |Submodel API |AASX File Server API |Asset Administration Shell Registry API |Submodel Registry API |Asset Administration Shell Repository API |Submodel Repository API |Concept Description Repository API |Asset Administration Shell Basic Discovery API |Serialization API |Description API +|Asset Administration Shell Service Specification |x |s | | | | | | | |x |x +|Submodel Service Specification | |x | | | | | | | |x |x +|AASX File Server Service Specification | | |x | | | | | | | |x +|Asset Administration Shell Registry Serv. Spec. | | | |x |s | | | | | |x +|Submodel Registry Service Specification | | | | |x | | | | | |x +|Discovery Service Specification | | | | | | | | |x | |x +|Asset Administration Shell Repository Serv. Spec. |s |s | | | |x |s | | |x |x +|Submodel Repository Service Specification | |s | | | | |x | | |x |x +|ConceptDescription Repository Service Spec. | | | | | | | |x | |x |x +|=== + +x: Service Specification contains API at the root + +s: Service Specification contains API through superpaths as introduced in Clause 0 + +==== Profiles + +Service specifications are further refined in profiles, governing which API operations, modifiers, and path combinations are supported. The following clauses describe each service specification and present their predefined profiles. Each profile is unambiguously identified and represented through a normative OpenAPI document. The different OpenAPI profiles of one ServiceSpecification share the same _title_ attribute but with different _versions_. The version attribute contains both the major and minor version as well as the profile identifier. A profile identifier is defined as: + +https://admin-shell.io/aas/API/3/0//SSP- + +The name of the service specification ends with "ServiceSpecification". + +The supported service specification or profile can be discovered at the /description endpoint. This endpoint will return the related profile string. + +Additional profiles might be introduced in future versions of this document. + + +==== +Note: in the following, only the last part (/SSP-) is used in the text for better readability, e.g. “AssetAdministrationShellServiceSpecification/SSP-001” instead of “https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001”. +==== + + +==== Asset Administration Shell Service Specification + +[%autowidth, width="100%", cols="45%,55%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|AssetAdministrationShellServiceSpecification/SSP-001 |Full feature set +|AssetAdministrationShellServiceSpecification/SSP-002 |Only read operations; is included in the profile AssetAdministrationShellServiceSpecification/SSP-001. +|=== + +===== Asset Administration Shell Service Specification – Full Profile + +The Asset Administration Shell service specification with all its features and endpoints is represented through the profile identifier *AssetAdministrationShellServiceSpecification/SSP-001*: + +[%autowidth, width="100%", cols="27%,73%",options="header",] +|=== +h|*Name:* h|AAS Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|APIs and API Operations a| +_Asset Administration Shell API:_ + +GetAssetAdministrationShell + +PutAssetAdministrationShell + +GetAllSubmodelReferences + +PostSubmodelReference + +DeleteSubmodelReference + +GetAssetInformation + +PutAssetInformation + +GetThumbnail + +PutThumbnail + +DeleteThumbnail + +_Submodel API as superpath:_ + +GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +PutFileByPath + +DeleteFileByPath + +PutSubmodel + +PatchSubmodel + +PostSubmodelElement + +PostSubmodelElementByPath + +PutSubmodelElementByPath + +PatchSubmodelElementByPath + +DeleteSubmodelElementByPath + +InvokeOperationSync + +InvokeOperationAsync + +GetOperationAsyncStatus + +GetOperationAsyncResult + +_Serialization API:_[.underline]# + +#GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001 + +===== Asset Administration Shell Service Specification – Read Profile + +The Asset Administration Shell Service specification with the minimal feature set is represented through *AssetAdministrationShellServiceSpecification/SSP-002*: + +[%autowidth, width="100%", cols="21%,79%",options="header",] +|=== +h|*Name:* h|AAS Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/V3.0_SSP-002 +h|*Feature* h|Appearance +|API Operations a| +_Asset Administration Shell API:_ + +GetAssetAdministrationShell + +GetAllSubmodelReferences + +GetAssetInformation + +GetThumbnail + +_Submodel API as superpath:_ + +GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SPP-002[https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-002] + +==== Submodel Service Specification + +[%autowidth, width="100%", options="header",] +|=== +|*Service Specification / Profiles* |Description +|SubmodelServiceSpecification/SSP-001 |Full feature set +|SubmodelServiceSpecification/SSP-002 |Only reads operations; is included in the profile SubmodelServiceSpecification/SSP-001. +|SubmodelServiceSpecification/SSP-003 |Limitation on the basic capabilities plus the option to execute synchronous operations and to read the submodel in the ValueOnly-serialization format to reduce required bandwidth; is included in the profile SubmodelServiceSpecification/SSP-001. +|=== + +===== Submodel Service Specification – Full Profile + +The submodel service specification with all its features and endpoints is represented through *SubmodelServiceSpecification/SSP-001*: + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|APIs and API Operations a| +_Submodel API:_ + +GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +PutFileByPath + +DeleteFileByPath + +PutSubmodel + +PatchSubmodel + +PostSubmodelElement + +PostSubmodelElementByPath + +PutSubmodelElementByPath + +PatchSubmodelElementByPath + +DeleteSubmodelElementByPath + +InvokeOperationSync + +InvokeOperationAsync + +GetOperationAsyncStatus + +GetOperationAsyncResult + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-001 + +===== Submodel Service Specification – Read Profile + +The submodel service specification with its minimal feature set is represented through *SubmodelServiceSpecification/SSP-002*: + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002 +h|*Feature* h|Appearance +|API and API Operations a| +_Submodel API:_ + +GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SPP-002[https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-002] + +===== Submodel Service Specification – Value Profile + +The submodel service specification with a reduced feature set is represented through *SubmodelServiceSpecification/SSP-003*: + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Value Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003 +h|*Feature* h|Appearance +|APIs and API Operations a| +__Submodel API: + +__GetSubmodel + +InvokeOperationSync + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Deep + +Content: Normal, Value + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |not supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SPP-003[https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-003] + +==== AASX File Server Service Specification + +[%autowidth, width="100%", cols="45%,55%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|AasxFileServerServiceSpecification/SSP-001 |The full feature set of the AASX File Server Service Specification +|=== + +===== AASX File Server Service Specification – Full Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +|*Name:* |AASX File Server Full Profile +|*Profile Identifier* |https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001 +|*Feature* |Appearance +|APIs and API Operations a| +_File Server API:_ + +GetAllAASXPackageIds + +GetAASXByPackageId + +PostAASXPackage + +PutAASXByPackageId + +DeleteAASXByPackageId + +_Description API:_ + +GetDescription + +|SerializationModifier |not applicable +|SerializationFormat a| +JSON for descriptions and error messages + +AASX for packages + +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AasxFileServerServiceSpecification/V3.0_SSP-001 + +==== Asset Administration Shell Registry Service Specification + +[%autowidth, width="100%", options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|AssetAdministrationShellRegistryServiceSpecification/SSP-001 |Full profile +|AssetAdministrationShellRegistryServiceSpecification/SSP-002 |Only reads operations; is included in the profile AssetAdministrationShellRegistryServiceSpecification/SSP-001. +|=== + +===== Asset Administration Shell Registry Service Specification – Full Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +|*Name:* |Asset Administration Shell Registry Full Profile +|*Profile Identifier:* |https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-001 +|*Feature* |Appearance +|APIs and API Operations a| +_AAS Registry API:_ + +GetAllAssetAdministrationShellDescriptors + +GetAssetAdministrationShellDescriptorById + +PostAssetAdministrationShellDescriptor + +PutAssetAdministrationShellDescriptorById + +DeleteAssetAdministrationShellDescriptorById + +_Submodel Registry API as superpath:_ + +GetAllSubmodelDescriptors + +GetSubmodelDescriptorById + +PostSubmodelDescriptor + +PutSubmodelDescriptorById + +DeleteSubmodelDescriptorById + +__Description API: + +__GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |Supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-001 + +===== Asset Administration Shell Registry Service Specification – Read Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|AAS Registry Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-002 +h|*Feature* h|Appearance +|APIs and API Operations a| +_AAS Registry API:_ + +GetAllAssetAdministrationShellDescriptors + +GetAssetAdministrationShellDescriptorById + +_Submodel Registry API as superpath:_ + +GetAllSubmodelDescriptors + +GetSubmodelDescriptorById + +_Description API:_ + +GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRegistryServiceSpecification/V3.0_SSP-002 + +==== Submodel Registry Service Specification + +[%autowidth, width="100%", options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|SubmodelRegistryServiceSpecification/SSP-001 |Full profile +|SubmodelRegistryServiceSpecification/SSP-002 |Only reads operations; is included in the profile SubmodelRegistryServiceSpecification/SSP-001. +|=== + +===== Submodel Registry Service Specification – Full Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Registry Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|APIs and API Operations a| +__Submodel Registry API: + +__GetAllSubmodelDescriptors + +GetSubmodelDescriptorById + +PostSubmodelDescriptor + +PutSubmodelDescriptorById + +DeleteSubmodelDescriptorById + +__Description API: + +__GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRegistryServiceSpecification/V3.0_SSP-001 + +===== Submodel Registry Profile – Read Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Registry Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-002 +h|*Feature* h|Appearance +|APIs and API Operations a| +__Submodel Registry API: + +__GetAllSubmodelDescriptors + +GetSubmodelDescriptorById + +__Description API: + +__GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |Supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRegistryServiceSpecification/V3.0_SSP-002 + +==== Discovery Service Specification + +[%autowidth, width="100%", cols="43%,57%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|DiscoveryServiceSpecification/SSP-001 |Full feature set +|=== + +===== Discovery Service Specification – Full Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Discovery Service Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|API and API Operations a| +__AAS Basic Discovery API: + +__GetAllAssetAdministrationShellIdsByAssetLink + +GetAllAssetLinksById + +PostAllAssetLinksById + +DeleteAllAssetLinksById + +_Description API:_ + +GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |Not supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification/V3.0_SSP-001 + +==== Asset Administration Shell Repository Service Specification + +[%autowidth, width="100%", cols="42%,58%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|AssetAdministrationShellRepository + +ServiceSpecification/SSP-001 |Full feature set +|AssetAdministrationShellRepository + +ServiceSpecification/SSP-002 |Only read operations; is included in the profile AssetAdministrationShellRepositoryServiceSpecification/SSP-001 +|=== + +===== Asset Administration Shell Repository Service Specification – Full Profile + +[%autowidth, width="100%", cols="30%,70%",options="header",] +|=== +h|*Name:* h|AAS Repository Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|API and API Operations a| +_AAS Repository API:_ + +GetAllAssetAdministrationShells + +GetAssetAdministrationShellById + +GetAllAssetAdministrationShellsByAssetId + +GetAllAssetAdministrationShellsByIdShort + +PostAssetAdministrationShell + +PutAssetAdministrationShellById + +DeleteAssetAdministrationShellById + +_AAS API by superpath:_ + +GetAssetAdministrationShell + +PutAssetAdministrationShell + +GetAllSubmodelReferences + +PostSubmodelReference + +DeleteSubmodelReference + +GetAssetInformation + +PutAssetInformation + +GetThumbnail + +PutThumbnail + +DeleteThumbnail + +__Submodel Repository API by superpath: + +__GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +PostSubmodel + +PutSubmodelById + +DeleteSubmodelById + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +PutFileByPath + +DeleteFileByPath + +PutSubmodel + +PatchSubmodel + +PostSubmodelElement + +PostSubmodelElementByPath + +PutSubmodelElementByPath + +PatchSubmodelElementByPath + +DeleteSubmodelElementByPath + +InvokeOperationSync + +InvokeOperationAsync + +GetOperationAsyncStatus + +GetOperationAsyncResult + +_AAS Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-001 + +===== Asset Administration Shell Repository Service Specification – Read Profile + +[%autowidth, width="100%", cols="30%,70%",options="header",] +|=== +h|*Name:* h|AAS Repository Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/ API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002 +h|*Feature* h|Appearance +|API and API Operations a| +_AAS Repository API:_ + +GetAllAssetAdministrationShells + +GetAssetAdministrationShellById + +GetAllAssetAdministrationShellsByAssetId + +GetAllAssetAdministrationShellsByIdShort + +_AAS API by superpath:_ + +GetAssetAdministrationShell + +GetAllSubmodelReferences + +GetAssetInformation + +GetThumbnail + +__Submodel Repository API by superpath: + +__GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellRepositoryServiceSpecification/V3.0_SSP-002 + +==== Submodel Repository Service Specification + +[%autowidth, width="100%", cols="41%,59%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|SubmodelRepositoryServiceSpecification/SSP-001 |Full feature set +|SubmodelRepositoryServiceSpecification/SSP-002 |Only read operations; is included in the profile SubmodelRepositoryServiceSpecification/SSP-001 +|SubmodelRepositoryServiceSpecification/SSP-003 |Profile for a Submodel Repository which only contains Submodels with kind=Template; is _not_ included in the profile SubmodelRepositoryServiceSpecification/SSP-001 or the profile SubmodelRepositoryServiceSpecification/SSP-002 +|SubmodelRepositoryServiceSpecification/SSP-004 |Only read operations for a Submodel Repository which only contains Submodels with kind=Template; is included in the profile SubmodelRepositoryServiceSpecification/SSP-003 but _not_ in the profile SubmodelRepositoryServiceSpecification/SSP-001 or the profile SubmodelRepositoryService Specification/SSP-002 +|=== + +===== Submodel Repository - Full Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Repository Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|API and API Operations a| +__Submodel Repository API: + +__GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +PostSubmodel + +PutSubmodelById + +PatchSubmodelById + +DeleteSubmodelById + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +PutFileByPath + +DeleteFileByPath + +PutSubmodel + +PatchSubmodel + +PostSubmodelElement + +PostSubmodelElementByPath + +PutSubmodelElementByPath + +PatchSubmodelElementByPath + +DeleteSubmodelElementByPath + +InvokeOperationSync + +InvokeOperationAsync + +GetOperationAsyncStatus + +GetOperationAsyncResult + +_AAS Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification/V3.0_SSP-001 + +===== Submodel Repository – Read Profile + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +|*Name:* |Submodel Repository Read Profile +|*Profile Identifier* |https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002 +|*Feature* |Appearance +|API and API Operations a| +_Submodel Repository API:_ + +GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata, Value, Reference, Path + +Extent: WithBLOBValue, WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification/V3.0_SSP-002 + +===== Submodel Repository - Template Profile + +The Submodel Repository service specification that only provides and manages Submodel Templates is represented through the profile identifier *SubmodelRepositoryServiceSpecification/SSP-003*. + +[.underline]#Constraint AASa-003#: A service implementing the SubmodelServiceSpecification/SSP-003 must not accept or provide any Submodel with the attribute “kind=Instance”. + + +==== +Note 1: due to Constraint AASa-003, SubmodelServiceSpecification/SSP-003 can not be combined with SubmodelServiceSpecification/SSP-001 or SubmodelServiceSpecification/SSP-002 as SubmodelService + +==== + +Specification/SSP-001 or SubmodelServiceSpecification/SSP-002-compliant services may contain Submodel instances but SubmodelServiceSpecification/SSP-003 not. + + +==== +Note 2: future versions may introduce a Submodel Repository Instance Profile. +==== + + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Repository Template Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003 +h|*Feature* h|Appearance +|API and API Operations a| +__Submodel Repository API: + +__GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +PostSubmodel + +PutSubmodelById + +PatchSubmodelById + +DeleteSubmodelById + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +PutFileByPath + +DeleteFileByPath + +PutSubmodel + +PatchSubmodel + +PostSubmodelElement + +PostSubmodelElementByPath + +PutSubmodelElementByPath + +PatchSubmodelElementByPath + +DeleteSubmodelElementByPath + +_AAS Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata + +Extent: WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification/V3.0_SSP-003 + +===== Submodel Repository - Template Read Profile + +The Submodel Repository service specification that only provides Submodel Templates is represented through the profile identifier *SubmodelRepositoryServiceSpecification/SSP-004*. + +[.underline]#Constraint AASa-004#: A service implementing the SubmodelServiceSpecification/SSP-004 must not accept or provide any Submodel with the attribute “kind=Instance”. + + +==== +Note: due to Constraint AASa-004, SubmodelServiceSpecification/SSP-004 can not be combined with SubmodelServiceSpecification/SSP-001 or SubmodelServiceSpecification/SSP-002 as SubmodelService + +==== + +Specification/SSP-001 or SubmodelServiceSpecification/SSP-002-compliant services may contain Submodel instances but SubmodelServiceSpecification/SSP-004 not. + +[%autowidth, width="100%", cols="36%,64%",options="header",] +|=== +h|*Name:* h|Submodel Repository Template Read Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-004 +h|*Feature* h|Appearance +|API and API Operations a| +__Submodel Repository API: + +__GetAllSubmodels + +GetSubmodelById + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +__Submodel API by superpath: + +__GetSubmodel + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetFileByPath + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier a| +Level: Core, Deep + +Content: Normal, Metadata + +Extent: WithoutBLOBValue + +|SerializationFormat |JSON +|Pagination |supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/SubmodelRepositoryServiceSpecification/V3.0_SSP-004 + +==== Concept Description Repository Service Specification + +[%autowidth, width="100%", cols="59%,41%",options="header",] +|=== +|*Service Specification / Profiles* |*Description* +|ConceptDescriptionRepositoryServiceSpecification/SSP-001 |Full feature set +|=== + +===== Concept Description Repository Service Specification – Full Profile + +[%autowidth, width="100%", cols="30%,70%",options="header",] +|=== +h|*Name:* h|Concept Description Repository Full Profile +h|*Profile Identifier:* h|https://admin-shell.io/aas/API/3/0/ConceptDescriptionRepositoryServiceSpecification/SSP-001 +h|*Feature* h|Appearance +|API and API Operations a| +_ConceptDescription Repository API_ + +GetAllConceptDescriptions + +GetConceptDescriptionById + +GetAllConceptDescriptionsByIdShort + +GetAllConceptDescriptionsByIsCaseOf’ + +GetAllConceptDescriptionsByDataSpecificationReference + +PostConceptDescription + +PutConceptDescriptionById + +DeleteConceptDescriptionById + +_Serialization API:_ + +GenerateSerializationByIds + +_Description API:_ + +GetDescription + +|SerializationModifier |not applicable +|SerializationFormat |JSON +|Pagination |Supported +|=== + +See: https://app.swaggerhub.com/apis/Plattform_i40/ConceptDescriptionRepositoryServiceSpecification/V3.0_SSP-001 + +=== Interactions + +Interactions describe the sequence of calls of operations by a client application to achieve a defined goal in a use case. Future versions of the document will describe interactions for further use cases. + +Currently, only the key use case “Access a submodel in a distributed system” with focus on a completely decentralized Industry 4.0 system is described. + +Since the interaction diagram in the current version only describes a first subset of interactions, some constraints and assumptions are made according to the configuration and qualities of the system. + +Constraints and assumptions for calling an AAS and a submodel operation by a client application: + +* The calling application hast to be aware that endpoints may change at any time. If the application has cached an endpoint that is no longer vivid, the application needs to start the interaction to resolve the appropriate endpoint again from the beginning. +* Endpoints for infrastructure interfaces like AAS registries are known at design time of the client application or configured manually before start-up. +* The endpoint information of the submodel registry must be known to the client application. The following questions are subject to discussion for future interaction versions: +[loweralpha] +. Will it be accessible via the AAS interface and therefore become a mandatory part of a standard interaction? +. How much “control” of submodels is implemented in the AAS and how are distributed submodels handled, which are deployed in network areas not accessible by the AAS server application? +* The AAS server application itself is instantiated and registered by calling an AAS registry interface. +* The AAS-ID is known to the calling application. +* Access to any API is allowed only if authenticated (mechanisms for authentication are to be described separately) and response follows a defined access rights model for all calls. + +In Figure 7 below, the interaction starts with a client application resolving the interface endpoint of an Asset Administration Shell registry with a known asset ID. The AAS registry provides the AAS Descriptor object belonging to this asset ID and containing the Submodel Descriptors of the Submodels, which are part of the related AAS. Both descriptor kinds, those of the Asset Administration Shell and those of the Submodels, contain endpoint information for the respective AAS and Submodel Repositories. AAS interface operations – independent of the underlying protocol – are used to retrieve the AAS from the AAS repository answering at one of the supplied endpoints. In the sequence shown in Figure 7, one submodel of this AAS is also provided through the same repository. For the second submodel, however, only the submodel identifier is provided by the AAS registry, while the endpoint information is empty. Therefore, the client application must execute another look-up at a dedicated Submodel Registry, which responds with one Submodel Descriptor object. Equipped with this information, the client application locates the stand-alone Submodel Repository and downloads the second submodel. + +.Interactions for Client Applications using AAS and Submodel Interfaces (independent Submodel Registry) +image::image26.png[image26,width=642,height=350] + +Figure 8 shows a slight variant of the scenario in Figure 7. The AAS Registry only returns the AAS Descriptor without any Submodel Descriptors. The client application retrieves the AAS from the discovered AAS Repository endpoint and learns about its submodel references. Using these references, the client can ask a Submodel Registry, in this case also hosted by the repository server, for the respective Submodel Descriptors. It understands that the Submodels are also available at the same server and downloads them by sending requests to the Submodel Interface. + +.Interaction for Client Application using AAS and Submodel Interfaces (included Submodel Registry) +image::image27.png[Ein Bild, das Diagramm enthält. Automatisch generierte Beschreibung,width=624,height=326] + +The difference between Interface and API Operations is outlined in Figure 9. This sequence translates the interaction on the interface level of Figure 7, which is protocol-independent and therefore can be implemented in several different manners, to the specific HTTP API Operations. The generic operations are replaced with HTTP requests, e.g. “GetAasDescriptorById” with “GET /shell-descriptors/”. The returned objects are shortened for better readability. The first request to the Submodel API shows the concatenated path (“/shells//aas” + “/submodels/”) and illustrates how contained submodels can be provided natively through an AAS API. + +.Interaction for Client Application using AAS and Submodels (for HTTP API Operations) +image::image28.png[image28,width=642,height=350] + +=== Security + +The AAS metamodel includes a security metamodel, which is defined in the chapter “Overview Metamodel of Administration Shell w.r.t. Security”. This chapter was part of “Details of the Asset Administration Shell Part 1” until version 3.0 RC02. Since Part 1 has been split for the release of version 3.0, this chapter will become the basis of “Specification of the Asset Administration Shell. Part 4: Security”. In addition to the security metamodel, Part 4 will define e.g. authentication, further details about authorization, and signature of data. + +Authentication is mandatory. Depending on the ecosystem the AAS uses, different authentication mechanisms might be in place. This clause explains one exemplary authentication mechanisms, which has been developed by the security working group (AG3) of Plattform Industrie 4.0. Other authentication services (e.g. Username/Password, DID=Decentralized Identifiers, Verifiable Credentials, EDC=Eclipse Data Space Connector, or IDS=International Data Spaces) may also be used to receive an access token for authorization. + +The following paragraphs describe the most important steps for token-based authentication of the HTTP/REST APIs. For more details, see “Secure Downloadservice” (https://www.plattform-i40.de/PI40/Redaktion/EN/Downloads/Publikation/secure_downloadservice.html). Figure 10 gives an overview. + +.The private_key_certchain_jwt Method [...download service] +image::image29.png[Ein Bild, das Diagramm enthält. Automatisch generierte Beschreibung,width=608,height=356] + +A client application uses a client certificate to create a certificate chain. The certificate chain can be checked on the authentication server by the corresponding Root CA certificate, which is signed by a certification authority (CA). The client application sends the certificate chain to the authentication server as token request by a JSON Web Token (JWT). The JWT is signed by the client’s private key corresponding to the client certificate (JWT = Data + Signature). + +If the authentication is approved, the client application receives an access token from the authentication server (not shown in Figure 10). + +Such an access token contains attributes from the client certificate (e.g. username, email address) which will be sent as HTTP header bearer token to the AAS server application. The latter will check, whether the access token has been signed by a trusted authentication server and will make the authorization according to the AAS security metamodel. + +A running demo is explained in “Secure Downloadservice”. A corresponding server can be seen on https://admin-shell-io.com/5011/ with a related security AAS at the bottom. + +The AAS security metamodel does not deal with authentication; it assumes that the user is already authenticated. The example security AAS is only created for demonstration purposes and is not standardized. Since the version of the AASX Package Explorer used does not yet support the AAS security metamodel, the required information in subsequent steps like the access permission rules for AAS are modelled as a submodel. + +The different security and authentication steps are explained in the video https://admin-shell-io.com/screencasts/security/Industrie_40_Security_with_AASX_Server.mp4. + +=== API Code Generation + +SwaggerHub includes the possibility to generate code from an API, e.g. for C# .NET: + +image:image30.png[Ein Bild, das Text enthält. Automatisch generierte Beschreibung,width=203,height=110] + +API code can be created for both servers and clients in various programming languages. + +Known issues include the following: + +* When generating the aspnetcore server stub for the AssetAdministrationShellEnvironmentApi, the operation PutFileByPath is not generated automatically and must be added manually. +* When generating the aspnetcore server stub for the AasxFileServerInterfaceApi, the operations PostAASXPackage and PutAASXPackageById are not generated automatically and must be added manually. + +The SwaggerHub code generator development team is not part of the AAS activities and has been informed about these issues. + +== Summary and Outlook + +This document specifies the interfaces for a single Asset Administration Shell and its Submodels, as well as for a repository of Asset Administration Shells. Additionally, infrastructural interfaces like Registry and Discovery of a set of Asset Administration Shells are specified. + +All interfaces are specified in a technology-neutral way before defining technology-specific APIs. + +In this version of the specification, HTTP/REST APIs are defined and mapped to the technology-neutral specification as a frontrunner. + +In subsequent versions of this specification, APIs using other technologies are planned to be supported, e.g. gRPC or MQTT. + +Additionally, further interfaces, service specifications, and profiles may be defined. Querying will also be a topic. + +Another very important topic that will be looked at in upcoming versions of the specification in more detail is the definition of access control based on the information provided by an Asset Administration Shell to ensure the trustworthiness of the contained information across different system boundaries. + +[appendix] +== Templates used for Specification + +This Annex explains the table templates used for documentation of interfaces, operations, data types, etc. + +_Card._ is the cardinality (or multiplicity) defining the lower and upper bound of the number of instances of the member element. "*" denotes an arbitrary infinite number of elements of the corresponding Type. "0..1" means optional. "0..*" or "0..3" etc. means that the list may be either not available (null object) or empty or has infinitely many / exactly three elements. + + +==== +Note: attributes having a default value are always considered to be optional; there is always a value for the attribute because the default value is used for initialization in this case. +==== + + +.Interface Description +[%autowidth, width="100%", cols="19%,81%",options="header",] +|=== +2+|Interface: +h|*Operation Name* h|*Description* +|Oper1 a| +Human-understandable description of the operation of the interface. Only major input and output information shall be described, no individual request and result parameters. + + +==== +Note: all words in the service operation name are written together in italics without a blank in between. The first letter of the first word is lower case, all other words are upper case. +==== + + +|… | +|operN (optional) |Human-understandable description of the operation n of the interface. Optional operations are to be marked by suffix (optional) after the operation name. +|=== + +.Operation Description +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Operation Name:* |Name of the operation: all individual words in the operation name are capitalized +|*Explanation:* a| +Human-understandable description of the functionality + +The operation provides its functionality through the following input and output parameters: + +• Input parameter 1: human-understandable description of the purpose of the input parameter 1 + +• … + +• Input parameter N: human-understandable description of the purpose of input parameter N + +• Output parameter 1: human-understandable description of the purpose of output parameter 1: human-understandable description of the purpose of the input parameter 1 + +• … + +• Output Parameter N: human-understandable description of the purpose of output parameter N: + +If *_payload_* is mentioned as output parameter, only the returned payload in case of a successful operation (status code: Success, SuccessCreated) is denoted in column _Type_. In case of failure see Clause 10.2.9.1. + +If [.underline]#no# *_payload_* is mentioned as output parameter, the status code shall be SuccessNoContent in case of success, otherwise see Clause 0. + +Convention: all words in the interface name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters. + +|*semanticId* |The unique identifier of this operation +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Name* |*Description* |*Mand.* |*Type* |*Card.* +5+h|Input Parameter +|inputParameter1 |Human-understandable description of the input parameter 1 of the operation. |States whether the inputParameter1 is mandatory (“yes”) or optional (“no”) |Type of the input parameter 1 |The cardinality of type of the inputParameter1, e.g. zero-to-one (“0..1”) or at-least-one (“1..*). +|… | | | | +|inputParameterN |Human-understandable description of the input parameter N of the operation. |States whether the inputParameterN is mandatory (“yes”) or optional (“no”) |Type of the input parameter N |The cardinality of type of the inputParameterN, e.g. zero-to-one (“0..1”) or at-least-one (“1..*). +5+h|Output Parameter +|outputParameter1 |Human-understandable description of the output parameter 1 of the operation. |States whether the outputParameter1 is mandatory (“yes”) or optional (“no”) a| +Type of the output + +parameter 1 + +|The cardinality of type of the outputParameter1, e.g. zero-to-one (“0..1”) or at-least-one (“1..*). +|… | | +|outputParameterN |Human-understandable description of the output parameter N of the operation. |States whether the outputParameterN is mandatory (“yes”) or optional (“no”) |Type of the output parameter N |The cardinality of type of the outputParameterN, e.g. zero-to-one (“0..1”) or at-least-one (“1..*). +|=== + +.Data Types for Payload Description +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Class Name* |Name of the class: all individual words in the class name are capitalized +|*Explanation* a| +Human-understandable description of the class + +The Class has following attributes: + +• Attribute 1: human-understandable description of the purpose of the attribute 1 + +• … + +• Attribute N: human-understandable description of the purpose of the attribute N + +Convention: all words in the class name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters. + +|*Inherits from* |Name of the class this class inherits from +|*semanticId* |The unique identifier of this class +|=== +[%autowidth, width="100%", options="header"] +|=== +|*Attribute + +(* = mandatory)* |*Explanation* |*Type* |*Card.* +|attribute1 |Human-understandable description of the attribute 1 of the class. |Type of the attribute 1 |Cardinality of the attribute 1 +|… | | | +|attributeN |Human-understandable description of the attribute N of the class. |Type of the attribute N |Cardinality of the attribute N +|=== + +.Enumeration Description +[.table-with-appendix-table] +[%autowidth, width="100%", cols="h,d"] +|=== +|*Enumeration Name:* |Name of the enumeration: all individual words in the enumeration name are capitalized +|*Explanation:* a| +Human-understandable description of the enumeration + +The enumeration has following literals: + +• Literal 1: human-understandable description of the purpose of the literal 1 + +• … + +• Literal N: human-understandable description of the purpose of the literal N + +Convention: all words in the enumeration name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters. + +|*semanticId* |The unique identifier of this enumeration +|=== +[%autowidth, width="100%", options="header",] +|=== +|*Literal* |*Description* +|Literal1 |Human-understandable description of the literal 1 of the enumeration. +|… | +|LiteralN |Human understandable description of the literal N of the enumeration. +|=== + +[appendix] +== ValueOnly-Serialization Example + +The following example shows the ValueOnly-Serialization for an entire Submodel that validates against the JSON-schema specified in Clause 11.4.3. + +As mentioned in Clause 11.4.3, __SubmodelElementCollection__s cannot be validated within the same schema due to circularity reasons; instead they have their own specific validation schema. An exemplary _SubmodelElementCollection_ is added to the following JSON for completeness. It is, however, not validatable against the schema in Clause 11.4.3 due to the reasons mentioned above. + +[source,json,linenums] +---- +{ + "MyPropertyIdShortNumber": 5000, + "MyPropertyIdShortString": "MyTestStringValue", + "MyPropertyIdShortBoolean": true, + "MyMultiLanguageProperty": [ + { + "de": "Das ist ein deutscher Bezeichner" + }, + { + "en": "That's an English label" + } + ], + "MyRange": { + "min": 3, + "max": 15 + }, + "MyFile": { + "contentType": "application/pdf", + "value": "SafetyInstructions.pdf" + }, + "MyBlob": { + "contentType": "application/octet-stream", + "value": "VGhpcyBpcyBteSBibG9i" + }, + "MyEntity": { + "statements": { + "MaxRotationSpeed": 5000 + }, + "entityType": "SelfManagedEntity", + "globalAssetId": "http://customer.com/demo/asset/1/1/MySubAsset" + }, + "MyReference": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "MaxRotationSpeed" + } + ] + }, + "MyBasicEvent": { + "observed": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "CurrentValue" + } + ] + } + }, + "MyRelationship": { + "first": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "PlusPole" + } + ] + }, + "second": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/0/1234859123490" + }, + { + "type": "Property", + "value": "MinusPole" + } + ] + } + }, + "MyAnnotatedRelationship": { + "first": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/1/1234859590" + }, + { + "type": "Property", + "value": "PlusPole" + } + ] + }, + "second": { + "type": "ModelReference", + "keys": [ + { + "type": "Submodel", + "value": "http://customer.com/demo/aas/1/0/1234859123490" + }, + { + "type": "Property", + "value": "MinusPole" + } + ] + }, + "annotation": [ + { + "AppliedRule": "TechnicalCurrentFlowDirection" + } + ] + }, + "MySubmodelElementIntegerPropertyList": [ + 1, + 2, + 30, + 50 + ], + "MySubmodelElementFileList": [ + { + "contentType": "application/pdf", + "value": "MyFirstFile.pdf" + }, + { + "contentType": "application/pdf", + "value": "MySecondFile.pdf" + } + ], + "MySubmodelElementCollection": + { + "myStringElement": "That’s a string", + "myIntegerElement": 5, + "myBooleanElement": true + } +} +---- + +[appendix] +== SerializationModifier Examples + +=== Description + +SerializationModifiers are only allowed for GET and PATCH operations. + +GET operations can use any combination of SerializationModifiers. + +POST operations create new resources using the input content. + +PUT operations replace existing resources using the input content. + +POST and PUT use the regular serialization. The client creates the input content as needed, so that no further SerializationModifiers need to be used. + +PATCH operations may use the regular serialization, the metadata serialization, or the ValueOnly- serialization. The SerializationModifier Core is not used. The resources in the input content must already exist on the server and are replaced one by one accordingly. If one of the resources in the input content does not exist, no changes will be made on the server. “Resource exists” means, that the type of a SubmodelElement is the same in the input content and on the server. For example, a property may only be replaced by a property; elements of a SubmodelElementCollection or SubmodelElementList can only be replaced if they already exist on the server. A SubmodelElementList with five elements cannot be patched with a SubmodelElementList with more than five elements. A SubmodelElementList with five elements can be patched with a SubmodelElementList with less than five elements since all required elements starting from index 0 already exist. + + +==== +Note: values remain unchanged with content=metadata. +==== + + +=== Examples for GET Operations + +[%autowidth, width="100%", cols="h,d,d",options="header",] +|=== +| |*Deep (default)* |*Core* +|*Normal + +(default)* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#01-AFZ615#016" + } ], + "type": "ExternalReference" + }, + "submodelElements": [ { + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + }, + "value": [ { + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + }, + "valueType": "xs:int", + "value": "5000" + } ] + } ] +} + +---- + +a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#01-AFZ615#016" + } ], + "type": "ExternalReference" + }, + "submodelElements": [ { + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + } + } ] +} + +---- + +|*Metadata* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#01-AFZ615#016" + } ], + "type": "ExternalReference" + }, + "submodelElements": [ { + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + }, + "value": [ { + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + }, + "valueType": "xs:int" + } ] + } ] +} + +---- + +a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#01-AFZ615#016" + } ], + "type": "ExternalReference" + }, + "submodelElements": [ { + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + } + } ] +} + +---- + + +If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”: + +[source,json,linenums] +---- +{ + "modelType": "Property", + "idShort": "DocumentId", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#02-BAA120#008" + } ] , + "type": "ExternalReference" + }, + "valueType": "xs:int" +} + +---- + +| *Value* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "TechnicalData": { + "RotationSpeed": { + "MaxRotationSpeed": "5000" + } + } + +---- + +a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "TechnicalData": { + "RotationSpeed": {} + } +} + +---- + +|*Reference* a| +Not allowed, see Clause 12.8: + +“The combination of Level=Deep and Content=Reference is not allowed.” + +a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "keys": [ { + "type": "Submodel", + "value": "http://i40.customer.com/type/1/1/7A7104BDAB57E184" + } ], + "type": "ModelReference" +} +---- + + +If applied to the Property inside the SubmodelElementCollection, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”: + +[source,json,linenums] +---- +{ + "keys": [ { + "type": "Submodel", + "value": "http://i40.customer.com/type/1/1/7A7104BDAB57E184" + }, { + "type": "SubmodelElementCollection", + "value": "RotationSpeed" + }, { + "type": "Property", + "value": "MaxRotationSpeed" + }], + "type": "ModelReference" +} + +---- + +|*Path* a| +If applied to the Submodel: + +[source,json,linenums] +---- +[ + "RotationSpeed", + "RotationSpeed.MaxRotationSpeed" +] + +---- + +a| +If applied to the Submodel: + +[source,json,linenums] +---- +[ + "RotationSpeed" +] + +---- + +| | a| +If applied to the Property inside the SubmodelElementCollection: + +[source,json,linenums] +---- +[ ] +---- + +|=== + +=== Examples for PATCH Operations + +[%autowidth, width="100%", cols="h,d"] +|=== +| |*Deep (default)* +|*Normal (default)* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "0173-1#01-AFZ615#016" + } ], + "type": "ExternalReference" + }, + "submodelElements": [ { + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + }, + "value": [ { + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + }, + "valueType": "xs:int", + "value": "5000" + } ] + } ] +} +---- + +If applied to the SubmodelElementCollection, i.e. idShortPath “OperatingManual”: + +[source,json,linenums] +---- +{ + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + }, + "value": [ { + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + }, + "valueType": "xs:int", + "value": "5000" + } ] +} + +---- + +If applied to the Property, i.e. idShortPath “OperatingManual.DocumentId”: + +[source,json,linenums] +---- +{ + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + }, + "valueType": "xs:int", + "value": "5000" +} +---- + +|*Metadata* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "modelType": "Submodel", + "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184", + "idShort": "TechnicalData" +} +---- + +If applied to the SubmodelElementCollection, i.e. idShortPath “RotationSpeed”: + +[source,json,linenums] +---- +{ + "modelType": "SubmodelElementCollection", + "idShort": "RotationSpeed", + "semanticId": { + "keys": [ { + "type": "GlobalReference", + "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed" + } ], + "type": "ExternalReference" + } +} +---- + +If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”: + +[source,json,linenums] +---- +{ + "modelType": "Property", + "idShort": "MaxRotationSpeed", + "category": "PARAMETER", + "semanticId": { + "keys": [ { + "type": "ConceptDescription", + "value": "0173-1#02-BAA120#008" + } ], + "type": "ExternalReference" + } +} +---- + +|*Value* a| +If applied to the Submodel: + +[source,json,linenums] +---- +{ + "TechnicalData": { + "RotationSpeed": { + "MaxRotationSpeed": "5000" + } + } +} +---- + +If applied to the SubmodelElementCollection, i.e. idShortPath “RotationSpeed”: + +[source,json,linenums] +---- +{ + "RotationSpeed": { + "MaxRotationSpeed": "5000" + } +} +---- + +If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”: + +[source,json,linenums] +---- +{ + "MaxRotationSpeed": "5000" +} +---- + +|=== + +[appendix] +== Backus-Naur-Form + +The Backus-Naur form (BNF) – a meta-syntax notation for context-free grammars – is used to define grammars. For more information see Wikipedia footnote:[https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_form]. + +A BNF specification is a set of derivation rules, written as + +* ::= __expression__* + +where: + +* is a https://en.wikipedia.org/wiki/Nonterminal[nonterminal] (variable) and the https://en.wikipedia.org/wiki/Expression_(mathematics)[__expression__] consists of one or more sequences of either terminal or nonterminal symbols, +* ::= means that the symbol on the left must be replaced with the expression on the right, +* more sequences of symbols are separated by the https://en.wikipedia.org/wiki/Vertical_bar[vertical bar] "|", indicating a https://en.wikipedia.org/wiki/Alternation_(formal_language_theory)[choice], the whole being a possible substitution for the symbol on the left, +* symbols that never appear on a left side are https://en.wikipedia.org/wiki/Terminal_symbol[terminals], while symbols that appear on a left side are https://en.wikipedia.org/wiki/Nonterminal_symbol[non-terminals] and are always enclosed between the pair of angle brackets <>, +* terminals are enclosed with quotation marks: "text". "" is an empty string, +* optional items are enclosed in square brackets: [], +* items existing 0 or more times are enclosed in curly brackets are suffixed with an asterisk (*) such as  ::= \{}*, +* Items existing 1 or more times are suffixed with an addition (plus) symbol, +, such as  ::= \{}+, +* round brackets are used to explicitly to define the order of expansion to indicate precedence, example: ( | ) , +* text without quotation marks is an informal explanation of what is expected; this text is cursive if grammar is non-recursive and vice versa. + +[.underline]#Example:# + +* ::= "e-mail addresses:" * + +* ::= \{}** + +* ::= "@" * + +* ::= characters* + +* ::= characters conformant to local-part in RFC 5322* + +* ::= characters conformant to domain in RFC 5322* + +____ +Valid contact addresses: + +*Hugo Me e-mail addresses: Hugo@example.com* + +*Hugo e-mail addresses: Hugo.Me@text.de* + +Invalid contact addresses: + +*Hugo* + +*Hugo Hugo@ example.com* + +*Hugo@example.com* +____ + +[appendix] +== Change Notes + +=== General + +* * Means not backward compatible +* (*) means not backward compatible but just renaming + +=== Interface Changes w.r.t. V1.0RC03 to V3.0 + +Major Changes: + +* Introduction of service specifications and profiles +* Introduction of pagination for "GetAll*" API operations in http/REST +* Distinction between replace and update for operations +* SerializationModifier Content as path: $metadata, $value, $reference, $path +* Introduction of length constraints for string attributes + +[%autowidth, width="100%", cols="10%,29%,10%,51%",options="header",] +|=== +|*BWC* |*Interface Change* |*Kind of Change* |*Comment* +| |Submodel |New a| +PatchSubmodel and PatchSubmodelElementByPath + +(PUT to completely replace and PATCH to update content) + +| a| +Asset Administration Shell, + +Submodel, + +AASX File Server, + +AAS Repository, + +Submodel Repository, + +CD Repository, + +AAS Registry, + +Submodel Registry, + +AAS Basic Discovery + +|Changed a| +Add Pagination: + +GetAllAssetAdministrationShells + +GetAllAssetAdministrationShellsByAssetId + +GetAllAssetAdministrationShellsByIdShort + +GetAllSubmodelReferences + +GetAllSubmodels + +GetAllSubmodelsBySemanticId + +GetAllSubmodelsByIdShort + +GetAllSubmodelElements + +GetSubmodelElementByPath + +GetAllConceptDescriptions + +GetAllConceptDescriptionsByIdShort + +GetAllConceptDescriptionsByIsCaseOf + +GetAllConceptDescriptionsByDataSpecificationReference + +GetAllAssetAdministrationShellDescriptors + +GetAllSubmodelDescriptors + +GetAllAssetAdministrationShellIdsByAssetLink + +GetAllAASXPackageIds + +| |Submodel |Changed |SerializationModifier Content as path: $metadata, $value, $reference, $path +| |Asset Administration Shell |New |GetThumbnail, PutThumbnail +| |Submodel Repository |New |PatchSubmodelForId was missing +| |Registry |New |Add extensions to descriptor +| |AssetAdministrationShellDescriptor |New |Add the attributes assetKind and assetType +| |SubmodelDescriptor |New |Add supplementalSemanticId +| |* |Changed |Rename GetDescriptor to GetDescription +| |* |Changed |API versioning with major + minor +| |* |New |Profiles +| |* |Changed |Clarify service specifications and APIs +| |CD Registry |Changed |Renaming parameter ‘cdIdentifier’ in GetConceptDescriptionById to ‘id’. Parameter has not been changed in the HTTP API. +|=== + +=== Operation Changes w.r.t. V1.0RC03 to V3.0 + +[%autowidth, width="100%", cols="32%,34%,13%,21%",options="header",] +|=== +|*Operation Change Old* |*Operation Change New* |*Kind of Change* |*Comment* +|GetDescriptor |GetDescription |Changed |Rename, get profiles +| | +|=== + +=== Interface Changes w.r.t. V1.0RC02 to V1.0RC03 + +[%autowidth, width="100%", cols="9%,29%,17%,45%",options="header",] +|=== +|*BWC* |*Interface Change* |*Kind of Change* |*Comment* +|* |Discovery |Changed |IndentifierKeyValuePair to SpecificAssetId +|* |Submodel |Changed |SubmodelElementStruct remains as SubmodelElementCollection +|* |Submodel |Changed |ModelReference and GlobalReference are combined back to Reference +|* |Submodel |Changed |Rename trimmed to metadata +| |Submodel |New |Add GetFileByPath +| |Submodel |New |Add PutFileByPath +|* |Submodel |Changed |InvokeOperationAsync +| |Registry |Changed |Endpoint +|* |Registry |Changed |Remove /registry from REST path +|* |All |New |API Versioning adds a prefix to all interfaces +|=== + +=== Operation Changes w.r.t. V1.0RC02 to V1.0RC03 + +[%autowidth, width="100%", cols="32%,19%,13%,36%",options="header",] +|=== +|*Operation Change Old* |*Operation Change New* |*Kind of Change* |*Comment* +| | |Changed |inputArgument and inoutputArgument are OperationVariable +|GetAllAssetAdminstrationShellsByAssetLink | |Changed |IdentifierKeyValuePair to SpeicifcAssetId +|GetAllAssetLinksById | |Changed |IdentifierKeyValuePair to SpeicifcAssetId +|PostAllAssetLinksById | |Changed |IdentifierKeyValuePair to SpeicifcAssetId +|=== + +=== Interface Changes w.r.t. V1.0RC01 to V1.0RC02 + +[%autowidth, width="100%", cols="10%,21%,13%,56%",options="header",] +|=== +|*BWC* |*Interface Change* |*Kind of Change* |*Comment* +|* |Asset Administration Shell |Changed a| +Renamed: + +RemoveSubmodelReference to DeleteSubmodelReference + +Removed: + +PutSubmodelReference, PatchAssetAdministrationShell + +New: + +GetAssetInformation + +PutAssetInformation + +GetAllSubmodelReferences + +PostSubmodelReference + +|* |Submodel |Changed a| +Removed: + +GetAllSubmodelElementsByParentPathAndSemanticId, GetAllSubmodelElementsBySemanticId + +New: + +PutSubmodel, PostSubmodelElement, PostSubmodelElementByPath + +|* |Asset Administration Shell Serialization |Changed a| +Renamed: + +GetSerializationByIds to GenerateSerializationByIds + +Removed: + +GetAASX + +| |AASX File Server |New |New interface +|(*) |Asset Administration Shell Registry |Changed a| +Renamed: PutAssetAdministrationShellDescriptor to PutAssetAdministrationShellDescriptorById + +New: + +PostAssetAdministrationShellDescriptor + +|(*) |Submodel Registry |Changed a| +Renamed: + +PutSubmodelDescriptor to PutSubmodelDescriptorById + +New: + +PostSubmodelDescriptor + +|(*) |Asset Administration Shell Repository |Changed a| +Renamed: + +GetAllAssetAdministrationShellsById to GetAssetAdministrationShellById, + +PutAssetAdministrationShell to PutAssetAdministratioShellById + +New: + +PostAssetAdministrationShell + +|(*) |Submodel Repository |Changed a| +Renamed: + +PutSubmodel to PutSubmodelById + +New: + +PostSubmodel + +|(*) |Asset Administration Shell Basic Discovery |Changed a| +Removed: GetAllAssetAdministrationShellIdsByAssetId, + +PutAssetId + +New: GetAllAssetAdministrationShellIdsByAssetLink, GetAllAssetLinksById, PutAllAssetLinksById, DeleteAllAssetLinksById + +|(*) |Submodel Discovery Basic |Removed | +|(*) |Concept Description Repository |Changed a| +Renamed: GetAllConceptDescriptionsWtihDataSpecificationReference to GetAllConceptDescriptionsByDataSpecificationReference, PutConceptDescription to PutConceptDescriptionById + +New: + +PostConceptDescription + +|=== + +=== Operation Changes w.r.t. V1.0RC01 to V1.0RC02 + +[%autowidth, width="100%", cols="32%,34%,13%,21%",options="header",] +|=== +|*Operation Change Old* |*Operation Change New* |*Kind of Change* |*Comment* +|PatchAssetAdministrationShell | |Removed | +|PutSubmodelReference | |Removed |Substituted by PostSubmodelReference +| |PostSubmodelReference |New |For PutSubmodelReference +|RemoveSubmodelReference |DeleteSubmodelReference |Changed | +| |GetAllSubmodelReferences |New | +| |PostSubmodelReference |New | +| |GetAssetInformation |New | +| |PutAssetInformation |New | +| |PutSubmodel |New | +| |PostSubmodelElement |New | +| |PostSubmodelElementByPath |New | +|GetAllSubmodelElementsByParentPathAndSemanticId | |Removed | +|GetAllSubmodelElementsBySemanticId | |Removed | +|GetAASX | |Removed | +|GetSerializationByIds |GenerateSerializationByIds |Renamed | +| |GetAllAASXPackageIds |New | +| |GetAASXByPackageId |New | +| |PostAASXPackage |New | +| |PutAASXByPackageId |New | +| |DeleteAASXByPackageId |New | +|PutAssetAdministrationShellDescriptor |PutAssetAdministrationShellDescriptorById |Changed |Naming pattern byId +| |PostAssetAdministrationDescriptor |New | +|PutSubmodelDescriptor |PutSubmodelDescriptorById |Changed |Naming pattern byId +| |PostSubmdeoDescriptor |New | +|GetAllAssetAdministrationShellsById |GetAssetAdministrationShellById |Changed |Naming pattern resource singular +| |PostAssetAdministrationShell |New | +|PutAssetAdministrationShell |PutAssetAdministrationShellById |Changed |Naming pattern byId +|PutSubmodel |PutSubmodelById |Changed |Naming pattern byId +| |PostSubmodel |New | +|GetAllAssetAdministrationShellIdsByAssetId | |Removed |substituted by GetAllAssetAdministrationShellIdsByAssetLink and GetAllAssetLinksById +|PutAssetId | |Removed |Substituted by PutAllAssetLinksById and DeleteAllAssetLinksById +| |GetAllAssetAdministrationShellIdsByAssetLink |New |Before: GetAllAssetAdministrationShellIdsByAssetId +| |GetAllAssetLinksById |New | +| |PutAllAssetLinksById |New | +| |DeleteAllAssetLinksById |New | +|GetAllSubmodelIdsBySemanticId | |Removed | +|GetAllConceptDescriptionsWithDataSpecificationReference |GetAllConceptDescriptionsByDataSpecificationReference |Renamed |Renaming With  By +|PutConceptDescription |PutConceptDescriptionById |Changed |Naming pattern byId +| |PostConceptDescription |New | +|=== + +[bibliography] +== Bibliography + +[#bib1] +[1] Specification of the Asset Administration Shell. Part 1: Metamodel, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub + +[#bib2] +[2] Specification of the Asset Administration Shell. Part 3a: Data Specification – IEC 61360, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub + +[#bib3] +[3] Specification of the Asset Administration Shell. Part 5: Package File Format, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub + +[#bib4] +[4] file:///C:/Users/sbader/AppData/Local/Temp/Tom%20Preston-Werner[Tom Preston-Werner]. Semantic Versioning. Version 2.0.0. Online. Available: https://semver.org/spec/v2.0.0.html + +[#bib5] +[5] RFC 8820: URI Design and Ownership. Internet Engineering Task Force (IETF), 2020. Online. Available: https://tools.ietf.org/html/rfc8820 + +[#bib6] +[6] DIN SPEC 91406: “Automatic identification of physical objects and information on physical objects in IT systems, particularly IoT systems”. December 2019. Online. Available: https://www.beuth.de/de/technische-regel/din-spec-91406/314564057 + +[#bib7] +[7] Decentralized Identifiers (DIDs) v1.0. Edited by Manu Sporny, Amy Guy, Markus Sabadello, and Drummond Reed. W3C Recommendation. Online. Available: https://www.w3.org/TR/did-core/ + +[#bib8] +[8] OData Version 4.01 Part 1: Protocol. Edited by Michael Pizzo, Ralf Handl, and Martin Zurmuehl. OASIS Standard. Online. Available: https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html diff --git a/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.docx b/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.docx new file mode 100644 index 00000000..cca07347 Binary files /dev/null and b/documentation/IDTA-01002-3-0_SpecificationAssetAdministrationShell_Part2_API.docx differ diff --git a/documentation/favicon.png b/documentation/favicon.png new file mode 100644 index 00000000..1afa04e5 Binary files /dev/null and b/documentation/favicon.png differ diff --git a/documentation/idta-logo.png b/documentation/idta-logo.png new file mode 100644 index 00000000..b3d6c42b Binary files /dev/null and b/documentation/idta-logo.png differ diff --git a/documentation/index.html b/documentation/index.html new file mode 100644 index 00000000..4a9c3970 --- /dev/null +++ b/documentation/index.html @@ -0,0 +1,17012 @@ + + + + + + + + + +Part 2: Application Programming Interfaces + + + + +
+
+

1. Preamble

+
+
+

1.1. Editorial Notes

+
+

This document (version 3.0) was produced from November 2021 to May 2023 by the joint sub working group "Asset Administration Shell" of the working group "Reference Architectures, Standards and Norms" of the Plattform Industrie 4.0 and the working group "Open Technology" of the Industrial Digital Twin Association (IDTA). It is the first release published by the Industrial Digital Twin Association.

+
+
+

Earlier versions of this document were release candidates and used the version 1.0. It has been decided in the meantime that this first release will start with version 3.0, in line with the related release of the metamodel.

+
+
+

Version 1.0 RC02 of this document was developed from November 2020 to November 2021 by the joint working groups “Asset Administration Shell” and “Infrastructure of the Asset Administration Shell” of the Plattform Industrie 4.0 working group “Reference Architectures, Standards and Norms“.

+
+
+

Version 1.0 RC01 of this document was developed from December 2019 to November 2020 by the sub working groups “Asset Administration Shell” and “Infrastructure of the Asset Administration Shell” of the Plattform Industrie 4.0 working group “Reference Architectures, Standards and Norms“.

+
+
+

This document is Part 2 of the document series “Specification of the Asset Administration Shell”.

+
+
+

This specification is versioned using Semantic Versioning 2.0.0 and follows the semver specification [4].

+
+
+
+

1.2. Metamodel Versions

+
+

This document (version 3.0) uses the following parts of the “Specification of the Asset Administration Shell” series:

+
+
+
    +
  • +

    Part 1: Metamodel in version 3.0 [1]

    +
  • +
  • +

    Part 3a: Data Specification – IEC 61360 in version 3.0 [2]

    +
  • +
  • +

    Part 5: Package File Format (AASX) in version 3.0 [3]

    +
  • +
+
+
+
+

1.3. Scope of this Document

+
+

This document specifies the interfaces as well as the APIs in selected technologies for the Asset Administration Shells and its submodels.

+
+
+
+

1.4. Structure of the Document

+
+

Clause 3 gives an introduction to the topic. General topics are discussed in Clause 4. The technology-neutral specification of the interfaces of the Asset Administration Shell can be found in Clauses 5 to 11.

+
+
+

Clause 12 defines the API specification for HTTP/REST. Annex B gives an example for the ValueOnly-serialization of the payload.

+
+
+

Clause 13 provides a summary and outlook.

+
+
+

The tables used to specify operations and interfaces are explained in the annex. Additionally, non-normative examples are given to illustrate in particular the different serialization alternatives.

+
+
+
+
+
+

2. Terms, Definitions and Abbreviations

+
+
+

2.1. Terms and Definitions

+
+
+
+

Please note: the definitions of terms are only valid in a certain context. This glossary applies only within the context of this document.

+
+
+
+
+

If available, definitions were taken from IEC 63278-1 DRAFT, July 2022.

+
+
+

API

+
+
+

specification of the set of operations and events that forms an API in a selected technology

+
+
+

API Operation

+
+
+

specification of the operations (procedures) that may be called through an API

+
+
+

Asset Administration Shell (AAS)

+
+
+

standardized digital representation of an asset

+
+
+
+
+

Note: Asset Administration Shell and Administration Shell are used synonymously.

+
+
+
+
+
    +
  • +

    [SOURCE: IEC 63278-1, note added]

    +
  • +
+
+
+

Interface

+
+
+

defined connection point of a functional unit which can be connected to other functional units

+
+
+
+
+

Note 1: “defined” means that the requirements and the assured properties of this connection point are described.

+
+
+

Note 2: the combination of interfaces of function units is also called an interface.

+
+
+

Note 3: in an information system, the defined exchange of information takes place at this point.

+
+
+

Note 4: an interface places certain requirements on the connection that is to be made.

+
+
+

Note 5: an interface demands certain features.

+
+
+
+
+

[Source: Glossary Industrie 4.0

+
+
+

DUDEN (modified)

+
+
+

ISO/IEC 13066-1:2011(en), 2.15 (modified)

+
+
+

DIN EN 60870-5-6:2009-11 (modified)

+
+
+

DIN IEC 60625-1:1981-05 (modified)]

+
+
+

Interface Operation

+
+
+

interface operations define interaction patterns via the specified interface

+
+
+

operation

+
+
+

executable realization of a function

+
+
+
+
+

Note 1: the term method is synonymous to operation.

+
+
+

Note 2: an operation has a name and a list of parameters [ISO 19119:2005, 4.1.3].

+
+
+
+
+
    +
  • +

    [SOURCE: Glossary Industrie 4.0, editorial changes]

    +
  • +
+
+
+

service

+
+
+

Demarcated scope of functionality which is offered by an entity or organization via interfaces

+
+
+
+
+

Note: one or multiple operations can be assigned to one service.

+
+
+
+
+
    +
  • +

    [SOURCE: Glossary Industrie 4.0]

    +
  • +
+
+
+

service specification

+
+
+

specification of a service according to the notation, architectural style and constraints of a selected technology

+
+
+
+
+

Note: one or multiple API Operations can be assigned to one service specification.

+
+
+
+
+

Submodel

+
+
+

representation of an aspect of an asset

+
+
+
    +
  • +

    [SOURCE: IEC 63278-1]

    +
  • +
+
+
+

SubmodelElement

+
+
+

element of a Submodel

+
+
+
    +
  • +

    [SOURCE: IEC 63278-1]

    +
  • +
+
+
+
+

2.2. Abbreviations

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AbbreviationDescription

AAS

Asset Administration Shell

AASX

Package file format for the AAS

AML

AutomationML

API

Application Programming Interface

BITKOM

Bundesverband Informationswirtschaft, Telekommunikation und neue Medien e. V.

BLOB

Binary Large Object

CDD

Common Data Dictionary

GUID

Globally unique identifier

ID

Identifier

IDTA

Industrial Digital Twin Association

IEC

International Electrotechnical Commission

IRDI

International Registration Data Identifier

ISO

International Organization for Standardization

JSON

JavaScript Object Notation

MIME

Multipurpose Internet Mail Extensions

OPC

Open Packaging Conventions (ECMA-376, ISO/IEC 29500-2)

OPCF

OPC Foundation

OPC UA

OPC Unified Architecture

PDF

Portable Document Format

RAMI4.0

Reference Architecture Model Industrie 4.0

RDF

Resource Description Framework

REST

Representational State Transfer

RFC

Request for Comment

ROA

Resource Oriented Architecture

SOA

Service Oriented Architecture

UML

Unified Modeling Language

URI, URL, URN

Uniform Resource Identifier, Locator, Name

VDE

Verband der Elektrotechnik Elektronik Informationstechnik e. V.

VDI

Verein Deutscher Ingenieure e.V.

VDMA

Verband Deutscher Maschinen- und Anlagenbau e.V.

W3C

World Wide Web Consortium

XML

eXtensible Markup Language

ZIP

archive file format that supports lossless data compression

ZVEI

Zentralverband Elektrotechnik- und Elektronikindustrie e. V.

+
+
+
+
+

3. Introduction

+
+
+

This document defines APIs for enabling the access to the information provided by an Asset Administration Shell. The underlying information model is as defined in [1].

+
+
+

Since an API can be specified in different technologies like HTTP/REST, MQTT and OPC UA, the specification offers a technology-neutral specification of the interfaces.

+
+
+

While Part 5 of the specification series of the Asset Administration Shell [3] mainly considered file exchange, this specification focuses on the API that allows online access to information provided by the AAS (see Figure 1).

+
+
+
+image2 +
+
Figure 1. Types of Information Exchange via Asset Administration Shells
+
+
+
+
+

4. General

+
+
+

4.1. Services, Interfaces and Interface Operations

+
+

This document uses the Industrie 4.0 Service Model illustrated in

+
+
+

Figure 2 for a uniform understanding and naming. It basically distinguishes between associated concepts on several levels (from left to right):

+
+
+
    +
  • +

    technology-neutral level: concepts that are independent from selected technologies;

    +
  • +
  • +

    technology-specific level: concepts that are instantiated for a given technology and/or architectural style (e.g. HTTP/REST, OPC UA, MQTT);

    +
  • +
  • +

    implementation level: concepts that are related to an implementation architecture that comprises one or more technologies (e. g. C#, C++, Java, Python);

    +
  • +
  • +

    runtime level: concepts that are related to identifiable components in an operational Industry 4.0 system.

    +
  • +
+
+
+

This document deals with the concepts of the technology-neutral and technology-specific level. However, to avoid terminological and conceptual misunderstandings, the whole Industrie 4.0 Service Model is provided here.

+
+
+

The technology-neutral level comprises the following concepts:

+
+
+
    +
  • +

    Service: a service describes a demarcated scope of functionality (including its informational and non-functional aspects), which is offered by an entity or organization via interfaces.

    +
  • +
  • +

    Interface: this is the most important concept as it is understood to be the unit of reusability across services and the unit of standardization when mapped to application programming interfaces (API) in the technology-specific level. One interface may be mapped to several APIs depending on the technology and architectural style used, e.g. HTTP/REST or OPC UA, whereby these API mappings also need to be standardized for the sake of interoperability.

    +
  • +
  • +

    Interface-Operation: interface operations define interaction patterns via the specified interface.

    +
  • +
+
+
+

The technology-specific level comprises the following concepts:

+
+
+
    +
  • +

    Service Specification: specification of a service according to the notation, architectural style, and constraints of a selected technology. Among others, it comprises and refers to the list of APIs that forms this service specification. These may be I4.0-defined standard APIs but also other, proprietary APIs.

    +
  • +
+
+
+
+
+

Note: such a technology-specific service specification may be but does not have to be derived from the “service” described in the technology-neutral form. It is up to the system architect and service engineer to tailor the technology-specific service according to the needs of the use cases.

+
+
+
+
+
    +
  • +

    API: specification of the set of operations and events that forms an API in a selected technology. It is derived from the interface description on the technology-neutral level. Hence, if there are several selected technologies, one interface may be mapped to several APIs.

    +
  • +
  • +

    API-Operation: specification of the operations (procedures) that may be called through an API. It is derived from the interface operation description on the technology-neutral level. When selecting technologies, one interface operation may be mapped to several API-operations; several interface operations may also be mapped to the same API-operation.

    +
  • +
+
+
+

The implementation level comprises the following concepts:

+
+
+
    +
  • +

    Service-Implementation: service realized in a selected implementation language following the specification in the Service Specification description on the technology-specific level.

    +
  • +
  • +

    API-Implementation: set of operations realized in a selected implementation language following the specification in the API description on the technology-specific level.

    +
  • +
  • +

    API-Operation-Implementation: concrete realization of an operation in a selected implementation language following the specification in the API-Operation description on the technology-specific level.

    +
  • +
+
+
+

The runtime level comprises the following concepts:

+
+
+
    +
  • +

    Service-Instance: instance of a Service-Implementation including its API-Instances for communication. Additionally, it has an identifier to be identifiable within a given context.

    +
  • +
  • +

    API-Instance: instance of an API-Implementation which has an endpoint to get the information about this instance and the related operations.

    +
  • +
  • +

    API-Operation-Instance: instance of an API-Operation-Implementation which has an endpoint to get invoked.

    +
  • +
+
+
+
+image3 +
+
Figure 2. Services, Interfaces & APIs and Operations
+
+
+

One important message from the Industrie 4.0 Service Model is that it is the level of the interface (mapped to technology-specific APIs) that

+
+
+
    +
  • +

    provides the unit of reusability,

    +
  • +
  • +

    is the foundation for interoperable services, and

    +
  • +
  • +

    provides the reference unit for compliance statements.

    +
  • +
+
+
+

Therefore, this document defines the interfaces and operations which are needed for interaction regarding the elements of the Asset Administration Shell metamodel starting with Clause 5.

+
+
+
+

4.2. Design Principles

+
+

The operations of the interfaces follow a resource-oriented approach which is close to general REST principles but not as strict in every situation. The approach consists of the three main agreements:

+
+
+
    +
  • +

    Stateless: the API is stateless. Each operation is independent. The server is always consistent after each operation.

    +
  • +
  • +

    Resources (nouns): each resource is a clearly defined noun. This means that it has a specific name and its relation to other nouns is defined. The nouns and the relationships between them are taken from the list of referable objects of “Specification of the Asset Administration Shell Part 1” and their relationships. Clause 10.2 gives an additional list of resources.

    +
  • +
  • +

    Methods (verbs): a small set of standard REST methods (GET, POST, PUT, DELETE) is used to describe the semantic of the most common operations. There are only a few exceptions for situations where the standard methods do not fit (e.g. GETALL, SET, INVOKE).

    +
  • +
+
+
+

The methods are:

+
+
+
    +
  • +

    GET: a GET returns a single resource based on the resource identifier which is the identifier [1] for identifiables and the idShortPath for referables.

    +
  • +
  • +

    GETALL: returns a list of resources based on optionally available parameters such as filters.

    +
  • +
  • +

    POST: creates a new resource. The identifier of the resource is part of the resource description. This is necessary because the id of identifiables is globally unique and should be the identifier for the object in every system. This implies that the creation of an identifiable is idempotent. There shall never be more than one identifiable with the same ID in one system. For example, trying to post the same AAS object twice will not create two AAS resources.

    +
  • +
  • +

    PUT: replaces an existing resource.

    +
  • +
  • +

    PATCH: updates an existing resource. The content to be replaced will be defined by the given SerializationModifiers, e.g. content=value provides the ValueOnly-serialization to update all values in the existing resource. The structure of the existing resource on the server and of the content given by the PATCH must be the same.

    +
  • +
+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+
+
+
    +
  • +

    DELETE: deletes a resource based on a given identifier.

    +
  • +
  • +

    SET: sets the value of an object, e.g. the value of a Property.

    +
  • +
  • +

    INVOKE: invokes an operation at a specified path.

    +
  • +
+
+
+
+
+

Note: these methods are intended for the naming of interfaces as described in +Figure 2. They shall not be interpreted as new protocol methods, e.g. on HTTP level.

+
+
+
+
+

Naming rules for operations:

+
+
+
+
+

The following rules shall apply for the operation names in Asset Administration Shell Interface, Submodel Interface, Shell Repository Interface, Submodel Repository Interface, Concept Description Repository Interface:

+
+
+
+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

<Interface Operation>

::=

<Method Verb><Model Element Name>[<Modifier>]
+["By"<By-Qualifier>]

<Method Verb>

::=

"Get" | "GetAll" | "Put" | "Post" | "Patch" | "Delete" | "Set" | "Invoke"

<Model Element Name>

::=

"AssetAdministrationShell"["s"] | "SubmodelReference" ["s"] |
+"AssetInformation" | "Submodel"["s"] | "SubmodelElement"["s"] | "ConceptDescription"["s"]

<Modifier>

::=

"Value" | "IdShortPath" | "Reference"

<By-Qualifier>

::=

"Id" | "SemanticId" | "ParentPathAndSemanticId" | "Path" | "AssetId" | "IdShort" | "IsCaseOf" | "DataSpecificationReference"

+
+
+
+

Examples:

+
+
+

GetSubmodel has method verb “Get” and element name “Submodel”.

+
+
+

GetAllSubmodelElementsByPath has method verb “GetAll” and element name “SubmodelElements” plus a by-qualifier “Path”.

+
+
+
+
+
+

4.3. Semantic References for Operations

+
+

The operations of this document need unique identifiers to reach a common understanding and allow all involved parties to reference the same things. These identifiers need to be globally unique and understandable by the community and implementing systems. Furthermore, the identifiers need to support a versioning scheme for future updates and extensions of the metamodel. The identifiers defined in this document are reused in related resources, for instance REST API operations or in self-descriptions of implementing services.

+
+
+

Internationalized Resource Identifiers (IRIs), Uniform Resource Identifiers (URIs) [5] in particular, and the requirements of DIN SPEC 91406 [6], serve as the basic format. Further design decisions include ‘https’ as the URI scheme, and the controlled domain name ‘admin-shell.io’ as the chosen authority. Both decisions guarantee the interoperability of the identifiers and their durability, since URIs are generally well-known and proven, while the domain is controlled and served through the Plattform Industrie 4.0. All identifiers included in the ‘admin-shell.io’ domain are described in a lightweight catalogue in the form of markdown documents; they are continuously maintained and updated [https://github.com/admin-shell-io/id]. The catalogue itself is structured in several sub-namespaces specified by the first path parameter. All URIs of this document reflect entities of the core metamodel, which are contained in the sub-namespace identified with the ‘/aas/API’ path.

+
+
+

The described identifiers appear mainly in the semanticId field of every class and operation. They are required since the class name is not necessarily constant over time. The respective semanticIds, however, guarantee the unique and certain relation between a reference and the referenced class or operation. The URIs are constructed as follows (compare to Clause Semantic Identifiers for Metamodel and Data Specifications in Part 1 [1]).

+
+
+
+
+

Note 1: version information is explicitly included in each identifier.

+
+
+

Note 2: even though the usage of the ‘https’ scheme might indicate URLs, all identifiers are regarded as URI look ups; dereferencing them cannot be expected.

+
+
+
+
+

The following grammar is used to create valid identifiers:

+
+
+

<Identifier> ::= <Namespace>"/aas/API/"<OperationName>"/"<Version>

+
+
+

<Namespace> ::= "https://admin-shell.io

+
+
+

<OperationName> ::= \{<Character>}+

+
+
+

<Version> ::= \{<Digit>}"/"\{<Digit>}["/"\{<Character>}+]

+
+
+

<Digit> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"

+
+
+

<Character> ::= an unreserved character permitted by DIN SPEC 91406

+
+
+

? ::= zero or one

+
+
+

+ ::= one or more

+
+
+

Examples for valid identifiers:

+
+ +
+

Examples for invalid identifiers:

+
+
+ +
+
+
+

4.4. References and Keys

+
+

The concept of references is introduced in Part 1 of the series “ Specification of the Asset Administration Shell” [1].

+
+
+

When defining interfaces, a distinction is made between relative references and absolute references.

+
+
+

Absolute references require a global unique id as starting point of the reference to be resolvable. In this case the type “Reference” is used.

+
+
+

Relative references do not start with a global unique id. Instead, it is assumed that the context is given and unique. In this case, the key list only contains keys with Key/type that references a non-identifiable referable (e.g. a Property, a Range, a RelationshipElement, etc.).

+
+
+
+

4.5. Special Parameters

+
+

The following table describes special parameters used for consistency throughout the document.

+
+ + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1. Special Parameters
ParameterDescription

path

IdShort-Path via relative Reference/Keys to a submodel element

OperationHandle

The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution

OperationResult

The returned result of an operation’s invocation

SerializationModifier

Defines the format of the input or the output of an operation

SerializationFormat

Determines the format of serialization, i.e. JSON, XML, RDF, AML, etc.

ShellDescriptor

Object containing the Asset Administration Shell’s identification and endpoint information

SubmodelDescriptor

Object containing the Submodel’s identification and endpoint information

SpecificAssetId

The name of the specific asset identifier or the predefined name “globalAssetId” that would refer to the AssetInformation/globalAssetId

SemanticId

Identifier of the semantic definition

+
+
+

4.6. Relation of Interfaces

+
+

The following chapters define several interfaces, which work together as a system and support different deployment scenarios.

+
+
+

There are three major components of the overall system:

+
+
+
    +
  1. +

    Repositories store the data of Asset Administration Shells, Submodels, and Concept Descriptions,

    +
  2. +
  3. +

    Registries are “directories” which store AAS-IDs and Submodel-IDs together with the related endpoints (typically a URL-path into a repository or to a single AAS/Submodel),

    +
  4. +
  5. +

    discovery (servers) supports a fast search and only store copies of essential information, i.e. key value pairs to find IDs by other IDs.

    +
  6. +
+
+
+

Figure 3 shows a typical sequence. Discovery finds the AAS-ID for a given Asset-ID. A Registry provides the endpoint for a given AAS-ID. Such an endpoint for an AAS and the related Submodel-IDs make the submodels with their submodelElements accessible.

+
+
+
+Ein Bild +
+
Figure 3. Retrieval of Asset-related Information by AAS and Submodels
+
+
+

The Asset Administration Shell model is an asset-oriented model.

+
+
+

An Asset-ID may be retrieved e.g. by a QRCODE on the asset, by an RFID for the asset, from the firmware of the asset or from an asset database. IEC 61406 (formerly DIN SPEC 91406) defines the format of such Asset-IDs.

+
+
+

The “Administration Shell Basic Discovery Interface” may be used with an Asset-ID to get the related AAS-IDs (“GetAllAssetAdministrationShellIdsByAssetLink”).

+
+
+

The “Asset Administration Shell Registry Interface” may be used with an AAS-ID to retrieve the related descriptor for an AAS (“GetAssetAdministrationShellDescriptorById”). The retrieved AAS Descriptor includes the endpoint for the “Asset Administration Shell Interface”.

+
+
+

The “Asset Administration Shell Interface” makes the information about the AAS itself and the references to the related submodels available.

+
+
+

The related submodels of an AAS are retrieved by “GetAllSubmodelReferences”. Such a reference includes the SM-ID of a related submodel.

+
+
+

Similarly to the AAS above, the “Submodel Registry Interface” may be used to retrieve the related descriptor for a submodel (“GetSubmodelDescriptorById”) with a specific SM-ID. The retrieved Submodel Descriptor includes the endpoint for the “Submodel Interface”.

+
+
+

The “Submodel Interface” makes the information about the submodel itself and all its included submodel elements available.

+
+
+

Asset Administration Shells and submodels may be deployed on different endpoints in different ways.

+
+
+

One example is the deployment of an AAS on a device. In this case, the AAS might be fixed and might not be changed or deleted. In a cloud scenario, a single AAS may also be deployed as a single container (e.g. docker container).

+
+
+

Another example is the deployment of many Asset Administration Shells in an AAS Repository. In this case, the “Asset Administration Shell Repository Interface” may allow to create and manage multiple AAS in the repository.

+
+
+

The separate interfaces of the HTTP/REST API allow many ways to support different deployments.

+
+
+

For an AAS repository, the combination “Asset Administration Shell Repository Interface”, “Asset Administration Shell Interface”, “Submodel Interface”, “Serialization Interface”, and “Self-Description Interface” is proposed.

+
+ +
+

/shells
+/shells/{aas-identifier}
+/shells/{aas-identifier}/asset-information
+/shells/{aas-identifier}/asset-information/thumbnail
+/shells/{aas-identifier}/submodel-refs
+/shells/{aas-identifier}/submodel-refs/{submodel-identifier}
+/shells/{aas-identifier}/submodels/{submodel-identifier}
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/attachment
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/invoke
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/invoke-async
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/operation-status/{handleId}
+/shells/{aas-identifier}/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/operation-results/{handleId}
+/serialization
+/description

+
+
+

If the repository also supports AASX Packages, it shall be extended by additionally supporting a “AASX File Server” Profile [Related OpenAPI file: https://app.swaggerhub.com/apis/Plattform_i40/AasxFileServerServiceSpecification/V3.0_SSP-001].

+
+
+

The example of a device or container containing one AAS with its related submodels will result in the following HTTP/REST paths as described in the related OpenAPI file (https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001)2:

+
+
+

/aas
+/aas/asset-information
+/aas/asset-information/thumbnail
+/aas/submodel-refs
+/aas/submodel-refs/{submodel-identifier}
+/aas/submodels/{submodel-identifier}
+/aas/submodels/{submodel-identifier}/submodel-elements
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/attachment
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/invoke
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/invoke-async
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/operation-status/{handleId}
+/aas/submodels/{submodel-identifier}/submodel-elements/{idShortPath}/operation-results/{handleId}
+/serialization
+/description

+
+
+
+
+

Note: identifiers are base64url-encoded in the API, i.e. {aas-identifier} and {submodel-identifier}. The {idShortPath} is URL-encoded in the API.

+
+
+
+
+
+
+
+

5. Asset Administration Shell Interfaces

+
+
+

5.1. General

+
+

These interfaces make it possible to access the elements of Asset Administration Shells or Submodels.

+
+
+

The AASX File Server Interface enables management of AASX packages on a server. A list of available packages can be retrieved. Each package in the list can be downloaded, uploaded, or deleted. New packages can also be added.

+
+
+

AASX packages are stored and managed independently from instantiated Asset Administration Shells or submodels on a server. The server documentation shall contain a description of when and how AASX packages are handled, e.g. if Asset Administration Shells or Submodels in AASX packages are instantiated at startup of the server and/or if they are also instantiated when an AASX package is changed by an API operation.

+
+
+
+

5.2. Asset Administration Shell Interface and Operations

+
+

5.2.1. Asset Administration Shell Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Asset Administration Shell

Operation Name

Description

GetAssetAdministrationShell

Returns the Asset Administration Shell

PutAssetAdministrationShell

Replaces the current Asset Administration Shell

GetAllSubmodelReferences

Returns all Submodel References

PostSubmodelReference

Creates a Submodel Reference at the Asset Administration Shell

DeleteSubmodelReference

Deletes a specific Submodel Reference from the Asset Administration Shell

GetAssetInformation

Returns the Asset Information

PutAssetInformation

Replaces the Asset Information

GetThumbnail

Returns the thumbnail file

PutThumbnail

Replaces the thumbnail file

DeleteThumbnail

Deletes the thumbnail

+
+
+

5.2.2. Operation GetAssetAdministrationShell

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAssetAdministrationShell

Explanation

Returns the Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/GetAssetAdministrationShell/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

Defines the format of the response

no

SerializationModifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Administration Shell

yes

AssetAdministrationShell

1

+
+
+

5.2.3. Operation PutAssetAdministrationShell

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutAssetAdministrationShell

Explanation

Replaces the Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/PutAssetAdministrationShell/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aas

AssetAdministrationShell

yes

Asset Administration Shell object

1

Output Parameter

statusCode

StatusCode

yes

Status code

1

payload

AssetAdministrationShell

yes

Replaced Asset Administration Shell

1

+
+
+

5.2.4. Operation GetAllSubmodelReferences

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodelReferences

Explanation

Returns all Submodel References

semanticId

https://admin-shell.io/aas/API/GetAllSubmodelReferences/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Submodel References

yes

Reference

0..*

+
+
+

5.2.5. Operation PostSubmodelReference

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostSubmodelReference

Explanation

Creates a Submodel Reference at the Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/PostSubmodelReference/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodelRef

Reference to the Submodel

yes

Reference

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created Submodel Reference

yes

Reference

1

+
+
+

5.2.6. Operation DeleteSubmodelReference

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteSubmodelReference

Explanation

Deletes the Submodel Reference from the Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/DeleteSubmodelReference/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodelId

The unique id of the Submodel for the reference to be deleted

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.2.7. Operation GetAssetInformation

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAssetInformation

Explanation

Returns the Asset Information

semanticId

https://admin-shell.io/aas/API/GetAssetInformation/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Information

yes

AssetInformation

1

+
+
+

5.2.8. Operation PutAssetInformation

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutAssetInformation

Explanation

Replaces the Asset Information

semanticId

https://admin-shell.io/aas/API/PutAssetInformation/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

assetInfo

Asset Information object

yes

AssetInformation

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.2.9. Operation GetThumbnail

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetThumbnail

Explanation

Returns the thumbnail file

semanticId

https://admin-shell.io/aas/API/GetThumbnail/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested thumbnail file

yes

File Content

1

+
+
+

5.2.10. Operation PutThumbnail

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutThumbnail

Explanation

Replaces the thumbnail file

semanticId

https://admin-shell.io/aas/API/PutThumbnail/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

file

Thumbnail file

yes

File Content

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.2.11. Operation DeleteThumbnail

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteThumbnail

Explanation

Deletes the thumbnail file

semanticId

https://admin-shell.io/aas/API/DeleteThumbnail/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+

5.3. Submodel Interface and Operations

+
+

5.3.1. Submodel Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Submodel

Operation Name

Description

GetSubmodel

Returns the Submodel

GetAllSubmodelElements

Returns all submodel elements including their hierarchy

GetSubmodelElementByPath

Returns a specific submodel element from the Submodel at a specified path

GetFileByPath

Returns a specific file from the Submodel at a specified path

PutFileByPath

Replaces the file of an existing submodel element at a specified path within the submodel element hierarchy

DeleteFileByPath

Deletes the file of an existing submodel element at a specified path within the submodel element hierarchy

PutSubmodel

Replaces the Submodel

PatchSubmodel

Updates the Submodel

PostSubmodelElement

Creates a new submodel element as a child of the submodel. The idShort of the the new submodel element must be set in the payload.

PostSubmodelElementByPath

Creates a new submodel element at a specified path within the submodel elements hierarchy. The idShort of the the new submodel element must be set in the payload.

PutSubmodelElementByPath

Replaces an existing submodel element at a specified path within the submodel element hierarchy

PatchSubmodelElementByPath

Updates an existing submodel element at a specified path within the submodel element hierarchy

GetSubmodelElementValueByPath

Returns the value of the submodel element at a specified path according to the protocol-specific RAW-value payload

DeleteSubmodelElementByPath

Deletes a submodel element at a specified path within submodel element hierarchy

InvokeOperationSync

Synchronously invokes an Operation at a specified path with a client timeout in ms

InvokeOperationAsync

Asynchronously invokes an Operation at a specified path with a client timeout in ms

GetOperationAsyncStatus

Returns the current status of an asynchronously invoked operation

GetOperationAsyncResult

Returns the OperationResult of an asynchronously invoked operation

+
+
+

5.3.2. Operation GetSubmodel

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSubmodel

Explanation

Returns the Submodel

semanticId

https://admin-shell.io/aas/API/GetSubmodel/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

Defines the format of the response

no

SerializationModifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Submodel

yes

Submodel

1

+
+
+

5.3.3. Operation GetAllSubmodelElements

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodelElements

Explanation

Returns all submodel elements including their hierarchy

semanticId

https://admin-shell.io/aas/API/GetAllSubmodelElements/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

Defines the format of the response

no

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested submodel elements

yes

SubmodelElement

0..*

+
+
+

5.3.4. Operation GetSubmodelElementByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSubmodelElementByPath

Explanation

Returns a specific submodel element from the Submodel at a specified path

semanticId

https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

serializationModifier

Defines the format of the response

no

SerializationModifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested submodel element

yes

SubmodelElement

0..1

+
+
+

5.3.5. Operation GetFileByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetFileByPath

Explanation

Returns a specific file from the Submodel at a specified path

semanticId

https://admin-shell.io/aas/API/GetFileByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested file

yes

File Content

0..1

+
+
+

5.3.6. Operation PutFileByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutFileByPath

Explanation

Replaces the file of an existing submodel element at a specified path within the submodel element hierarchy

semanticId

https://admin-shell.io/aas/API/PutFileByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

payload

Replacing file

yes

File Content

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.3.7. Operation DeleteFileByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteFileByPath

Explanation

Deletes the file of an existing submodel element at a specified path within the submodel element hierarchy

semanticId

https://admin-shell.io/aas/API/DeleteFileByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.3.8. Operation PutSubmodel

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutSubmodel

Explanation

Replaces the Submodel

semanticId

https://admin-shell.io/aas/API/PutSubmodel/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodel

Submodel object

yes

Submodel

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced submodel

yes

Submodel

1

+
+
+

5.3.9. Operation PatchSubmodel

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PatchSubmodel

Explanation

Updates the Submodel

semanticId

https://admin-shell.io/aas/API/PatchSubmodel/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

+

Defines the format of the input

+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+

no

SerializationModifier

1

submodel

Submodel object

yes

Submodel

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Updated submodel

yes

Submodel

1

+
+
+

5.3.10. Operation PostSubmodelElement

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostSubmodelElement

Explanation

+

Creates a new submodel element as a child of the submodel. The idShort of the new submodel element must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

semanticId

https://admin-shell.io/aas/API/PostSubmodelElement/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodelElement

Submodel element object

yes

SubmodelElement

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created submodel element

yes

SubmodelElement

1

+
+
+

5.3.11. Operation PostSubmodelElementByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostSubmodelElementByPath

Explanation

+

Creates a new submodel element at a specified path within the submodel element hierarchy. The idShort of the new submodel element must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

semanticId

https://admin-shell.io/aas/API/PostSubmodelElementByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

The IdShortPath to the SubmodelElement under which the new SubmodelElement shall be addedIdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

submodelElement

Submodel element object

yes

SubmodelElement

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created submodel element

yes

SubmodelElement

1

+
+
+
+

Note: if the PostSubmodelElementByPath is executed towards a SubmodelElementList, the new SubmodelElement is added to the end of the list.

+
+
+
+
+
+

5.3.12. Operation PutSubmodelElementByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutSubmodelElementByPath

Explanation

Replaces an existing submodel element at a specified path within the submodel element hierarchy

semanticId

https://admin-shell.io/aas/API/PutSubmodelElementByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

The IdShortPath to the SubmodelElement which shall be replacedIdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

submodelElement

Submodel element object

yes

SubmodelElement

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced submodel element

yes

SubmodelElement

1

+
+
+

5.3.13. Operation PatchSubmodelElementByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PatchSubmodelElementByPath

Explanation

Updates an existing submodel element at a specified path within the submodel element hierarchy

semanticId

https://admin-shell.io/aas/API/PatchSubmodelElementByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

+

Defines the format of the input

+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+

no

SerializationModifier

1

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

submodelElement

Submodel element object

yes

SubmodelElement

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Updated submodel element

yes

SubmodelElement

1

+
+
+

5.3.14. Operation GetSubmodelElementValueByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSubmodelElementValueByPath

Explanation

Returns a specific submodel element value from the Submodel at a specified path according to the ValueOnly-serialization as defined in clause 11.4.1

semanticId

https://admin-shell.io/aas/API/GetSubmodelElementValueByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel elementhort-Path via relative Reference/Keys to a submodel element

yesIdShort-Path via relative Reference/Keys to a submodel element

Key

1..*

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested submodel element value

yes

SubmodelElement

1

+
+
+

5.3.15. Operation PatchSubmodelElementValueByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PatchSubmodelElementValueByPath

Explanation

Sets the value of the submodel element at a specified path according to the ValueOnly-serialization as defined in clause 11.4.1

semanticId

https://admin-shell.io/aas/API/PatchSubmodelElementValueByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel elementIdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

payload

The new value of the submodel element

yes

SubmodelElement

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.3.16. Operation DeleteSubmodelElementByPath

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteSubmodelElementByPath

Explanation

Deletes a submodel element at a specified path within the submodel elements hierarchy

semanticId

https://admin-shell.io/aas/API/DeleteSubmodelElementByPath/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element

yes

Key

1..*

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.3.17. Operation InvokeOperationSync

+ ++++ + + + + + + + + + + + + + + +

Operation Name

InvokeOperationSync

Explanation

Synchronously invokes an Operation at a specified path

semanticId

https://admin-shell.io/aas/API/InvokeOperationSync/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element, in this case an operation

yes

Key

1..*

inputArgument

Input argument

no

OperationVariable

1..*

inoutputArgument

Inoutput argument

no

OperationVariable

1..*

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

The Operation Result

yes

OperationResult

1

+
+
+

5.3.18. Operation InvokeOperationAsync

+ ++++ + + + + + + + + + + + + + + +

Operation Name

InvokeOperationAsync

Explanation

Asynchronously invokes an Operation at a specified path

semanticId

https://admin-shell.io/aas/API/InvokeOperationAsync/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

path

IdShort-Path via relative Reference/Keys to a submodel element, in this case an operation

yes

Key

1..*

inputArgument

Input argument

no

OperationVariable

1..*

inoutputArgument

Inoutput argument

no

OperationVariable

1..*

clientTimeoutDuration

Timestamp indicating when the client expects the server to have finished execution of the invoked operation

yes

duration

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution

yes

OperationHandle

1

+
+
+

5.3.19. Operation GetOperationAsyncStatus

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetOperationAsyncStatus

Explanation

Returns the current status of an asynchronously invoked operation

semanticId

https://admin-shell.io/aas/API/GetOperationAsnycStatus/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

operationHandle

The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution

yes

OperationHandle

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Execution state of the operation

yes

OperationResult

1

+
+
+

5.3.20. Operation GetOperationAsyncResult

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetOperationAsyncResult

Explanation

Returns the OperationResult of an asynchronously invoked operation

semanticId

https://admin-shell.io/aas/API/GetOperationAsnycResult/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

operationHandle

The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution

yes

OperationHandle

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Operation Result

yes

OperationResult

1

+
+
+
+

5.4. Serialization Interface and Operations

+
+

5.4.1. Serialization Interface

+ ++++ + + + + + + + + + + + + + + + +
Interface: Serialization

Operation Name

Description

GenerateSerializationByIds

Returns an appropriate serialization based on the specified format (see SerializationFormat).

+
+
+

5.4.2. Operation GenerateSerializationByIds

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GenerateSerializationByIds

Explanation

Returns an appropriate serialization based on the specified format (see SerializationFormat).

semanticId

https://admin-shell.io/aas/API/GenerateSerializationByIds/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIds

The unique ids of the Asset Administration Shells to be contained in the serialization

no

Identifier

1..*

submodelIds

The unique ids of the Submodels to be contained in the serialization

no

Identifier

1..*

includeConceptDescriptions

Include concept descriptions

no

boolean

1

serializationFormat

Denotes in which serialization format the requested content shall be delivered

no

SerializationFormat

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Serialization of the requested Asset Administration Shells and/or Submodels with or without ConceptDescriptions in specified SerializationFormat.

yes

Environment

1

+ ++++ + + + + + + + + + + + + + + +

Enumeration:

SerializationFormat

Explanation:

Determines the format of serialization, i.e. JSON, XML, RDF, AML, etc.RFC 6838, IANA Media Types, and defined custom content types; additional elements may be added in future versions

Set of:

 — 

+ ++++ + + + + + + + + + + + + + + + + + + + + +
LiteralExplanation

application/json

JSON serialization of the requested data object inside an AAS Environment structure

application/xml

XML serialization of the requested data object inside an AAS Environment structure (default)

application/asset-administration-shell-package+xml

AASX-Package (binary data) containing the requested data object

+
+
+
+

5.5. AASX File Server Interface and Operations

+
+

5.5.1. AASX File Server Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: AASX File Server

Operation Name

Description

GetAllAASXPackageIds

Returns a list of available AASX packages at the server

GetAASXByPackageId

Returns a specific AASX package from the server

PostAASXPackage

Creates an AASX package at the server

PutAASXByPackageId

Replaces the AASX package at the server

DeleteAASXByPackageId

Deletes a specific AASX package

+
+
+

5.5.2. Operation GetAllAASXPackageIds

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAASXPackageIds

Explanation

Returns a list of available AASX packages at the server

semanticId

https://admin-shell.io/aas/API/GetAllAASXPackageIds/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasId

Identifier of the AAS which must exist in each matching AASX package

no

Identifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Matching package list; the PackageDescription includes all Asset Administration Shell identifiers, also those which may have not been requested through the aasId input parameter

yes

PackageDescription

0..*

+
+
+

5.5.3. Operation GetAASXByPackageId

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAASXByPackageId

Explanation

Returns a specific AASX package from the server

semanticId

https://admin-shell.io/aas/API/GetAASXByPackageId/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

packageId

Requested package ID from the package list

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

filename

Filename of the AASX package

yes

string

1

payload

Requested AASX package

yes

AASX Package

1

+
+
+

5.5.4. Operation PostAASXPackage

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostAASXPackage

Explanation

Creates an AASX package at the server

semanticId

https://admin-shell.io/aas/API/PostAASXPackage/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIds

+

Included AAS Ids

+
+
+
+
+

Note: it is not mandatory for servers to read and parse AASX packages. Servers may simply store the AASX files with their related given aasIds.

+
+
+

no

Identifier

0..*

file

New AASX package

yes

AASX package

1

filename

Filename of the AASX package

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

packageId

New Package ID

yes

string

1

+
+
+

5.5.5. Operation PutAASXPackageById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutAASXPackageById

Explanation

Replaces the AASX package at the server

semanticId

https://admin-shell.io/aas/API/PutAASXPackageById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

packageId

Package ID from the package list

yes

string

1

aasIds

+

Included AAS Ids

+
+
+
+
+

Note: it is not mandatory for servers to read and parse AASX packages. Servers may simply store the AASX files with their related given aasIds.

+
+
+

no

Identifier

0..*

file

New AASX package

yes

AASX package

1

filename

Filename of the AASX package

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+

5.5.6. Operation DeleteAASXPackageById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteAASXPackageById

Explanation

Deletes a specific AASX package from the server

semanticId

https://admin-shell.io/aas/API/DeleteAASXPackageById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

packageId

Package ID from the package list

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+
+
+

6. Registration Interfaces

+
+
+

6.1. General

+
+

These interfaces allow to register and unregister descriptors of administration shells or submodels. The descriptors contain the information needed to access the interfaces (as described in Clause 5) of the corresponding element. This required information includes the endpoint in the dedicated environment.

+
+
+

Lookup interfaces provide access to the registered descriptors by identifiers (Asset Administration Shell and Submodel ID). These identifiers may be discovered through the interfaces described in Clause 8.

+
+
+
+

6.2. Asset Administration Shell Registry Interface and Operations

+
+

6.2.1. Asset Administration Shell Registry Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Asset Administration Shell Registry

Operation Name

Description

GetAllAssetAdministrationShellDescriptors

Returns all Asset Administration Shell Descriptors

GetAssetAdministrationShellDescriptorById

Returns a specific Asset Administration Shell Descriptor

PostAssetAdministrationShellDescriptor

Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS

PutAssetAdministrationShellDescriptorById

Replaces an existing Asset Administration Shell Descriptor, i.e. replaces registration information

DeleteAssetAdministrationShellDescriptorById

Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS

+
+
+

6.2.2. Operation GetAllAssetAdministrationShellDescriptors

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetAdministrationShellDescriptors

Explanation

Returns all Asset Administration Shell Descriptors

semanticId

https://admin-shell.io/aas/API/GetAllAssetAdministrationShellDescriptors/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

assetKind

The kind of the assets to retrieve (Type, Instance)

Yes

AssetKind

1

assetType

The type of the assets to retrieve, encoded as unique id

Yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

List of Asset Administration Shell Descriptors

no

AssetAdministrationShellDescriptor

1..*

+
+
+

6.2.3. Operation GetAssetAdministrationShellDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAssetAdministrationShellDescriptorById

Explanation

Returns a specific Asset Administration Shell Descriptor

semanticId

https://admin-shell.io/aas/API/GetAssetAdministrationShellDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIdentifier

The Asset Administration Shell’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Administration Shell Descriptor

yes

AssetAdministrationShellDescriptor

1

+
+
+

6.2.4. Operation PostAssetAdministrationShellDescriptor

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostAssetAdministrationShellDescriptor

Explanation

Creates a new Asset Administration Shell Descriptor, i.e. registers an AAS

semanticId

https://admin-shell.io/aas/API/PostAssetAdministrationShellDescriptor/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

shellDescriptor

Object containing the Asset Administration Shell’s identification and endpoint informationntaining the Asset Administration Shell’s identification and endpoint information

yes

AssetAdministrationShellDescriptor

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created Asset Administration Shell Descriptor

yes

AssetAdministrationShellDescriptor

1

+
+
+

6.2.5. Operation PutAssetAdministrationShellDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutAssetAdministrationShellDescriptorById

Explanation

Replaces an existing Asset Administration Shell Descriptor, i.e. replaces registration information

semanticId

https://admin-shell.io/aas/API/PutAssetAdministrationShellDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

shellDescriptor

Object containing the Asset Administration Shell’s identification and endpoint informationcontaining the Asset Administration Shell’s identification and endpoint information

yes

AssetAdministrationShellDescriptor

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced Asset Administration Shell Descriptor

yes

AssetAdministrationShellDescriptor

1

+
+
+

6.2.6. Operation DeleteAssetAdministrationShellDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteAssetAdministrationShellDescriptorById

Explanation

Deletes an Asset Administration Shell Descriptor, i.e. de-registers an AAS

semanticId

https://admin-shell.io/aas/API/DeleteAssetAdministrationShellDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIdentifier

The Asset Administration Shell’s unique id

yes

Identifer

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+

6.3. Submodel Registry Interface and Operations

+
+

6.3.1. Submodel Registry Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface:Submodel Registry

Operation Name

Description

GetAllSubmodelDescriptors

Returns all submodel descriptors

GetSubmodelDescriptorById

Returns a specific submodel descriptor

PostSubmodelDescriptor

Creates a new submodel descriptor, i.e. registers a submodel

PutSubmodelDescriptorById

Replaces an existing submodel descriptor, i.e. replaces registration information

DeleteSubmodelDescriptorById

Deletes a submodel descriptor, i.e. de-registers a submodel

+
+
+

6.3.2. Operation GetAllSubmodelDescriptors

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodelDescriptors

Explanation

Returns all submodel descriptors

semanticId

https://admin-shell.io/aas/API/GetAllSubmodelDescriptors/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

The maximum size of the result set

yes

StatusCode

1

payload

The position from which to resume a result listing

no

SubmodelDescriptor

1..*

+
+
+

6.3.3. Operation GetSubmodelDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSubmodelDescriptorById

Explanation

Returns a specific Submodel Descriptor

semanticId

https://admin-shell.io/aas/API/GetSubmodelDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodelIdentifier

The Submodel’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested submodel descriptor

yes

SubmodelDescriptor

1

+
+
+

6.3.4. Operation PostSubmodelDescriptor

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostSubmodelDescriptor

Explanation

Creates a new submodel descriptor, i.e. registers a submodel

semanticId

https://admin-shell.io/aas/API/PostSubmodelDescriptor/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodel
+Descriptor

Object containing the Submodel’s identification and endpoint information

yes

SubmodelDescriptor

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created submodel descriptor

yes

SubmodelDescriptor

1

+
+
+

6.3.5. Operation PutSubmodelDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutSubmodelDescriptorById

Explanation

Replaces an existing submodel descriptor, i.e. replaces registration information

semanticId

https://admin-shell.io/aas/API/PutSubmodelDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodel
+Descriptor

Object containing the Submodel’s identification and endpoint information

yes

SubmodelDescriptor

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced submodel descriptor

yes

SubmodelDescriptor

1

+
+
+

6.3.6. Operation DeleteSubmodelDescriptorById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteSubmodelDescriptorById

Explanation

Deletes a Submodel Descriptor, i.e. de-registers a submodel

semanticId

https://admin-shell.io/aas/API/DeleteSubmodelDescriptorById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodelIdentifier

The Submodel’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+
+
+

7. Repository Interfaces

+
+
+

7.1. General

+
+

These interfaces allow to manage Asset Administration Shells, Submodels, and Concept Descriptions. They further provide access to the data of these elements through interfaces described in Clause 5. A repository can host multiple entities. These entities can be stored in individual repositories of a decentral system. The endpoints of the entities managed by one repository shall be resolved by subsequent calls to discover (Clause 8) and lookup (Clause 6) interfaces to such decentralized systems.

+
+
+

Sometimes, these kinds of services are also classified as Asset Administration Shell management services.

+
+
+

The interfaces that provide access to the entities (Asset Administration Shells, Submodels, Concept Descriptions) themselves are convenience interfaces that provide access in a system where the services are managed by central repositories.

+
+
+
+

7.2. Asset Administration Shell Repository Interface and Operations

+
+

7.2.1. Asset Administration Shell Repository Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Asset Administration Shell Registry

Operation Name

Description

GetAllAssetAdministrationShells

Returns all Asset Administration Shells

GetAssetAdministrationShellById

Returns a specific Asset Administration Shell

GetAllAssetAdministrationShellsByAssetId

Returns all Asset Administration Shells that are linked to a globally unique asset identifier or to specific asset ids

GetAllAssetAdministrationShellsByIdShort

Returns all Asset Administration Shells with a specific idShort

PostAssetAdministrationShell

+

Creates a new Asset Administration Shell. The id of the new Asset Administration Shell must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

PutAssetAdministrationShellById

Replaces an existing Asset Administration Shell

DeleteAssetAdministrationShellById

Deletes an Asset Administration Shell

+
+
+

7.2.2. Operation GetAllAssetAdministrationShells

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetAdministrationShells

Explanation

Returns all Asset Administration Shells

semanticId

https://admin-shell.io/aas/API/GetAllAssetAdministrationShells/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

List of Asset Administration Shells

no

AssetAdministrationShell

1

+
+
+

7.2.3. Operation GetAssetAdministrationShellById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAssetAdministrationShellById

Explanation

Returns a specific Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/GetAssetAdministrationShellById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

id

The Asset Administration Shell’s unique id

yes

Identifier

1

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Administration Shell

yes

AssetAdministrationShell

1

+
+
+

7.2.4. Operation GetAllAssetAdministrationShellsByAssetId

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetAdministrationShellsByAssetId

Explanation

Returns all Asset Administration Shells that are linked to a globally unique asset identifier or to specific asset ids

semanticId

https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByAssetId/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

key

The key of the AssetId The name of the specific asset identifier or the predefined name “globalAssetId” that would refer to the AssetInformation/globalAssetId

yes

string

1

keyIdentifier

The key identifier object

yes

string

1

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

yes

nonNegativeInteger

1

cursor

The position from which to resume a result listing

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Administration Shells

no

AssetAdministrationShell

1..*

+
+
+

7.2.5. Operation GetAllAssetAdministrationShellsByIdShort

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetAdministrationShellsByIdShort

Explanation

Returns all Asset Administration Shells with a specific idShort

semanticId

https://admin-shell.io/aas/API/GetAllAssetAdministrationShellsByIdShort/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

idShort

The Asset Administration Shell’s idShort

yes

NameType

serializationModifier

Defines the format of the response

yes

SerializationModifier

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Asset Administration Shells

no

AssetAdministrationShell

1

+
+
+

7.2.6. Operation PostAssetAdministrationShell

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostAssetAdministrationShell

Explanation

+

Creates a new Asset Administration Shell. The id of the new Asset Administration Shell must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

semanticId

https://admin-shell.io/aas/API/PostAssetAdministrationShell/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aas

Asset Administration Shell object

yes

AssetAdministrationShell

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created Asset Administration Shell

yes

AssetAdministrationShell

1

+
+
+

7.2.7. Operation PutAssetAdministrationShellById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutAssetAdministrationShellById

Explanation

Replaces an existing Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/PutAssetAdministrationShellById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aas

Asset Administration Shell object

yes

AssetAdministrationShell

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced Asset Administration Shell

yes

AssetAdministrationShell

1

+
+
+

7.2.8. Operation DeleteAssetAdministrationShellById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteAssetAdministrationShellById

Explanation

Deletes an Asset Administration Shell

semanticId

https://admin-shell.io/aas/API/DeleteAssetAdministrationShellById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

id

The Asset Administration Shell’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+

7.3. Submodel Repository Interface and Operations

+
+

7.3.1. Submodel Repository Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Submodel Repository

Operation Name

Description

GetAllSubmodels

Returns all Submodels

GetSubmodelById

Returns a specific Submodel

GetAllSubmodelsBySemanticId

Returns all Submodels with a specific SemanticId

GetAllSubmodelsBySupplementalSemanticId

Returns all Submodels with a specific SupplementalSemanticId

GetAllSubmodelsByIdShort

Returns all Submodels with a specific idShort

PostSubmodel

+

Creates a new Submodel. The id of the new submodel must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

PutSubmodelById

Replaces an existing Submodel

PatchSubmodelById

Updates an existing submodel

DeleteSubmodelById

Deletes a Submodel

+
+
+

7.3.2. Operation GetAllSubmodels

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodels

Explanation

Returns all Submodels

semanticId

https://admin-shell.io/aas/API/GetAllSubmodels/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

List of Submodels

no

Submodel

1..*

+
+
+

7.3.3. Operation GetSubmodelById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSubmodelById

Explanation

Returns a specific Submodel

semanticId

https://admin-shell.io/aas/API/GetSubmodelById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

id

The Submodel’s unique id

yes

Identifier

1

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Submodel

yes

Submodel

1

+
+
+

7.3.4. Operation GetAllSubmodelsBySemanticId

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodelsBySemanticId

Explanation

Returns all Submodels with a specific SemanticId or SupplementalSemanticId. If either the semanticId fits to the input parameter or at least one of the SupplementalSemanticIds, the submodel is returned.

semanticId

https://admin-shell.io/aas/API/GetAllSubmodelsBySemanticId/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

semanticId

Identifier of the semantic definition

yes

Reference

1

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Submodels

no

Submodel

1..*

+
+
+

7.3.5. Operation GetAllSubmodelsByIdShort

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllSubmodelsByIdShort

Explanation

Returns all Submodels with a specific idShort

semanticId

https://admin-shell.io/aas/API/GetAllSubmodelsByIdShort/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

idShort

The Submodel’s idShort

yes

NameType

1

serializationModifier

Defines the format of the response

yes

SerializationModifier

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Submodels

no

Submodel

1..*

+
+
+

7.3.6. Operation PostSubmodel

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostSubmodel

Explanation

+

Creates a new Submodel. The id of the new submodel must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

semanticId

https://admin-shell.io/aas/API/PostSubmodel/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodel

Submodel object

yes

Submodel

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created Submodel

yes

Submodel

1

+
+
+

7.3.7. Operation PutSubmodelById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutSubmodelById

Explanation

Replaces an existing Submodel

semanticId

https://admin-shell.io/aas/API/PutSubmodelById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

submodel

Submodel object

yes

Submodel

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced Submodel

yes

Submodel

1

+
+
+

7.3.8. Operation PatchSubmodelById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PatchSubmodelById

Explanation

Updates an existing Submodel

semanticId

https://admin-shell.io/aas/API/PatchSubmodelById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

serializationModifier

+

Defines the format of the input

+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+

yes

SerializationModifier

1

submodel

Submodel object

yes

Submodel

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Updated submodel

yes

Submodel

1

+
+
+

7.3.9. Operation DeleteSubmodelById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteSubmodelById

Explanation

Deletes a Submodel

semanticId

https://admin-shell.io/aas/API/DeleteSubmodelById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

id

The Submodel’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+

7.4. Concept Description Repository Interface and Operations

+
+

7.4.1. Concept Description Repository Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Concept Description Repository

Operation Name

Description

GetAllConceptDescriptions

Returns all Concept Descriptions

GetConceptDescriptionById

Returns a specific Concept Description

GetAllConceptDescriptionsByIdShort

Returns all Concept Descriptions with a specific idShort

GetAllConceptDescriptionsByIsCaseOf

Returns all Concept Descriptions with a specific IsCaseOf-reference

GetAllConceptDescriptionsByDataSpecificationReference

Returns all Concept Descriptions with a specific dataSpecification reference

PostConceptDescription

+

Creates a new Concept Description. The id of the the new Concept Description must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

PutConceptDescriptionById

Replaces an existing Concept Description

DeleteConceptDescriptionById

Deletes a Concept Description

+
+
+

7.4.2. Operation GetAllConceptDescriptions

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllConceptDescriptions

Explanation

Returns all Concept Descriptions

semanticId

https://admin-shell.io/aas/API/GetAllConceptDescriptions/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

limit

The maximum size of the result set

No

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

String

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

List of Concept Descriptions

no

ConceptDescription

1..*

+
+
+

7.4.3. Operation GetConceptDescriptionById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetConceptDescriptionById

Explanation

Returns a specific Concept Description

semanticId

https://admin-shell.io/aas/API/GetConceptDescriptionById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

id

The Concept Description’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Concept Description

yes

ConceptDescription

1

+
+
+

7.4.4. Operation GetAllConceptDescriptionsByIdShort

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllConceptDescriptionsByIdShort

Explanation

Returns all Concept Descriptions with a specific idShort

semanticId

https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIdShort/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

idShort

The Concept Description’s idShort

yes

NameType

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Concept Descriptions

no

ConceptDescription

1..*

+
+
+

7.4.5. Operation GetAllConceptDescriptionsByIsCaseOf

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllConceptDescriptionsByIsCaseOf

Explanation

Returns all Concept Descriptions with a specific IsCaseOf reference

semanticId

https://admin-shell.io/aas/API/GetAllConceptDescriptionsByIsCaseOf/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

isCaseOf

IsCaseOf reference

yes

Reference

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Concept Descriptions

no

ConceptDescription

1..*

+
+
+

7.4.6. Operation GetAllConceptDescriptionsByDataSpecificationReference

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllConceptDescriptionsByDataSpecificationReference

Explanation

Returns all Concept Descriptions with a specific dataSpecification reference

semanticId

https://admin-shell.io/aas/API/GetAllConceptDescriptionsByDataSpecificationReference/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

dataSpecification-Reference

DataSpecification reference

yes

Reference

1

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Requested Concept Descriptions

no

ConceptDescription

1..*

+
+
+

7.4.7. Operation PostConceptDescription

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostConceptDescription

Explanation

+

Creates a new Concept Description. The id of the new Concept Description must be set in the payload.

+
+
+
+
+

Note: the creation of the idShort is out of scope and must be handled in a proprietary way.

+
+
+

semanticId

https://admin-shell.io/aas/API/PostConceptDescription/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

conceptDescription

Concept Description object

yes

ConceptDescription

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Created Concept Description

yes

ConceptDescription

1

+
+
+

7.4.8. Operation PutConceptDescriptionById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PutConceptDescriptionById

Explanation

Replaces an existing Concept Description

semanticId

https://admin-shell.io/aas/API/PutConceptDescriptionById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

conceptDescription

Concept Description object

yes

ConceptDescription

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Replaced Concept Description

yes

ConceptDescription

1

+
+
+

7.4.9. Operation DeleteConceptDescriptionById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteConceptDescriptionById

Explanation

Deletes a Concept Description

semanticId

https://admin-shell.io/aas/API/DeleteConceptDescriptionById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

cdIdentifier

The Concept Description’s unique id

yes

Identifier

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+
+
+

8. Publish and Discovery Interfaces

+
+
+

8.1. General

+
+

These interfaces allow to publish information about Asset Administration Shells that enable a search for asset IDs of the corresponding Asset Administration Shells in a subsequent discovery interface call.

+
+
+
+

8.2. Asset Administration Shell Basic Discovery Interface and Operations

+
+

8.2.1. Asset Administration Shell Basic Discovery Interface

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface: Asset Administration Shell Basic Discovery

Operation Name

Description

GetAllAssetAdministrationShellIdsByAssetLink

Returns a list of Asset Administration Shell ids based on asset identifier key-value-pairs

GetAllAssetLinksById

Returns a list of asset identifier key-value-pairs based on a given Asset Administration Shell id

PostAllAssetLinksById

Creates or replaces all asset identifier key-value-pairs linked to an Asset Administration Shell to edit discoverable content

DeleteAllAssetLinksById

Deletes all asset identifier key-value-pair linked to an Asset Administration Shell

+
+
+ + ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetAdministrationShellIdsByAssetLink

Explanation

Returns a list of Asset Administration Shell ids based on asset identifier key-value-pairs

semanticId

https://admin-shell.io/aas/API/GetAllAssetAdministrationShellIdsByAssetLink/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

assetIds

+

The specific assetId of an asset identifier, which could be the globalAssetId or specificAssetIds.

+
+
+
+
+

Note: The key of the asset identifier key-value-pair for the globalAssetId is defined in Clause 4.5. It is the predefined key “globalAssetId” that would refer to the AssetInformation/globalAssetId.

+
+
+

yes

SpecificAssetId

1..*

limit

The maximum size of the result set

no

nonNegativeInteger

1

cursor

The position from which to resume a result listing

no

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Identifiers of all Asset Administration Shells which contain all asset identifier key-value-pairs in their asset information, i.e. AND-match of key-value-pairs per Asset Administration Shell

yes

Identifier

1..*

+
+
+

8.2.3. Operation GetAllAssetLinksById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetAllAssetLinksById

Explanation

Returns a list of asset identifier key-value-pairs based on an Asset Administration Shell id to edit discoverable content

semanticId

https://admin-shell.io/aas/API/GetAllAssetLinksById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIdentifier

The Asset Administration Shell’s unique id

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

+

Requested asset identifier, which could be the globalAssetId or specificAssetIds.

+
+
+
+
+

Note: the name of the SpecificAssetId for the globalAssetId is defined in Clause 4.5. It is the predefined name “globalAssetId” that would refer to the AssetInformation/globalAssetId.

+
+
+

no

SpecificAssetId

1..*

+
+
+

8.2.4. Operation PostAllAssetLinksById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

PostAllAssetLinksById

Explanation

Creates new asset identifier key-value-pairs linked to an Asset Administration Shell for discoverable content. The existing content might have to be deleted first.

semanticId

https://admin-shell.io/aas/API/PostAllAssetLinksById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIdentifier

The Asset Administration Shell’s unique id

yes

string

1

assetLinks

+

Asset identifier, which could be the globalAssetId or specificAssetIds.

+
+
+
+
+

Note: the name for the globalAssetId is defined in Clause 4.5. It is the predefined key “globalAssetId” that would refer to the AssetInformation/globalAssetId.

+
+
+

yes

SpecificAssetId

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

payload

Asset identifier created successfully

yes

SpecificAssetId

1

+
+
+

8.2.5. Operation DeleteAllAssetLinksById

+ ++++ + + + + + + + + + + + + + + +

Operation Name

DeleteAllAssetLinksById

Explanation

Deletes all asset identifier key-value-pairs linked to an Asset Administration Shell to edit discoverable content

semanticId

https://admin-shell.io/aas/API/DeleteAllAssetLinksById/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

aasIdentifier

The Asset Administration Shell’s unique id

yes

string

1

Output Parameter

statusCode

Status code

yes

StatusCode

1

+
+
+
+
+
+

9. Self Description Interface

+
+
+

9.1. Self-Description Interface

+ ++++ + + + + + + + + + + + + + + + +
Interface: Self-Description

Operation Name

Description

GetSelfDescription

Returns a description object containing the capabilities and supported features of the server.

+
+
+

9.2. Operation GetSelfDescription

+ ++++ + + + + + + + + + + + + + + +

Operation Name

GetSelfDescription

Explanation

Returns a description object containing the capabilities and supported features of the server.

semanticId

https://admin-shell.io/aas/API/GetSelfDescription/3/0

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Output Parameter

statusCode

Status code

yes

StatusCode

1

description

Key-value-pairs that describe the capabilities of the providing server

yes

ServiceDescription

1

+
+
+
+

Note 1: a server implementing more than one service specification profile, e.g. hosting a repository and a registry at the same time, adds both ServiceSpecificationProfileEnum items in the profiles list.

+
+
+
+
+
+
+

Note 2: a profile value must only be used if the related API is implemented at the path where the API Operation “GetDescription” is published, or child paths.

+
+
+
+
+
+
+
+

10. Data Types for Payload

+
+
+

10.1. General

+
+

For metamodel elements like AssetAdministrationShell, Submodel, Identifier, etc. that are specified in Part 1 [1], please refer to the specification in Bibliography. The AAS package format and the AAS Package type are defined in Part 5 [3]. This clause only defines additional classes that are needed for communication with the API.

+
+
+
+

10.2. Metamodel Specification Details

+
+

The following type definitions are used to describe specific metamodel elements like Asset Administration Shells and submodels regarding their network and deployment configuration. They use certain attributes copied from the model element itself to describe it – hence the name Descriptor.

+
+
+

10.2.1. Descriptor

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

Descriptor

Explanation

The self-describing information of a network resource. This class is not part of the metamodel.

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/Descriptor/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

description

+

Description or comments on the element

+
+
+

The description can be provided in several languages

+

MultiLanguageTextType

0..1

displayName

Display name; can be provided in several languages

MultiLanguageNameType

0..1

extension

An extension of the element

Extension

0..*

+
+
+

10.2.2. AssetAdministrationShellDescriptor

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

AssetAdministrationShellDescriptor

Explanation

Descriptor of an Asset Administration Shell

Inherits from

Descriptor

semanticId

https://admin-shell.io/aas/API/DataTypes/AssetAdministrationShellDescriptor/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

administration

Administrative information of the Asset Administration Shell

AdministrativeInformation

0..1

assetKind

Denotes whether the asset of the described Asset Administration Shell is of kind “Type” or “Instance”

AssetKind

0..1

assetType

The type of the asset described by the Asset Administration Shell of this Descriptor. See AssetInformation/assetType for further information.

Identifier

0..1

endpoint

Endpoint of the network resource

Endpoint

0..*

globalAssetId

Global reference to the asset the AAS is representing

Identifier

0..1

idShort

Short name of the Asset Administration Shell

NameType

0..1

id

Globally unique identification of the Asset Administration Shell

Identifier

1

specificAssetId

Specific asset identifier

SpecificAssetId

0..*

submodelDescriptor

Descriptor of a submodel of the Asset Administration Shell

SubmodelDescriptor

0..*

+
+
+
+

Note: the cardinality restriction for AssetAdministrationShellDescriptor/endpoint (optional: 0..*) allows a provider to skip the declaration of the location of an AssetAdministrationShell and directly point to the endpoints of the contained Submodels through the path AssetAdministrationShellDescriptor/submodelDescriptor→ SubmodelDescriptor/endpoint. A client, therefore, might decide to skip the lookup on the AssetAdministrationShell. Nevertheless, in case the information contained in the AssetAdministrationShellDescriptor deviates from the related AssetAdministrationShell, or attributes are missing, the AssetAdministrationShell is always the source of truth.

+
+
+
+
+
+

10.2.3. SubmodelDescriptor

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

SubmodelDescriptor

Explanation

A descriptor of a submodel

Inherits from

Descriptor

semanticId

https://admin-shell.io/aas/API/DataTypes/SubmodelDescriptor/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

administration

Administrative information of the Submodel

AdministrativeInformation

0..1

endpoint

Endpoint of the network resource

Endpoint

1..*

idShort

Short name of the Submodel

NameType

0..1

id

Globally unique identification of the Submodel

Identifier

1

semanticId

Identifier of the semantic definition of the Submodel

Reference

0..1

supplementalSemanticId

Identifier of a supplemental semantic definition of the element called supplemental semantic ID of the element

Reference

0..*

+
+
+

10.2.4. Endpoint

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

Endpoint

Explanation

The endpoint description of a network resource. This class is not part of the metamodel.

Inherits from

-

semanticId

https://admin-shell.io/aas/API/DataTypes/Endpoint/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

protocolInformation

Protocol information of the network resource endpoint

ProtocolInformation

1

interface

Name of the offered interface at the endpoint

IdShortType

1

+
+

The following names will be used for the interfaces:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interfaceinterface-shortName

Asset Administration Shell Interface

AAS

Submodel Interface

SUBMODEL

Serialization Interface

SERIALIZE

AASX File Server Interface

AASX-FILE

Asset Administration Shell Registry Interface

AAS-REGISTRY

Submodel Registry Interface

SUBMODEL-REGISTRY

Asset Administration Shell Repository Interface

AAS-REPOSITORY

Submodel Repository Interface

SUBMODEL-REPOSITORY

Concept Description Repository Interface

CD-REPOSITORY

Asset Administration Shell Basic Discovery Interface

AAS-DISCOVERY

+
+

The value for the interface attribute is “{interface-shortName}-{interface-version}”.

+
+
+

The interface-version of this specification is “3.0”, e.g. the entry for the Asset Administration Shell Interface is “AAS-3.0”.

+
+
+

See the following example for a descriptor with several endpoints:

+
+
+

image5

+
+
+
+

10.2.5. ProtocolInformation

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

ProtocolInformation

Explanation

+

The protocol information of a network resource endpoint will be defined in DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel.

+
+
+

The information in this table is a 1:1 copy from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group.

+

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/ProtocolInformation/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

href

The endpoint address as an URL

String 2048

1

endpointProtocol

Either scheme of endpointAdress or scheme + further information. Scheme denotes the highest level of doubtless transmission.

IdShortType

0..1

endpointProtocolVersion

Array of strings, each entry represents one supported version at this very endpoint, the entry shall be formatted according to the regulations of the protocol specified in the href

IdShortType

0..*

subprotocol

Allows for referencing sub-protocols that may be used in the context of that endpoint e.g. “OPC Basic SOAP” or UA Binary

IdShortType

0..1

subprotocolBody

If the sub-protocol field is present, a subprotocolBody might be given to hold extra information, e.g. node and namespace in an OPC UA server

IdShortType

0..1

subprotocolBodyEncoding

If subprotocolBody is present, the encoding might be explicitly defined, otherwise it shall default to subprotocols encoding scheme

IdShortType

0..1

securityAttributes

+

Array of securityAttribute objects, each attribute has 3 properties:

+
+
+

\{ type = Enum security type or standard:

+
+
+
    +
  • +

    ‘NONE’,

    +
  • +
  • +

    'RFC_TLSA' - TLSA according to rfc6698

    +
  • +
  • +

    'W3C_DID' - W3C DID document ,

    +
  • +
+
+
+

key = security attribute key according to standard definitions of the security type,

+
+
+

value = security attribute value e.g. DANE TLSA Ressource Record }

+
+
+

The securityAttribute objects are treated as possible alternatives (logical “or”)

+

SecurityAttributeObject

1..*

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

SecurityAttributeObject

Explanation

+

Security attributes as defined by DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel.

+
+
+

The information in this table is derived from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group.

+

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/SecurityAttributeObject/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

type

Enum security type or standard

SecurityTypeEnum

1

key

Security attribute key according to standard definitions of the security type

string

1

value

Security attribute value e.g. DANE TLSA Ressource Record

string

1

+ ++++ + + + + + + + + + + + + + + +

Enumeration

SecurityTypeEnum

Explanation

+

The security types as defined by DIN SPEC 16593-2. After the release of DIN SPEC 16593-2, any required updates will be made. This class is not part of the metamodel.

+
+
+

The information in this table is derived from DIN SPEC 16593-2. Required changes need to be made by the related DIN working group.

+

semanticId

https://admin-shell.io/aas/API/DataTypes/ SecurityTypeEnum/3/0

+ ++++ + + + + + + + + + + + + + + + + + + + + +
LiteralExplanation

NONE

No predefined security type available

RFC_TLSA

TLSA according to RFC 6698

W3C_DID

Decentralized Identifiers according to the W3C Recommendation [7]

+
+
+

10.2.6. ServiceDescription

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

ServiceDescription

Explanation

+

The self-describing information of an API Implementation. It enables servers to present their capabilities to the clients, in particular which profiles they implement. At least one defined profile is required. Additional, proprietary attributes might be included. Nevertheless, the server must not expect that a regular client understands them.

+
+
+

This class is not part of the metamodel.

+

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/ServiceDescription/3/0

+ ++++++ + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

profiles

List of implemented server specification profiles.

ServiceSpecificationProfileEnum

1..*

+ ++++ + + + + + + + + + + + + + + +

Enumeration

ServiceSpecificationProfileEnum

Explanation

The identifiers of the standardized service specification profiles. See also clause 12.12 for further details.

semanticId

https://admin-shell.io/aas/API/DataTypes/ ServiceSpecificationProfileEnum/3/0

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LiteralExplanation

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001

Indicates that the server implemented all features of the Asset Administration Shell Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002

Indicates that the server implemented all features of the Asset Administration Shell Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001

Indicates that the server implemented all features of the Submodel Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002

Indicates that the server implemented all features of the Submodel Service Specification Value Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003

Indicates that the server implemented all features of the Submodel Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001

Indicates that the server implemented all details of the AASX File Server Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-001

Indicates that the server implemented all details of the Registry Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-002

Indicates that the server implemented all details of the Asset Administration Shell Registry Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-003

Indicates that the server implemented all details of the Asset Administration Shell Registry Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-004

Indicates that the server implemented all details of the Submodel Registry Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RegistryServiceSpecification/SSP-005

Indicates that the server implemented all details of the Submodel Registry Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001

Indicates that the server implemented all details of the Discovery Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RepositoryServiceSpecification/SSP-001

Indicates that the server implemented all details of the Repository Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/RepositoryServiceSpecification/SSP-002

Indicates that the server implemented all details of the Repository Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001

Indicates that the server implemented all details of the Asset Administration Shell Repository Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002

Indicates that the server implemented all details of the Asset Administration Shell Repository Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-001

Indicates that the server implemented all details of the Submodel Service Specification Full Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-002

Indicates that the server implemented all details of the Submodel Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-003

Indicates that the server implemented all details of the Submodel Service Specification Read Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/SubmodelRepositoryServiceSpecification/SSP-004

Indicates that the server implemented all details of the Submodel Service Specification Template Profile in version 3.0.

https://admin-shell.io/aas/API/3/0/ConceptDescriptionServiceSpecification/SSP-001

Indicates that the server implemented all details of the Concept Description Service Specification Read Template Profile in version 3.0.

+
+

An example ServiceDescription object might look like the following, indicating that the server supports two profiles at the same time (see Clause 12.12.3 for further details on service specifications and profiles):

+
+
+

image6

+
+
+
+

10.2.7. Simple Data Types

+
+

All simple data types from Part 1 [1] apply also to the specifications described in this document. Additional data types are defined in Table 2.

+
+ + +++++ + + + + + + + + + + + + + + +
Table 2. Simple Data Types used for API-specific Classes
PrimitiveDefinitionValue Examples

NonNegativeInteger

The nonNegativeInteger datatype as defined by XML Schema Part 2 in version 1.0 [1]

+

0

+
+
+

42

+
+
+
+

10.2.8. Primitive Data Types

+
+

All primitive data types from Part 1 version 3.0 apply also to the specifications described in this document. All constraints and spelling patterns apply as well. In addition, the following data types are defined.

+
+ + +++++ + + + + + + + + + + + + + + + + + + + +
Table 3. Primitive Data Types used for the API-specific Classes
PrimitiveDefinitionValue Examples

CodeType

string with max 32 and min 1 characters

+

“409”

+
+
+

“Bad_UserAccessDenied”

+

ShortIdType

+

same as NameType

+
+
+
+
+

Note: ShortIdType is not the data type of idShort attributes but for IDs which shall be shorter than the identifier type.

+
+
+
+

“02063059-b81c-482b-97d1-d29cbe382ef6”

+
+
+

“my-random-id”

+
+
+
+

10.2.9. Status Code, Error Handling & Result Messages

+
+

This clause deals with the error and result handling of an operation’s execution in a technology-independent manner.

+
+
+

The first clause covers generic status codes that are returned on each request, independent of the operation’s success or failure. The subsequent clause describes the result object that is returned in case of failure.

+
+
+
Generic Status Codes
+
+

Successful operations return one of the success status codes and their respective payload. Unsuccessful operations return one of the failure status codes and a result object as defined in Clause 0.

+
+
+

Table 4 shows generic status codes returned to the requester. Additionally, the table indicates whether a specific status code comes with a result object in the returned payload.

+
+ + +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4. Status Codes
Generic Status CodeMeaningHas Result Object

Success

Success

No

SuccessCreated

Successful creation of a new resource

No

SuccessAccepted

The reception of the request was successful

No

SuccessNoContent

Success with explicitly no content in the payload

No

ClientErrorBadRequest

Bad or malformed request

Yes

ClientNotAuthorized

Wrong or missing authorization credentials

Yes

ClientForbidden

Authorization has been refused

Yes

ClientMethodNotAllowed

Operation request is not allowed

Yes

ClientErrorResourceNotFound

Resource not found

Yes

ClientResourceConflict

Conflict-creating resource (resource already exists)

Yes

ServerInternalError

Unexpected error

Yes

ServerErrorBadGateway

Bad gateway

Yes

+
+
+
General Result Object
+
+

In case of a failed operation execution, a result object shall be returned containing more information about the reasons why the operation failed to execute.

+
+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

Result

Explanation

The result object

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/Result/3/0

+ ++++++ + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

message

Additional message containing information for the requester

Message

0..*

+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

Message

Explanation

A message containing more information for the requester about a certain happening in the backend

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/Message/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

messageType

The message type

MessageTypeEnum

1

text

The message text

string

1

code

Technology-dependent status or error code

CodeType

0..1

correlationId

Identifier to relate several result messages throughout several systems

ShortIdType

0..1

timestamp

Timestamp of the message

dateTime

0..1

+ ++++ + + + + + + + + + + + + + + +

Enumeration

MessageTypeEnum

Explanation

The message type

semanticId

https://admin-shell.io/aas/API/DataTypes/MessageTypeEnum/3/0

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + +
LiteralExplanation

Info

Used to inform the user about a certain fact

Warning

Used for warnings; warnings may lead to errors in the subsequent execution

Error

Used for handling errors

Exception

Used in case of an internal and/or unhandled exception

+
+
+
Operation Objects
+
+

The following type definitions are used to call and handle the requests and responses while performing synchronous or asynchronous operation invocation.

+
+
+
OperationRequest
+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

OperationRequest

Explanation

The operation request object

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/OperationRequest/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

inputArguments

Input argument

OperationVariable

0..*

inoutputArguments

InOutput argument

OperationVariable

0..*

clientTimeoutDuration

Duration indicating when the client expects the server to have finished execution of the invoked operation

duration

0..1

+
+
+
OperationResult
+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

OperationResult

Explanation

The operation’s invocation result object

Inherits from

Result

semanticId

https://admin-shell.io/aas/API/DataTypes/OperationResult/3/0

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Attribute
+(
= mandatory)*
ExplanationTypeCard.

outputArguments

Output argument

OperationVariable

0..*

inoutputArguments

InOutput argument

OperationVariable

0..*

executionState

Execution state

ExecutionState

1

success

Flag indicating whether the business operation behind the operation was successful (true) or not (false)

boolean

0..1

+
+
+
Enumeration ExecutionState
+ ++++ + + + + + + + + + + + + + + +

Enumeration

ExecutionState

Explanation

The operation’s invocation result state

semanticId

https://admin-shell.io/aas/API/DataTypes/ExecutionState/3/0

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LiteralExplanation

Initiated

The operation is ready to be executed (initial state)

Running

The operation is running

Completed

The operation is completed

Canceled

The operation was cancelled externally

Failed

The operation failed

Timeout

The operation has timed out due to given client or server timeout

+
+
+
OperationHandle
+ ++++ + + + + + + + + + + + + + + + + + + +

Class Name

OperationHandle

Explanation

The returned handle of an operation’s asynchronous invocation used to request the current state of the operation’s execution

Inherits from

 — 

semanticId

https://admin-shell.io/aas/API/DataTypes/OperationHandle/3/0

+ ++++++ + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

handleId

Handle id

ShortIdType

1

+
+
+
+
+

10.2.10. File Content

+
+

The “File Content” type of the operations mentioned above is seen as “arbitrary binary data” according to RFC 2046 and is as such defined as byte-array in UTF8-encoding. If a content type is required, “application/octet-stream” must be used as defined in RFC 2046.

+
+
+
+
+
+
+

11. Basic Operation Parameters

+
+
+

11.1. General

+
+

This clause specifies the parameters for API operations.

+
+
+
+

11.2. SerializationModifiers in Operations

+
+

Definition

+
+
+

For GET operations, a SerializationModifier indicates the requester’s expected or desired response content. For PUT and PATCH operations, a SerializationModifier indicates the input content. The SerializationModifier comprises three orthogonal enumerations. When combined, these enumerations influence the input or response content of the requested operation.

+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+
+
+
    +
  1. +

    Enumeration: Level

    +
  2. +
+
+
+

The first enumeration Level indicates the depth of the structure of the response or input content.

+
+ + ++++ + + + + + + + + + + + + + + + + +
Table 5. Level Parameters
ValueExplanation

Deep (Default)

All elements of a requested hierarchy level and all children on all sublevels are returned. Children in this sense are SubmodelElements which are contained at the ‘submodelElements’ field of Submodels, the ‘value’ field of SubmodelElementCollections or SubmodelElementLists, the ‘statements’ field of Entities, or the ‘annotations’ field of AnnotatedRelationshipElements.

Core

Only elements of a requested hierarchy level as well as direct children are returned. By this, a client can iterate the hierarchy step by step.

+
+
+
+

Note: level parameters are mapped to the query parameter “?level” in the HTTP/REST APIs, see also Clause 12.8.

+
+
+
+
+
    +
  1. +

    Enumeration: Content

    +
  2. +
+
+
+

The second enumeration Content indicates the kind of serialization of the response or input content.

+
+
+

For Content equal to Value see Clause 0 for details.

+
+ + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 6. Content Parameters
ValueExplanation

Normal (Default)

The standard serialization of the model element or child elements is applied.

Metadata

Only metadata of an element or child elements is returned; the value is not .

Value

Only the raw value of the model element or child elements is returned; it is commonly referred to as ValueOnly-serialization.

Reference

Only applicable to Referables. Only the reference to the found element is returned; potential child elements are ignored.

Path

Returns the idShort of the requested element and a list of idShort paths to child elements if the requested element is a Submodel, a SubmodelElementCollection, a SubmodelElementList, a AnnotatedRelationshipElement, or an Entity.

+
+
+
+

Note: level parameters are mapped to path suffixes “/$<content>” in the HTTP/REST APIs, see also Clause 12.8.

+
+
+
+
+
    +
  1. +

    Enumeration: Extent

    +
  2. +
+
+
+

The third enumeration Extent indicates to which extent the response or input content is being serialized. At this stage, the listed values could also be represented as binary values on BLOB-elements. They are, however, kept as generic extent values for the sake of extension.

+
+ + ++++ + + + + + + + + + + + + + + + + +
Table 7. Extent Parameters
ValueExplanation

WithoutBLOBValue (Default)

Only applicable to BLOB-elements; the BLOB content is not returned.

WithBLOBValue

Only applicable to BLOB-elements; the BLOB content is returned as base64-encoded string.

+
+
+
+

Note: level parameters are mapped to the query parameter “?extent” in the HTTP/REST APIs, see also Clause 12.8.

+
+
+
+
+
+

11.3. Applicability of SerializationModifiers

+
+

The defined SerializationModifiers are only valid for specific operations due to their generic nature. Also, the applicability depends on the kind of the accessed resource. The following list defines the applicability of the modifiers to the resources.

+
+
+

GET and PATCH operations may combine all SerializationModifiers as listed below. PUT operations may only use the Extent Modifier. POST operations do not use SerializationModifiers.

+
+ + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 8. Applicability of SerializationModifiers
Resource NameLevel ModifierContent ModifierExtent Modifier

Asset Administration Shell

No

Normal/Reference

No

Submodel Reference

No

No

No

Submodel

Deep/Core

Normal/
+Metadata/Value/Reference/Path

+

WithoutBLOBValue/

+
+
+

WithBLOBValue

+

SubmodelElements

SubmodelElementCollection

Deep/Core

Normal/ Metadata/Value/Reference/Path

+

WithoutBLOBValue/

+
+
+

WithBLOBValue

+

SubmodelElementList

Deep/Core

Normal/ Metadata/Value/Reference/Path

+

WithoutBLOBValue/

+
+
+

WithBLOBValue

+

Entity

Deep/Core

Normal/ Metadata/Value/Reference/Path

+

WithoutBLOBValue/

+
+
+

WithBLOBValue

+

BasicEventElement

No

Normal/
+Metadata/Value/Reference

No

Capability

No

Normal/Reference

No

Operation

No

Normal/Reference

No

DataElements

Property

No

Normal/ Metadata/Value/Reference

No

MultilanguageProperty

No

Normal/ Metadata/Value/Reference

No

Range

No

Normal/ Metadata/Value/Reference

No

ReferenceElement

No

Normal/ Metadata/Value/Reference

No

RelationshipElement

No

Normal/ Metadata/Value/Reference

No

AnnotatedRelationshipElement

No

Normal/ Metadata/Value/Reference

No

Blob

No

Normal/ Metadata/Value/Reference

+

WithoutBLOBValue/

+
+
+

WithBLOBValue

+

File

No

Normal/ Metadata/Value/Reference

No

+
+
+
+

Note: EventPayload defines the necessary information of an event instance sent out or received. It is, however not part of the AAS and submodel hierarchical structure.

+
+
+
+
+
+

11.4. Serialization in Specified Formats (SerializationModifier Content)

+
+

11.4.1. General

+
+

If the SerializationModifier Content is set to Value, the ValueOnly-Serialization is used as described below.

+
+
+
+
+

Note: to date, only the serialization in JSON has been specified. Other serialization formats (e.g. XML, RDF, etc.) will be defined in future versions of this document.

+
+
+
+
+
+

11.4.2. ValueOnly-Serialization in JSON

+
+
+
+

Note: this clause explains how to return the submodel element’s value only if the SerializationModifier Content is set to Value.

+
+
+
+
+

In many cases, applications using data from Asset Administration Shells already know the Submodel regarding its structure, attributes, and semantics. Consequently, there is not always a need to receive the entire model information, which can be requested separately via Content modifier set to Metadata, in each request since it is constant most of the time. Instead, applications are most likely only interested in the values of the modelled data. Furthermore, having limited processing power or limited bandwidth, one use case of this SerializationModifier is to transfer data as efficiently as possible. Semantics and data might be split into two separate architecture building blocks. For example, a database would suit the needs for querying semantics, while a device would only provide the data at runtime. Two separate requests make it possible to build up a user interface (UI) and show new upcoming values highly efficiently.

+
+
+

Values are only available for

+
+
+
    +
  • +

    All subtypes of abstract type DataElement,

    +
  • +
  • +

    SubmodelElementList and SubmodelElementCollection resp. for their included SubmodelElements,

    +
  • +
  • +

    ReferenceElement,

    +
  • +
  • +

    RelationshipElement + AnnotatedRelationshipElement,

    +
  • +
  • +

    Entity,

    +
  • +
  • +

    BasicEventElement.

    +
  • +
+
+
+

Capabilities are excluded from the SerializationModifier’s scope since only data containing elements are in the focus. They are consequently omitted in the serialization.

+
+
+

The following rules shall be adhered to when serializing a submodel with the SerializationModifier Value:

+
+
+
    +
  • +

    A submodel is serialized as an unnamed JSON object.

    +
  • +
  • +

    A submodel element is considered a leaf submodel element if it does not contain other submodel elements. A leaf submodel element follows the rules for the different submodel elements considered in the serialization, as described below. If it is not a leaf element, the serialization rules must be transitively followed until the value is a leaf submodel element.

    +
  • +
  • +

    For each submodel element:

    +
    +
      +
    • +

      Property is serialized as $\{Property/idShort}: $\{Property/value} where $\{Property/value} is the JSON serialization of the respective property’s value in accordance with the data type to value mapping (see table after this section).

      +
    • +
    • +

      MultiLanguageProperty is serialized as named JSON object with $\{MultiLanguageProperty/idShort} as the name of the containing JSON property. The JSON object contains an array of JSON objects for each language of the MultiLanguageProperty with the language as name and the corresponding localized string as value of the respective JSON property. The language name is defined as two chars according to ISO 639-1.

      +
    • +
    • +

      Range is serialized as named JSON object with $\{Range/idShort} as the name of the containing JSON property. The JSON object contains two JSON properties. The first is named “min”. The second is named “max”. Their corresponding values are $\{Range/min} and $\{Range/max}.

      +
    • +
    • +

      File and Blob are serialized as named JSON objects with $\{File/idShort} or $\{Blob/idShort}as the name of the containing JSON property. The JSON object contains two JSON properties. The first refers to the content type named $\{File/contentType} resp. $\{Blob/contentType}. The latter refers to the value named “value” $\{File/value} resp. $\{Blob/value}. The resulting ValueOnly object is indistinguishable whether it contains File or Blob attributes. Therefore, the receiver needs to take the type of the target resource into account. Since the receiver knows in advance if a File or a Blob SubmodelElement shall be manipulated, it can parse the transferred ValueOnly object accordingly as a File or Blob object.

      +
    • +
    • +

      SubmodelElementCollection is serialized as named JSON object with $\{SubmodelElementCollection/idShort} as the name of the containing JSON property. The elements contained within the struct are serialized according to their respective type with $\{SubmodelElement/idShort} as the name of the containing JSON property.

      +
    • +
    • +

      SubmodelElementList is serialized as a JSON array with the index of the contained SubmodelElement in the list as the position in the JSON array. The elements contained within the list are serialized according to their respective type.

      +
    • +
    • +

      ReferenceElement is serialized as $\{ReferenceElement/idShort}: $\{ReferenceElement/value} where $\{ReferenceElement/value} is the serialization of the Reference class.

      +
    • +
    • +

      RelationshipElement is serialized as named JSON object with $\{RelationshipElement/idShort} as the name of the containing JSON property. The JSON object contains two JSON properties. The first is named “first”. The second is named “second”. Their corresponding values are $\{RelationshipElement/first} resp. $\{Relationship/second}. The values are serialized according to the serialization of a ReferenceElement (see above).

      +
    • +
    • +

      AnnotatedRelationshipElement is serialized according to the serialization of a ReleationshipElement (see above). Additionally, a third named JSON object is introduced with “annotations” as the name of the containing JSON property. The value is $\{AnnotatedRelationshipElement/annotations}. The values of the array items are serialized depending on the type of the annotation data element.

      +
    • +
    • +

      Entity is serialized as named JSON object with $\{Entity/idShort} as the name of the containing JSON property. The JSON object contains three JSON properties. The first is named “statements” $\{Entity/statements} and contains an array of the serialized submodel elements according to their respective serialization mentioned in this clause. The second is named either “globalAssetId” or “specificAssetId” and contains either a Reference (see above) or a SpecificAssetId. The third property is named “entityType” and contains a string representation of $\{Entity/entityType}.

      +
    • +
    • +

      BasicEventElement is serialized as named JSON object with $\{BasicEventElement/idShort} as the name of the containing JSON property. The JSON object contains one JSON property named “observed” with the corresponding value of $\{BasicEventElement/observed} as the standard serialization of the Reference class.

      +
    • +
    • +

      SpecificAssetId is serialized as named JSON object with three JSON properties named as the attributes of SpecificAssetId.

      +
    • +
    +
    +
  • +
  • +

    Submodel elements defined in the submodel other than the ones mentioned above are not subject to serialization of that SerializationModifier.

    +
  • +
+
+
+

Data type to value mapping [2]

+
+
+

The serialization of submodel element values is described in the following table. The left column “Data Type” shows the data types which can be used for submodel element values. The data types are defined according to the W3C XML Schema (https://www.w3.org/TR/xmlschema-2/#built-in-datatypes and https://www.w3.org/TR/xmlschema-2/#built-in-derived). “Value Range” further explains the possible range of data values for this data type. The right column comprises related examples of the serialization of submodel element values.

+
+ + +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 9. Mapping of Data Types in ValueOnly-Serialization
Data TypeJSON TypeValue RangeSample Values

Core Types

xs:string

string

Character string

"Hello world", "Καλημέρα κόσμε", "コンニチハ"

xs:boolean

boolean

true, false

true, false

xs:decimal

number

Arbitrary-precision decimal numbers

-1.23, 126789672374892739424.543233, 100000.00, 210

xs:integer

number

Arbitrary-size integer numbers

-1, 0, 126789675432332938792837429837429837429, 100000

IEEE-floating-point numbers

xs:double

number

64-bit floating point numbers

-1.0, -0.0, 0.0, 234.567e8, 234.567e+8, 234.567e-8

xs:float

number

32-bit floating point numbers

-1.0, -0.0, 0.0, 234.567e8, 234.567e+8, 234.567e-8

Time and data

xs:date

string

Dates (yyyy-mm-dd) with or without time zone

"2000-01-01","2000-01-01Z", "2000-01-01+12:05"

xs:time

string

Times (hh:mm:ss.sss…​) with or without time zone

"14:23:00", "14:23:00.527634Z", "14:23:00+03:00"

xs:dateTime

string

Date and time with or without time zone

"2000-01-01T14:23:00", "2000-01-01T14:23:00.66372+14:00"

xs:dateTimeStamp

string

Date and time with required time zone

"2000-01-01T14:23:00.66372+14:00"

Recurring and partial dates

xs:gYear

string

Gregorian calendar year

"2000", "2000+03:00"

xs:gMonth

string

Gregorian calendar month

"--04", "--04+03:00"

xs:gDay

string

Gregorian calendar day of the month

"---04", "---04+03:00"

xs:gYearMonth

string

Gregorian calendar year and month

"2000-01", "2000-01+03:00"

xs:gMonthDay

string

Gregorian calendar month and day

"--01-01", "--01-01+03:00"

xs:duration

string

Duration of time

"P30D", "-P1Y2M3DT1H", "PT1H5M0S"

xs:yearMonthDuration

string

Duration of time (months and years only)

"P10M", 'P5Y2M"

xs:dayTimeDuration

string

Duration of time (days, hours, minutes, seconds only)

"P30D", 'P1DT5H", 'PT1H5M0S"

Limited-range integer numbers

xs:byte

number

-128…+127 (8 bit)

-1, 0, 127

xs:short

number

-32768…+32767 (16 bit)

-1, 0, 32767

xs:int

number

2147483648…+2147483647 (32 bit)

-1, 0, 2147483647

xs:long

number

-9223372036854775808…+9223372036854775807 (64 bit)

-1, 0, 9223372036854775807

xs:unsignedByte

number

0…255 (8 bit)

0, 1, 255

xs:unsignedShort

number

0…65535 (16 bit)

0, 1, 65535

xs:unsignedInt

number

0…4294967295 (32 bit)

0, 1, 4294967295

xs:unsignedLong

number

0…18446744073709551615 (64 bit)

0, 1, 18446744073709551615

xs:positiveInteger

number

Integer numbers >0

1, 7345683746578364857368475638745

xs:nonNegativeInteger

number

Integer numbers ≥0

0, 1, 7345683746578364857368475638745

xs:negativeInteger

number

Integer numbers <0

-1, -23487263847628376482736487263847

xs:nonPositiveInteger

number

Integer numbers ≤0

-1, 0, -93845837498573987498798987394

Encoded binary data

xs:hexBinary

string

Hex-encoded binary data

"6b756d6f77617368657265"

xs:base64Binary

string

base64-encoded binary data

"a3Vtb3dhc2hlcmU="

Miscellaneous types

xs:anyURI

string

Absolute or relative URIs and IRIs

"http://customer.com/demo/aas/1/1/1234859590", "urn:example:company:1.0.0"

rdf:langString

string

Strings with language tags

+

"'Hello'@en", "'Hallo'@de"

+
+
+
+
+

Note: the examples are written in RDF/Turtle syntax, and only "Hello" and "Hallo" are the actual values.

+
+
+
+
+

The following types defined by the XSD and RDF specifications are explicitly omitted for serialization:

+
+
+

xs:language, xs:normalizedString, xs:token, xs:NMTOKEN, xs:Name, xs:NCName, xs:QName, xs:ENTITY, xs:ID, xs:IDREF, xs:NOTATION, xs:IDREFS, xs:ENTITIES, xs:NMTOKENS, rdf:HTML and rdf:XMLLiteral.

+
+
+
+
+

Note 1: due to the limits in the representation of numbers in JSON, the maximum integer number that can be used without losing precision is 2⁵³-1 (defined as Number.MAX_SAFE_INTEGER). Even if the used data type would allow higher or lower values, they cannot be used if they cannot be represented in JSON. Affected data types are unbounded numeric types xs:decimal, xs:integer, xs:positiveInteger, xs:nonNegativeInteger, xs:negativeInteger, xs:nonPositiveInteger and the bounded type xs:unsignedLong. Other numeric types are not affected. [3]

+
+
+
+
+
+
+

Note 2: the ValueOnly-serialization uses JSON native data types, AAS in general uses XML Schema Built-in Datatypes for Simple Data Types and ValueDataType. In case of booleans, JSON accepts only literals true and false, whereas xs:boolean also accepts 1 and 0, respectively. In case of double, JSON number is used in ValueOnly, but JSON number does not support INF/-INF (positive Infinity/negative), which is supported by xs:double. Furthermore, NaN (Not a Number) is also not supported.

+
+
+
+ +
+
+
+

Note 3: language-tagged strings (rdf:langString) containing single quotes (‘) or double quotes (“) are not supported.

+
+
+
+
+

Examples conformant to [1]:

+
+
+

Full serialization of single submodel element Property:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+
{
+  "idShort": "MaxRotationSpeed",
+  "category": "PARAMETER",
+  "kind": "Instance",
+  "semanticlId": {
+    "type": "ModelReference",
+    "keys": [
+      {
+        "type": "ConceptDescription",
+        "value": "0173-1#02-BAA120#008"
+      }
+    ]
+  },
+  "modelType": "Property",
+  "valueType": "xs:int",
+  "value": "5000"
+}
+
+
+
+

With the SerializationModifier set to Value, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+
{
+  "MaxRotationSpeed": 5000
+}
+
+
+
+

For a SubmodelElementCollection, the struct is serialized as objects denoted by curly brackets:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+
{
+  "NamesOfFamilyMembers": {
+    "NameOfMother": "Martha ExampleFamily",
+    "NameOfFather": "Jonathan ExampleFamily",
+    "NameOfSon": "Clark ExampleFamily"
+  }
+}
+
+
+
+

For a SubmodelElementList, the struct is serialized as array denoted by square brackets:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+
{
+  "NamesOfFamilyMembers": [
+    "Martha ExampleFamily",
+    "Jonathan ExampleFamily",
+    "Clark ExampleFamily"
+  ]
+}
+
+
+
+

For a MultiLanguageProperty named “Label”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+
{
+  "Label": [
+    {"de": "Das ist ein deutscher Bezeichner"},
+    {"en": "That's an English label"}
+  ]
+}
+
+
+
+
+
+

Note: in accordance with IETF RFC 5646, the language names match the following regular expression:

+
+
+
+
+

^[a-z]\{2,4}(-[A-Z][a-z]{3})?(-([A-Z]{2}|[0-9]{3}))?$

+
+
+

For a Range named “TorqueRange”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+
{
+  "TorqueRange": {
+    "min": 3,
+    "max": 15
+  }
+}
+
+
+
+

For a ReferenceElement named “MaxRotationSpeedReference”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+
{
+  "MaxRotationSpeedReference": {
+    "type": "ModelReference",
+    "keys": [
+      {
+        "type": "Submodel",
+        "value": "http://customer.com/demo/aas/1/1/1234859590"
+      },
+      {
+        "type": "Property",
+        "value": "MaxRotationSpeed"
+      }
+    ]
+  }
+}
+
+
+
+

For the same ReferenceElement, the payload is minimized to the following in case the Reference is of subtype GlobalReference:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+
{
+  "MaxRotationSpeedReference": {
+    "type": "ExternalReference",
+    "keys": [
+      {
+        "type": "GlobalReference",
+        "value": "0173-1#02-BAA120#008"
+      }
+    ]
+  }
+}
+
+
+
+

For a File named “Document”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+
{
+  "Document": {
+    "contentType": "application/pdf",
+    "value": "SafetyInstructions.pdf"
+  }
+}
+
+
+
+

For a Blob named “Library”, the payload is minimized to the following if the SerializationModifier Extent is set to WithoutBLOBValue

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+
{
+  "Library": {
+    "contentType": "application/octet-stream"
+  }
+}
+
+
+
+

If the SerializationModifier Extent is set to WithBlobValue, there is an additional attribute containing the base64-encoded value:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+
{
+  "Library": {
+    "contentType": "application/octet-stream",
+    "value": "VGhpcyBpcyBteSBibG9i"
+  }
+}
+
+
+
+

For a RelationshipElement named “CurrentFlowsFrom”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+
{
+  "CurrentFlowsFrom": {
+    "first": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "PlusPole"
+        }
+      ]
+    },
+    "second": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/0/1234859123490"
+        },
+        {
+          "type": "Property",
+          "value": "MinusPole"
+        }
+      ]
+    }
+  }
+}
+
+
+
+

For an AnnotatedRelationshipElement named “CurrentFlowFrom”, with an annotated Property-DataElement “AppliedRule”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+
{
+  "CurrentFlowsFrom": {
+    "first": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "PlusPole"
+        }
+      ]
+    },
+    "second": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/0/1234859123490"
+        },
+        {
+          "type": "Property",
+          "value": "MinusPole"
+        }
+      ]
+    },
+    "annotation": [
+      {
+        "AppliedRule": "TechnicalCurrentFlowDirection"
+      }
+    ]
+  }
+}
+
+
+
+

For an Entity named “MySubAssetEntity”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+
{
+  "MySubAssetEntity": {
+    "statements": {
+      "MaxRotationSpeed": 5000
+    },
+    "entityType": "SelfManagedEntity",
+    "globalAssetId": {
+      "type": "ExternalReference",
+      "keys": [
+        {
+          "type": "GlobalReference",
+          "value": "http://customer.com/demo/asset/1/1/MySubAsset"
+        }
+      ]
+    }
+  }
+}
+
+
+
+

For a BasicEventElement named “MyBasicEvent”, the payload is minimized to the following:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+
{
+  "MyBasicEvent": {
+    "observed": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "CurrentValue"
+        }
+      ]
+    }
+  }
+}
+
+
+
+
+

11.4.3. JSON-Schema for the ValueOnly-Serialization

+
+

The following JSON-Schema represents the validation schema for the ValueOnly-Serialization of submodel elements. This holds true for all submodel elements mentioned in the previous clause except for SubmodelElementCollections. Since SubmodelElementCollections are treated as objects containing submodel elements of any kind, the integration into the same validation schema would result in a circular reference or ambiguous results ignoring the actual validation of submodel elements other than SubmodelElementCollections. Hence, the same validation schema must be applied for each SubmodelElementCollection within a submodel element hierarchy. In this case, it may be necessary to create a specific JSON-Schema for the individual use case. The SubmodelElementCollection is added to the following schema for completeness and clarity. It is, however, not referenced from the SubmodelElementValue-oneOf-Enumeration due to the reasons mentioned above.
+See Annex B for an example that validates against this schema.

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+
{
+  "$schema": "https://json-schema.org/draft/2019-09/schema",
+  "title": "ValueOnly-Serialization-Schema",
+  "$id": "https://admin-shell.io/schema/valueonly/json/V3.0",
+  "definitions": {
+    "AnnotatedRelationshipElementValue": {
+      "type": "object",
+      "properties": {
+        "first": {
+          "$ref": "#/definitions/ReferenceValue"
+        },
+        "second": {
+          "$ref": "#/definitions/ReferenceValue"
+        },
+        "annotation": {
+          "type": "array",
+          "items": {
+            "$ref": "#/definitions/ValueOnly"
+          }
+        }
+      },
+      "required": [
+        "first",
+        "second",
+        "annotation"
+      ],
+      "additionalProperties": false
+    },
+    "BasicEventElementValue": {
+      "type": "object",
+      "properties": {
+        "observed": {
+          "$ref": "#/definitions/ReferenceValue"
+        }
+      },
+      "required": [
+        "observed"
+      ],
+      "additionalProperties": false
+    },
+    "BlobValue": {
+      "type": "object",
+      "properties": {
+        "contentType": {
+          "type": "string",
+          "minLength": "1",
+          "maxLength": "100"
+        },
+        "value": {
+          "type": "string"
+        }
+      },
+      "required": [
+        "contentType",
+        "value"
+      ],
+      "additionalProperties": false
+    },
+    "BooleanValue": {
+      "type": "boolean",
+      "additionalProperties": false
+    },
+    "EntityValue": {
+      "type": "object",
+      "properties": {
+        "statements": {
+          "$ref": "#/definitions/ValueOnly"
+        },
+        "entityType": {
+          "enum": [
+            "SelfManagedEntity",
+            "CoManagedEntity"
+          ]
+        },
+        "globalAssetId": {
+          "type": "string"
+        },
+        "specificAssetIds": {
+          "type": "array",
+          "items": {
+            "$ref": "#/definitions/SpecificAssetIdValue"
+          }
+        }
+      },
+      "required": [
+        "statements",
+        "entityType"
+      ],
+      "additionalProperties": false
+    },
+    "FileValue": {
+      "type": "object",
+      "properties": {
+        "contentType": {
+          "type": "string",
+          "minLength": "1",
+          "maxLength": "100"
+        },
+        "value": {
+          "type": "string",
+          "minLength": "1",
+          "maxLength": "200"
+        }
+      },
+      "required": [
+        "contentType",
+        "value"
+      ],
+      "additionalProperties": false
+    },
+    "Identifier": {
+      "type": "string"
+    },
+    "Key": {
+      "type": "object",
+      "properties": {
+        "type": {
+          "type": "string"
+        },
+        "value": {
+          "type": "string"
+        }
+      },
+      "required": [
+        "type",
+        "value"
+      ],
+      "additionalProperties": false
+    },
+    "LangString": {
+      "type": "object",
+      "patternProperties": {
+        "^[a-z]{2,4}(-[A-Z][a-z]{3})?(-([A-Z]{2}|[0-9]{3}))?$": {
+          "type": "string"
+        }
+      },
+      "additionalProperties": false
+    },
+    "MultiLanguagePropertyValue": {
+      "type": "array",
+      "items": {
+        "$ref": "#/definitions/LangString"
+      },
+      "additionalProperties": false
+    },
+    "NumberValue": {
+      "type": "number",
+      "additionalProperties": false
+    },
+    "OperationRequestValueOnly": {
+      "inoutputArguments": {
+        "$ref": "#/definitions/ValueOnly"
+      },
+      "inputArguments": {
+        "$ref": "#/definitions/ValueOnly"
+      },
+      "timestamp": {
+        "type": "string",
+        "pattern": "^-?(([1-9][0-9][0-9][0-9]+)|(0[0-9][0-9][0-9]))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))T(((([01][0-9])|(2[0-3])):[0-5][0-9]:([0-5][0-9])(\\.[0-9]+)?)|24:00:00(\\.0+)?)(Z|\\+00:00|-00:00)$"
+      },
+      "additionalProperties": false
+    },
+    "OperationResultValueOnly": {
+      "executionState": {
+        "type": "string",
+        "enum": ["Initiated", "Running", "Completed", "Canceled", "string",
+                 "Failed", "Timeout"]
+      },
+      "inoutputArguments": {
+        "$ref": "#/definitions/ValueOnly"
+      },
+      "outputArguments": {
+        "$ref": "#/definitions/ValueOnly"
+      },
+      "additionalProperties": false
+    },
+    "PropertyValue": {
+      "oneOf": [
+        {
+          "$ref": "#/definitions/StringValue"
+        },
+        {
+          "$ref": "#/definitions/NumberValue"
+        },
+        {
+          "$ref": "#/definitions/BooleanValue"
+        }
+      ]
+    },
+    "RangeValue": {
+      "type": "object",
+      "properties": {
+        "min": {
+          "type": "number"
+        },
+        "max": {
+          "type": "number"
+        }
+      },
+      "required": [
+        "min",
+        "max"
+      ],
+      "additionalProperties": false
+    },
+    "ReferenceElementValue": {
+      "$ref": "#/definitions/ReferenceValue"
+    },
+    "ReferenceValue": {
+      "type": "object",
+      "properties": {
+        "type": {
+          "type": "string",
+          "enum": ["ModelReference", "ExternalReference"]
+        },
+        "keys": {
+          "type": "array",
+          "items": {
+            "$ref": "#/definitions/Key"
+          }
+        }
+      },
+      "additionalProperties": false
+    },
+    "RelationshipElementValue": {
+      "type": "object",
+      "properties": {
+        "first": {
+          "$ref": "#/definitions/ReferenceValue"
+        },
+        "second": {
+          "$ref": "#/definitions/ReferenceValue"
+        }
+      },
+      "required": [
+        "first",
+        "second"
+      ],
+      "additionalProperties": false
+    },
+    "SpecificAssetIdValue": {
+      "type": "object",
+      "patternProperties": {
+        "(.*?)": {
+          "type": "string"
+        }
+      }
+    },
+    "StringValue": {
+      "type": "string",
+      "additionalProperties": false
+    },
+    "SubmodelElementCollectionValue": {
+      "$ref": "#/definitions/ValueOnly"
+    },
+    "SubmodelElementListValue": {
+      "type": "array",
+      "items": {
+        "$ref": "#/definitions/SubmodelElementValue"
+      }
+    },
+    "SubmodelElementValue": {
+      "oneOf": [
+        {
+          "$ref": "#/definitions/BasicEventElementValue"
+        },
+        {
+          "$ref": "#/definitions/RangeValue"
+        },
+        {
+          "$ref": "#/definitions/MultiLanguagePropertyValue"
+        },
+        {
+          "$ref": "#/definitions/FileBlobValue"
+        },
+        {
+          "$ref": "#/definitions/ReferenceElementValue"
+        },
+        {
+          "$ref": "#/definitions/RelationshipElementValue"
+        },
+        {
+          "$ref": "#/definitions/AnnotatedRelationshipElementValue"
+        },
+        {
+          "$ref": "#/definitions/EntityValue"
+        },
+        {
+          "$ref": "#/definitions/PropertyValue"
+        },
+        {
+          "$ref": "#/definitions/SubmodelElementListValue"
+        }
+      ]
+    },
+    "ValueOnly": {
+      "propertyNames": {
+        "pattern": "^[A-Za-z_][A-Za-z0-9_-]*$"
+      },
+      "patternProperties": {
+        "^[A-Za-z_][A-Za-z0-9_-]*$": {
+          "$ref": "#/definitions/SubmodelElementValue"
+        }
+      },
+      "additionalProperties": false
+    }
+  }
+}
+
+
+
+
+

11.4.4. IdShortPath Serialization

+
+

To get only the idShort paths of a submodel element hierarchy, the serialization format is specified in terms of an idShortPath notation to be returned in an unnamed JSON-array. The notation differs depending on whether a SubmodelElementCollection or a SubmodelElementList is used. In the first case, the submodel element’s idShort is separated by “.” (dot) from top level down to child level. In the second case, square brackets with an index “[<<index>>]” are appended after the idShort of the containing SubmodelElementList.

+
+
+

In the following example, where a request for idShort paths starts at MySubmodelElementCollection with SerializationModifier level = deep, the list of idShort paths is returned as follows:

+
+
+

Submodel: MySubmodel

+
+
+
    +
  • +

    Property: MyTopLevelProperty

    +
  • +
  • +

    SMC: MySubmodelElementCollection

    +
    +
      +
    • +

      Property: MySubProperty1

      +
    • +
    • +

      Property: MySubProperty2

      +
    • +
    • +

      SMC: MySubSubmodelElementCollection

      +
      +
        +
      • +

        Property: MySubSubProperty1

        +
      • +
      • +

        Property: MySubSubProperty2

        +
      • +
      +
      +
    • +
    • +

      SML: MySubSubmodelElementList1

      +
      +
        +
      • +

        Property: “MySubTestValue1”,

        +
      • +
      • +

        Property: “MySubTestValue2”,

        +
      • +
      +
      +
    • +
    • +

      SML: MySubSubmodelElementList2

      +
      +
        +
      • +

        SML

        +
        +
          +
        • +

          Property: “MySubTestValue3”

          +
        • +
        +
        +
      • +
      +
      +
    • +
    +
    +
  • +
+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+
[
+  "MySubmodelElementCollection",
+  "MySubmodelElementCollection.MySubProperty1",
+  "MySubmodelElementCollection.MySubProperty2",
+  "MySubmodelElementCollection.MySubmodelElementCollection",
+  "MySubmodelElementCollection.MySubmodelElementCollection.MySubProperty1",
+  "MySubmodelElementCollection.MySubmodelElementCollection.MySubProperty2",
+  "MySubmodelElementCollection.MySubSubmodelElementList1",
+  "MySubmodelElementCollection.MySubSubmodelElementList1[0]",
+  "MySubmodelElementCollection.MySubSubmodelElementList1[1]",
+  "MySubmodelElementCollection.MySubSubmodelElementList2",
+  "MySubmodelElementCollection.MySubSubmodelElementList2[0]",
+  "MySubmodelElementCollection.MySubSubmodelElementList2[0][0]"
+]
+
+
+
+
+
+
+
+

12. HTTP/REST API

+
+
+

12.1. General

+
+

This clause describes the technology mapping to HTTP/REST APIs.

+
+
+

The OpenAPI specification of the HTTP/REST APIs can be found at SwaggerHub.

+
+
+

To clearly separate the different parts of the AAS model, the model has been split into several HTTP/REST APIs. Combinations then form service specifications and profiles, each materialized as an individual OpenAPI document.

+
+
+

The schema for the metamodel of Part 1 is available at:
+https://app.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0#
+This schema includes general objects, which are used in the further defined APIs.

+
+
+

Additional objects are needed for Part 2, e.g. for the ValueOnly-Serialization or the descriptors for the registry. The related schema of Part 2 objects is available at:
+https://app.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#
+This schema includes general objects, which are used in the further defined APIs.

+
+
+

The definition of endpoints is based on DIN SPEC 16593. The related schema for DIN SPEC 16593 is available at: https://app.swaggerhub.com/domains/Plattform_i40/DINSPEC16593-Schemas/V3.0#
+This schema includes general objects, which are used in the further defined APIs. These objects are the basis for the definition of Part 2 APIs.

+
+
+

The AAS API including the Submodel API, Serialization API, and Self-Description API is available at:
+https://app.swaggerhub.com/apis/Plattform_i40/AssetAdministrationShellServiceSpecification/V3.0_SSP-001#
+This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1.

+
+
+

The Submodel API including the Serialization API, and Self-Description API is available at:
+https://app.swaggerhub.com/apis/Plattform_i40/SubmodelServiceSpecification/V3.0_SSP-001#
+This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1.

+
+
+

The AAS Repository API including AAS API, Submodel API, Submodel Repository API, Serialization API, and Self-Description API is available at: https://app.swaggerhub.com/apis/Plattform_i40/RepositoryServiceSpecification/V3.0_SSP-001#
+This is a combination of APIs, which forms a service specification according to the Industrie 4.0 Service Model in Clause 4.1.

+
+
+

The Registry and Discovery APIs are independent from the other APIs. An AAS Registry including an AAS Registry API, Submodel Registry API, and Self-Description API is available at:
+https://app.swaggerhub.com/apis/Plattform_i40/RegistryServiceSpecification/V3.0_SSP-001#
+The Discovery API including the Self-Description API is available at:
+https://app.swaggerhub.com/apis/Plattform_i40/DiscoveryServiceSpecification/V3.0_SSP-001#
+Both are a combination of APIs, which form a service specification according to the Industrie 4.0 Service Model in Clause 4.1.

+
+
+

This clause gives an overview of the HTTP/REST API and describes general design decisions.

+
+
+
+

12.2. Design Decisions

+
+

The following design decisions and constraints hold for the HTTP/REST API:

+
+
+
    +
  • +

    OpenAPI and Swaggerhub shall be used for specification. This leads to the constraint that one operation can only provide one type of a resulting payload.

    +
  • +
  • +

    This document assumes version 1.1 of HTTP.

    +
  • +
  • +

    An endpoint of the HTTP/REST API shall always use HTTPS (Port 443) with an up-to-date level of encryption.

    +
  • +
  • +

    The SerializationModifier “content” changes the type the of payload for inputs or results. To ensure type-safe APIs, this parameter is mapped to the path suffixes “/$value”, “/$metadata”, “/$reference”, and “/$path”. “content=Normal” is mapped to the path without any “/$<content>” suffix.

    +
  • +
  • +

    Generic SerializationModifiers changing the size of payload for input or result have been mapped to corresponding query parameters, e.g. ”?level=” or “?extent=”.

    +
  • +
  • +

    Query parameters are also used when the type of a resulting payload is a list of objects and the type remains the same, while the query parameter filters the content of the list, e.g. GetAllSubmodels with optional query parameters “?semanticId=” or “?idShort=”.

    +
  • +
  • +

    Complete objects are provided as requested payloads, e.g. a complete submodel. This corresponds to the generic SerializationModifier content=”Normal”. Reduced objects can be requested by the path suffix “/$<content>”. See Clause 12.5 for further details. Exceptions to this rule are API Operations requiring pagination and error cases.

    +
  • +
  • +

    By default, blobs are not part of the payload. Using ?extent=WithBLOBValue includes blobs for submodel elements of kind BLOB.

    +
  • +
  • +

    Submodels define a hierarchical structure. Certain operations use an idShort-path to access deeper parts in the hierarchy. To easily support this in the REST API, “.” or “[index]” is used as a delimiter in the idShort-paths. Please see Clause 12.3. Since an idShort-path could include square brackets like “[index]”, the idShort-path must be URL-encoded.

    +
  • +
  • +

    Identifiers of Identifiables are base64url-encoded to be passed to the HTTP/REST API (see https://www.base64url.com/). These may be identifiers for Asset Administration Shells, Submodels, or Concept Descriptions.
    +Identifiers may also be passed as base64url-encoded query parameters, e.g. for semanticId or assetId. Such query parameters are typically used when a list of objects may be retrieved in the resulting payload. A list of base64url-encoded ids is simply passed as comma-separated query parameters.

    +
  • +
  • +

    Please note that base64url-encoding differs slightly from base64-encoding and has been specifically defined for passing URLs. An appropriate base64url implementation needs to be used for encoding/decoding. See RFC 4648 for further details.

    +
  • +
  • +

    When base64url or base64-encoding is mentioned in connection with string values (e.g. Identifiers), the UTF-8 decoded byte array representation of that string is used for the base64url or base64-encoding.

    +
  • +
  • +

    When retrieving AssetAdministrationShells (/shells, /lookup/shells), a query parameter “?assetids=” can be specified. Such assetId may be a globalAssetId or specificAssetId. The corresponding key-value-pair is first serialized to JSON and then base64url-encoded. The resulting encoded string is the value of “?assetids=”.

    +
  • +
  • +

    In some operations, references are part of the query parameters e.g. “?semanticId=”. The corresponding reference is first serialized to JSON and then base64url-encoded. The resulting encoded string is the value of “?semanticId=”.

    +
  • +
  • +

    Even though the metamodel of the AAS distinguishes between the attributes “semanticId” and “supplementalSemanticId”, the query parameter “?semanticId” targets both.

    +
  • +
  • +

    This encoding (serialize to JSON + base64url) is also used for SpecificAssetIds, i.e. for GetAllAssetAdministrationShellIdsByAssetLink (/lookup/shells). For the example “[\{"key": "globalAssetId","value": "http://example.company/myAsset"},\{"key": "myOwnInternalAssetId","value": "12345ABC"}]”, the resulting base64url-encoded value of the query parameter is
    +“?assetIds=W3sia2V5IjogImdsb2JhbEFzc2V0SWQiLCJ2YWx1ZSI6ICJodHRwOi8vZXhhbXBsZS5jb21wYW55L215QXNzZXQifSx7ImtleSI6ICJteU93bkludGVybmFsQXNzZXRJZCIsInZhbHVlIjogIjEyMzQ1QUJDIn1d”.
    +If several key-value-pairs are included, all must be part of the key-value-pairs on the server.

    +
  • +
  • +

    Comparisons of idShort are made case-sensitive in the HTTP/REST API to avoid repeating toupper()/tolower() conversions.

    +
  • +
+
+
+
+
+

Note: this is conformant to the change made in Part 1 V3.0 [1].

+
+
+
+
+
    +
  • +

    GetAll…-API Operations will retrieve a list of objects as the resulting payload, e.g. GetAllSubmodelElements.

    +
  • +
  • +

    The splitting of big result sets into smaller pieces, commonly referred to as “pagination”, is executed using the cursor query parameter. Therefore, result objects for GetAll…-API Operations and others requiring pagination return their content inside a Result structure. See Clause 12.6 for further explanations.

    +
  • +
  • +

    In general, only GET, POST, PUT, PATCH and DELETE are used. POST is used to create new objects and to invoke operations.

    +
  • +
  • +

    Some interfaces may be combined in a so-called “superpaths”, e.g. the Asset Administration Shell Repository Interface may be combined with the AAS Interface and the Submodel Interface. This results in a complete path like “/shells/{aas-identifier}/submodels/{submodel-identifier}/*”. This is especially useful when all data is hosted in the same repository. Superpaths are defined as part of the service specifications and profiles.

    +
  • +
  • +

    The attribute AssetAdministrationShell/submodels (array of References) maps to the path segment “/submodel-refs” to distinguish it from the superpath segment “/submodels” (array of Submodels).

    +
  • +
  • +

    Each interface includes a “/description” operation for self-discovery to provide detailed information about the interface. A server supporting the HTTP/REST API may also provide a server global “/description” to provide the information about all available profiles on that server.

    +
  • +
  • +

    The recursive nature of the reference class (Reference/referredSemanticId points to Reference again) cannot be represented in SwaggerHub due to a bug in the SwaggerUI code. Therefore, the additional class “ReferenceParent" has been added. “ReferenceParent" shall not be used in productive operations and is only a placeholder for “Reference”. When implementing generated code originating from the SwaggerHub schemas, please delete “ReferenceParent” and add its attributes to “Reference”.

    +
  • +
+
+
+
+

12.3. API Versioning

+
+

API versioning provides a way to deal with different versions of the same API at the same time. This way, older versions may still be accessible on the same server to provide services to legacy clients without breaking existing functionality.

+
+
+

There are different solutions regarding API versioning involving URL-based versioning, query parameter-based versioning, as well as HTTP header-oriented solutions using custom or standard headers.
+As different solutions also provide different advantages and disadvantages, URL-based versioning has been selected as the most suitable method for the AAS API. Among other advantages, implementation complexity on clients as well as servers is rather low and different versions can be easily accessed through browsers without the need for specific development tools or extensions.

+
+
+
+Ein Bild +
+
Figure 4. Generic URL Scheme for AAS API Versioning
+
+
+

Upcoming implementations of AAS related servers need to implement the version prefix “api/v<X.Y>/” to provide information of the specific major version regarding AAS Part 2 version, where <X> denotes the implemented major version and <Y> denotes the minor version, e.g. “api/v3.0/” (see Figure 4).

+
+
+
+
+

Note:* all URLs mentioned in this document regarding the REST mapping of the AAS APIs have to be understood with this prefix in mind.

+
+
+
+
+

The versioning scheme for AAS API related services follows semantic versioning [4]. Very briefly, this defines version numbers as a format following: <MAJOR>.<MINOR>.<PATCH>.

+
+
+

The major version changes in case of breaking or incompatible changes that need to be addressed by clients. Minor versions add (new) functionality in a backwards compatible way and allow clients with lower minor versions to keep their existing functionality. Patch versions only include backwards compatible bug fixes.

+
+
+

AAS API versioning uses the major and minor version as described above. A specific AAS API version uses specific related versions of the metamodel as defined in Clause 1.2. AAS API versions with the same major version must remain compatible, i.e. a client written for an older or a newer minor version must still work. This requires corresponding testing of clients and servers.

+
+
+

Additionally, “Release candidates” are variants of the implementation of the denoted major version. For example, “3.1.0 RC2” should be interpreted as the second (alternative) release candidate for version 3.1.0. This will still result in the version prefix “/api/v3.1/”.

+
+
+

As multiple versions will be supported in the future, an AAS ecosystem consisting of Registry / Discovery services as well as AAS Repository, Submodel (standalone), or AAS (standalone) services should share a consistent version. Therefore, a consistent interface description in the form of OpenAPI documents shall be provided with each major version.

+
+
+

Upcoming compatibility constraints regarding newer versions will be elaborated in further iterations of this document and related technical descriptions (OpenAPI specification).

+
+
+

Finally, it is recommended to include an additional "/description” endpoint into each service to further denote information about APIs / servers capabilities. This endpoint provides further information about the API and its supported profiles. The “/description” will be extended with additional information in later versions.

+
+
+
+

12.4. Addressing Resources

+
+

The API allows to address each referable element, either by its global identifier or by its idShort-path depending on the object type.

+
+
+

If the referable element is an identifiable, it can only be addressed by the global identifier of the object. All other referable elements are addressable by the idShort-path.
+The idShort-path is a chain of idShorts or SubmodelElementList-indexes, which points to an element within a hierarchy of elements. The root of the idShort-path is always a submodel and the first element in an idShort-path is always an idShort of a first level SubmodelElement within a Submodel. Technically, the idShort path is a string and the idShorts are separated by a dot while the SubmodelElementList-indexes are written in brackets.

+
+
+
+image24 +
+
Figure 5. Example Hierarchy of Submodel Elements
+
+
+

The example hierarchy in Figure 5 shows a Submodel with a hierarchical structure of SubmodelElements. The submodel can be addressed by its global identifier “https://admin-shell.io/sampleSM”. The other elements in the figure do not have a global identifier; they are, however, uniquely identifiable and addressable by the submodel identifier and the idShort-path. The idShort-path in this example pointing to the Property p1 is “sme1.sme2[0].p1”. The hierarchy is built on parent-child relations between the elements. There are four elements which can aggregate SubmodelElements and create deeper hierarchal structures. The elements are Submodel, SubmodelElementCollection, SubmodelElementList, and Entity. The fields used to navigate to a deeper level of the hierarchy can be seen in the following table.

+
+ + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 10. Children of certain objects
Element NameChild aggregation field name

Submodel

SubmodelElement

SubmodelElementCollection

value

SubmodelElementList

value

AnnotatedRelationshipElement

annotations

Entity

statements

+
+

Example requests:

+
+
+

GET /submodels/aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ/submodel/submodelElements/ sme1.sme2%5B0%5D.p1

+
+
+

Add a new Property to the Entity statements:

+
+
+

POST /submodels/aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ/submodel/submodelElements/ sme1.sme2%5B0%5D

+
+
+
+
+

Note 1: to avoid problems with IRI values in URLs, the identifiers shall be base64url-encoded before using them as parameters in the HTTP-APIs. IdshortPaths are base64url-encoded to also allow square brackets.

+
+
+
+
+
+
+

Note 2: in the example above, “aHR0cHM6Ly9hZG1pbi1zaGVsbC5pby9zYW1wbGVTTQ” is the base64url-encoding of “https://admin-shell.io/sampleSM”, “sme1.sme2%5B0%5D.p1” is the URL-encoding of “sme1.sme2[0].p1”, and “sme1.sme2%5B0%5D” is the URL-encoding of “sme1.sme2[0]”.

+
+
+
+
+
+

12.5. Metadata Objects

+
+

Metadata objects are defined for scenarios where a client only wants to access the metadata of an object, but not the value. Metadata objects are only part of HTTP/REST and do not change the metamodel. Metadata objects are used to reduce the payload response to a minimum and to avoid the recursive traversing through the data model when not needed. In many cases, a client is not interested in each child element or value of a resource, but only in the resource itself.

+
+
+

A metadata object does not contain any additional fields in relation to its full object representation, only some fields are left off. The left off fields are fields which could be requested by an own API call and may consist of a recursive or potentially large substructure. The serialization of a metadata object is the same as for the original full object, but without the left off fields.

+
+ + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 11. Metadata Attributes
Class NameFields not available in metadata representation

Identifiables

AssetAdministrationShell

assetInformation, submodels

Submodel

submodelElements

SubmodelElements

SubmodelElementCollection

value

SubmodelElementList

value

Entity

statements, globalAssetId, specificAssetId

BasicEventElement

observed

Capability

 — 

Operation

 — 

DataElements

Property

value, valueId

MultilanguageProperty

value, valueId

Range

min, max

ReferenceElement

value

RelationshipElement

first, second

AnnotatedRelationshipElement

first, second, annotations

Blob

value, contentType

File

value, contentType

+
+

Example

+
+
+

The example shows a JSON serialization of an AssetAdministrationShell object in its full representation and how it looks like in a metadata representation.

+
+
+
+
+

Note: for editorial reasons, some fields which are the same for both representations are omitted.

+
+
+
+ + +++ + + + + + +
Table 12. AssetAdministrationShell JSON Serialization Example
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+
{
+    "idShort": "TestAssetAdministrationShell",
+    "description": [...],
+    "id": {...},
+     ...
+    "derivedFrom": {...}
+    "assetInformation": {...},
+    "submodels": [...]
+}
+
+
+ + +++ + + + + + +
Table 13. AssetAdministrationShell Metadata JSON Serialization Example
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+
{
+  "idShort": "TestAssetAdministrationShell",
+  "description": [...],
+  "id": {...},
+  ...
+  "derivedFrom": {...},
+}
+
+
+
+
+

12.6. Pagination

+
+

Pagination is a commonly used pattern to break down potentially long result lists into smaller pieces for a better control of the network and computational load on both the server and the client side. For instance, the OData protocol [8] provides guidelines for parameters and behavior on the client and server side. In addition, the proposals of the RFC 8977 [5] present a best practice for web APIs. In the scope of the AAS HTTP/REST API, the query parameter “cursor” controls, which part of a longer result set is returned.

+
+
+

The AAS client may decide on the appropriate size of the result list through the limit parameter. If it is not specified, the server must comply to the default value or explicitly indicate it in the response object.

+
+
+

Pagination is currently only defined for the HTTP/REST API. Other APIs might introduce different patterns to control the response content.

+
+
+

Pagination is controlled by the client via the query parameters “cursor” and “limit”. They can be combined with all other query parameters as defined in this document and listed in the following table:

+
+ + ++++++ + + + + + + + + + + + + + + + + + + + + + + +
Table 14. Parameters for Pagination
ParameterValuesDefaultExplanation

Cursor

string

-

+

The position from which to resume a result listing. The value may be base64url-encoded and contain additional information which helps the server to respond more efficiently. However, the client must not expect any meaning and treat the cursor value as an arbitrary character sequence.

+
+
+

The server must interpret a missing cursor as if the client wants to retrieve the first part of the result set.

+

Limit

nonNegativeInteger

100

The maximum size of the result list.

+
+

Constraint AASa-001: The value of the cursor query parameter must not be empty. If the client does not know the cursor value, it must omit the whole query parameter in the request.

+
+
+
+
+

Note 1: this constraint prohibits that an empty cursor value is sent by the client, e.g. …?cursor="".

+
+
+
+
+
+
+

Note 2: if the client sends a request without a cursor query parameter, the server must interpret it as if the client wants to retrieve the results from the very beginning. A client may send the query parameter “limit" without any cursor. In that case, the server must return at max the specified number of result items from the beginning.

+
+
+
+
+

Pagination requires a defined and consistent sorting. The server implementation must ensure a deterministic ordering of the result set. For instance, a server must not return an element A before another element C and in any later request return C before A. This applies in particular if any attribute of either A or C has been changed between the two requests. However, in case a new element B was created (or deleted), the client must expect that B and then C are returned after A.

+
+
+

Nevertheless, the inherent order of the result set must stay the same. Implementations may maintain an internal sorting attribute to ensure this behavior or implement it in any other appropriate manner. The server is not obligated to inform the client about its ordering schema.

+
+
+

The server informs the client about pagination attributes through the Result object in the request response. In particular, the Result contains the cursor value for the next page. Additional information, e.g. the overall number of result items, may also be part of it.

+
+ ++++ + + + + + + + + + + + + + + +

Class Name

Result

Explanation

An object connecting the actual list of returned items with metadata information to, e.g. fetch the next part of the result set.

Inherits from

 — 

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

result

List of returned items. Any kind of Referables is possible, depending on the endpoint which has been requested.

Referable

0..*

paging_metadata

Additional information for the client to, e.g. fetch the next part of the result set.

PagingMetadata

1

+ ++++ + + + + + + + + + + + + + + +

Class Name

PagingMetadata

Explanation

+

Additional information for the client to, e.g. fetch the next part of the result set.

+
+
+
+
+

Note: more attributes may be added to this class in future versions.

+
+
+

Inherits from

 — 

+ ++++++ + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

cursor

The cursor for the next part of the result set. No cursor attribute means that the end of the result set has been reached.

string

0..1

+
+
+

12.7. Payload

+
+

The payload is generated from the technology-neutral specification as described in Part 1 of the Asset Administration Shell Series for JSON [1].

+
+
+

The serialization of JSON values is described in Clause 11.4.2.

+
+
+

Additional classes needed for payload of the HTTP/REST API specification can be found in Clause 10.2.

+
+
+
+

12.8. Modifier Constraints

+
+

To use metadata objects as described in Clause 12.5., modifiers are implemented as HTTP query parameters or path suffixes. For example, a request for a specific submodel may look like:
+GET /submodel/$value?level=deep&extent=withBlobValue

+
+
+

The following constraints apply for the combination of modifiers:

+
+
+
    +
  • +

    If Level=Core and Content=Value, only the requested object and the direct children without their value (empty value) will be returned in value serialization. If a direct child is a SubmodelElementCollection, "<SubmodelElementCollection/idShort>": \{} will be returned. If a direct child is a SubmodelElementList, "<SubmodelElementList/idShort>": [] will be returned.

    +
  • +
  • +

    The combination of Content=Metadata and Extent=WithBLOBValue is not allowed.

    +
  • +
  • +

    The combination of Level=Deep and Content=Reference is not allowed.

    +
  • +
  • +

    Modifiers cannot be used for POST operations.

    +
  • +
+
+
+

In addition, the modifiers can also be used for PUT operations. They define how the request content is delivered and have the same semantics as in the related GET operation. Only Content=Reference and Content=Path are not possible for PUT.

+
+
+
+

12.9. Mapping of Operations

+
+

The following

+
+
+

Table 15 shows the mapping of the generic operations to the HTTP/REST API.

+
+
+

The black entries correspond to the corresponding generic operations.

+
+
+

The blue entries are operations which only exist in the HTTP/REST API.

+
+ + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 15. Mapping of the generic Interface Operations to HTTP API Operations
Operation NameHTTP
+ Verb
REST-PathComment (e.g. optional query parameters)

Asset Administration Shell Interface

GetAssetAdministrationShell

GET

/aas

content-suffix: $reference

PutAssetAdministrationShell

PUT

GetAllSubmodelReferences

GET

/aas/submodel-refs

Pagination

PostSubmodelReference

POST

/aas/submodel-refs

DeleteSubmodelReference

DELETE

/aas/submodel-refs/{submodelIdentifier}

use base64url-encoded identifier

GetAssetInformation

GET

/aas/asset-information

PutAssetInformation

PUT

/aas/asset-information

GetThumbnail

GET

/aas/asset-information/thumbnail

PutThumbnail

PUT

/aas/asset-information/thumbnail

DeleteThumbnail

DELETE

/aas/asset-information/thumbnail

*

/aas/submodels/{submodel-identifier}/*

superpath as defined in service specification or profile

Submodel Interface

GetSubmodel

GET

/submodel

+

?level=deep/core

+
+
+

path-suffix= $metadata/$value/$reference/$path or no suffix for normal

+
+
+

?extent=WithoutBLOBValue/WithBLOBValue

+

PutSubmodel

PUT

/submodel

PatchSubmodel

PATCH

/submodel

path-suffix=$metadata/$value or no path for normal

GetAllSubmodelElements

GET

/submodel/submodel-elements

+

?level=deep/core

+
+
+

path-suffix= $metadata/$value/$reference/$path or no suffix for nomal

+
+
+

?extent=WithoutBLOBValue/WithBLOBValue

+
+
+

Pagination

+

GetSubmodelElementByPath

GET

/submodel/submodel-elements/{idShortPath}

+

use separated idshort path of this element

+
+
+

?level=deep/core

+
+
+

path-suffix= $metadata/$value/$reference/$path or no suffix for nomal
+?extent=WithoutBLOBValue/WithBLOBValue

+
+
+

URL-encoded IdShortPath

+

GetFileByPath

GET

/submodel/submodel-elements/{idShortPath}/attachment

+

use separated idShort path of this element

+
+
+

URL-encoded IdShortPath

+

PutFileByPath

PUT

/submodel/submodel-elements/{idShortPath}/attachment

+

use separated idShort path of this element

+
+
+

URL-encoded IdShortPath

+

DeleteFileByPath

DELETE

/submodel/submodel-elements/{idShortPath}/attachment

+

use separated idShort path of this element

+
+
+

URL-encoded IdShortPath

+

PostSubmodelElement

POST

/submodel/submodel-elements

SerializationModifiers are not used with POST

PostSubmodelElementByPath

POST

/submodel/submodel-elements/{idShortPath}

+

use separated idShort path of the parent element

+
+
+

SerializationModifiers are not used with POST

+

PutSubmodelElementByPath

PUT

/submodel/submodel-elements/{idShortPath}

+

use separated idShort path of this element

+
+
+

URL-encoded IdShortPath

+

PatchSubmodelElementByPath

PATCH

/submodel/submodel-elements/{idShortPath}

+

use separated idShort path of this element

+
+
+

path-suffix=$metadata/$value or no suffix for normal

+
+
+

URL-encoded IdShortPath

+
+
+
+
+

Note: values remain unchanged with content=metadata

+
+
+

PatchSubmodelElementValueByPath

PATCH

/submodel/submodel-elements/{idShortPath}/$value

+

use separated idShort path of this element; see Clause 11.4.2 for values

+
+
+

path-suffix=$value

+
+
+

URL-encoded IdShortPath

+

DeleteSubmodelElementByPath

DELETE

/submodel/submodel-elements/{idShortPath}

+

use separated idshort path of this element

+
+
+

URL-encoded IdShortPath

+

InvokeOperationSync

POST

/submodel/submodel-elements/{idShortPath}/invoke

+

path-suffix=$value or no suffix for normal

+
+
+

URL-encoded IdShortPath

+

InvokeOperationAsync

POST

/submodel/submodel-elements/{idShortPath}
+/invoke-async

+

get operationHandle

+
+
+

path-suffix=$value or no suffix for normal

+
+
+

URL-encoded IdShortPath

+

GetOperationAsyncResult

GET

/submodel/submodel-elements/{idShortPath}
+/operation-results/
+{handleId}

+

handleId=operationHandle

+
+
+

path-suffix=$value or no suffix for normal

+
+
+

URL-encoded IdShortPath

+

Shell Repository Interface

GetAllAssetAdministrationShells

GET

/shells

+

path-suffix=$reference or no suffix normal

+
+
+

Pagination

+

GetAllAssetAdministrationShellsByAssetId

GET

/shells

+

base64url-encoded JSON-serialized key-value-pairs

+
+
+

?assetids=…

+
+
+

Pagination

+

GetAllAssetAdministrationShellsByIdShort

GET

/shells

+

Pagination

+
+
+

?idShort=<idShort to query for>

+

GetAssetAdministrationShellById

GET

/shells/{aasIdentifier}

+

base64url-encoded identifier

+
+
+

path-suffix=$reference or no suffix normal

+

PostAssetAdministrationShell

POST

/shells

PutAssetAdministrationShellById

PUT

/shells/{aasIdentifier}

base64url-encoded identifier

DeleteAssetAdministrationShellById

DELETE

/shells/{aasIdentifier}

base64url-encoded identifier

AasInterface

*

/shells/{aasIdentifier}/*

superpath as defined in Service Specification or Profile

Submodel Repository Interface

GetAllSubmodels

GET

/submodels

+

path-suffix= $metadata/$value/$reference/$path or no suffix for normal

+
+
+

Pagination

+

GetAllSubmodelsBySemanticId

GET

/submodels

+

?semanticId=<base64url-encoded value of the semanticId>

+
+
+

path-suffix= $metadata/$value/$reference/$path or no suffix for normal

+
+
+

Constraint AASa-002: The base64url-encoded identifier of the semanticId shall have a length of maximum 3072 characters.

+
+
+

Pagination

+

GetAllSubmodelsByIdShort

GET

/submodels

+

path-suffix= $metadata/$value/$reference/$path or no suffix for normal

+
+
+

Pagination

+

GetSubmodelById

GET

/submodels/{submodelIdentifier}

+

path-suffix=$metadata or no suffix for normal

+
+
+

base64url-encoded identifier

+

PostSubmodel

POST

/submodels

PutSubmodelById

PUT

/submodels/{submodelIdentifier}

base64url-encoded identifier

PatchSubmodelById

PATCH

/submodels/{submodelIdentifier}

path-suffix=$metadata/$value or no suffix for normal

DeleteSubmodelById

DELETE

/submodels/{submodelIdentifier}

base64url-encoded identifier

SubmodelInterface

*

/submodels/{submodelIdentifier}/*

superpath as defined in service specification or profile

Concept Description Repository Interface

GetAllConceptDescriptions

GET

/concept-descriptions

Pagination

GetConceptDescriptionById

GET

/concept-descriptions/{cdIdentifier}

+

base64url-encoded identifier

+
+
+

Pagination

+

GetAllConceptDescriptionsByIdShort

GET

/concept-descriptions

Pagination

GetAllConceptDescriptionsByIsCaseOf

GET

/concept-descriptions

+

base64url-encoded identifier

+
+
+

Pagination

+

GetAllConceptDescriptionsByDataSpecificationReference

GET

/concept-descriptions

+

base64url-encoded identifier

+
+
+

Pagination

+

PostConceptDescription

POST

/concept-descriptions/

PutConceptDescriptionById

PUT

/concept-descriptions/{cdIdentifier}

base64url-encoded identifier

DeleteConceptDescriptionById

DELETE

/concept-descriptions/{cdIdentifier}

base64url-encoded identifier

AASX File Server Interface

GetAllAASXPackageIds

GET

/packages

+

base64url-encoded identifier

+
+
+

Pagination

+

PostAASXPackage

POST

/packages

GetAASXByPackageId

GET

/packages/{packageId}

base64url-encoded identifier

PutAASXByPackageId

PUT

/packages/{packageId}

base64url-encoded identifier

DeleteAASXByPackageId

DELETE

/packages/{packageId}

base64url-encoded identifier

Serialization Interface

GenerateSerializationByIds

GET

/serialization

base64url-encoded identifier; AcceptHeader: application/aasx+xml or application/json oder application/xml

AAS Basic Discovery Interface

GetAllAssetAdministrationShellIdsByAssetLink

GET

/lookup/shells

+

base64url-encoded JSON-serialized key-value-pairs

+
+
+

?assetids=…

+
+
+

Pagination

+

GetAllAssetLinksById

GET

/lookup/shells/{aasIdentifier}

base64url-encoded identifier

PostAllAssetLinksById

POST

/lookup/shells/{aasIdentifier}

base64url-encoded identifier

DeleteAllAssetLinksById

DELETE

/lookup/shells/{aasIdentifier}

base64url-encoded identifier

AAS Registry Interface

GetAllAssetAdministrationShellDescriptors

GET

/shell-descriptors

+

Pagination

+
+
+

assetKind=type|instance

+
+
+

assetType= base64url-encoded identifier

+

GetAssetAdministrationShellDescriptorById

GET

/shell-descriptors/{aasIdentifier}

base64url-encoded identifier

PostAssetAdministrationShellDescriptorById

POST

/shell-descriptors/{aasIdentifier}

base64url-encoded identifier

PutAssetAdministrationShellDescriptorById

PUT

/shell-descriptors/{aasIdentifier}

base64url-encoded identifier

DeleteAssetAdministrationShellDescriptorById

DELETE

/shell-descriptors/{aasIdentifier}

base64url-encoded identifier

Submodel Registry Interface

*

/shell-descriptors/{aasIdentifier}/submodelDescriptors/*

superpath as defined in Service Specification or Profile

Submodel Registry Interface

GetAllSubmodelDescriptors

GET

/submodel-descriptors

Pagination

GetSubmodelDescriptorById

GET

/submodel-descriptors/{submodelIdentifier}

base64url-encoded identifier

PostSubmodelDescriptor

POST

/submodel-descriptors/{submodelIdentifier}

base64url-encoded identifier

PutSubmodelDescriptorById

PUT

/submodel-descriptors/{submodelIdentifier}

base64url-encoded identifier

DeleteSubmodelDescriptorById

DELETE

/submodel-descriptors/{submodelIdentifier}

base64url-encoded identifier

Descriptor Interface

GetDescription

GET

/description

Provide additional information on interface endpoint; may also be used at a server endpoint to list all descriptions available on that server

+
+

12.9.1. Asynchronous Invocation of the SubmodelElement “Operation”

+
+

The invocation of the SubmodelElement “Operation” is the only call that can appear either synchronously or asynchronously in the current version of the specification. The expected behavior is therefore explained in detail.

+
+
+
+image25 +
+
Figure 6. Sequence for asynchronous invocations of the SubmodelElement 'Operation'
+
+
+

The client informs the server whether it is interested in a synchronous (asynchronous) call by targeting the /invoke (/invoke-async) endpoint. In case of a synchronous interaction, the communication channel is kept open until the server has processed the request and responds with an OperationResult object, or a timeout or other kind of error occurs.

+
+
+

In the asynchronous pattern, the server immediately responds with an Accepted (status code: 202) message containing the link to an endpoint where the client can fetch status information about his request (see Figure 6). This status endpoint is also located at the same SubmodelElement “Operation”, followed by the path segments "/operation-status/{handleId}”.

+
+
+

In case the request is incorrect and the server already recognizes it, the server responds directly with the according status code, e.g. 400. If the server can only recognize the error during later processing and not at the time it receives the request, it responds with an Accepted (202) message at first. Hence, a received Accepted message does not guarantee the client that its request is valid in every case.

+
+
+

If the server has not finished processing the request, the status endpoint responds with an BaseOperationResult object with the attribute “executionState” set to “Running”. As soon as the processing is finished, the status endpoints deliver a Found (HTTP status code 302) response with the location of the result in the Location response header. The result is, similar to the status information, provided at the same SubmodelElement “Operation”, followed by the path segments "/operation-result/{handleId}”.

+
+
+

In case incorrect inputs have been provided by the client but the server was only able to recognize this during processing, or if the server perceived any other error during processing, the server must still provide the OperationResult object with status code 200 and set the attribute “executionState” to “Failed”.

+
+
+
+
+

Note: the invocation of the SubmodelElement “Operation” may also be conducted in the “ValueOnly” content. In this case, the "/$value” path segment is added to the previously mentioned endpoints.

+
+
+
+
+
+
+

12.10. Mapping of Status Codes

+
+

The following table shows the mapping of the generic status codes to HTTP status codes according to IETF RFC 7231 (see Clause 6.1 https://datatracker.ietf.org/doc/html/rfc7231#section-6)

+
+ + ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 16. Status Code Mapping for HTTP
Generic status codeMeaningHTTP status codeExplanation

Success

Success

200 (OK)

Standard response for successful requests

SuccessCreated

Successful creation of a new resource

201 (Created)

Successful request resulting in the creation of a new resource, e.g. SubmodelElement

SuccessAccepted

The reception of the request was successful

202 (Accepted)

The server has accepted the request, but the result will be supplied later

SuccessNoContent

Success with explicitly no content in the payload

204 (No Content)

Successful request with no content in return, e.g. used for updating existing resources

ClientErrorBadRequest

Bad or malformed request

400 (Bad Request)

The server does not / cannot process the request due to a general client error, e.g. a malformed request

ClientNotAuthorized

Wrong or missing authorization credentials

401 (Unauthorized)

The client missed or provided invalid credentials

ClientForbidden

Authorization has been refused

403 (Forbidden)

The request content is basically valid and understood by the server, but the server refuses the action due to certain restrictions, e.g. profiles or roles

ClientErrorResourceNotFound

Resource not found

404 (Not Found)

The requested resource was not found

ClientMethodNotAllowed

Operation request is not allowed

405 (Method Not Allowed)

The server rejected the request for the requested resource, e.g. /invoke only for the operation submodel element

ClientResourceConflict

Conflict-creating resource (resource already exists)

409 (Conflict)

A resource already exists; might occur if a Submodel or SubmodelElement with the same Identifier or ShortId is contained in a POST request.

ServerInternalError

Unexpected error

500 (Internal Server Error)

General server-internal error due to an unexpected condition

ServerNotImplemented

Not implemented

501 (Not Implemented)

The server does not support the functionality to fulfill the request

ServerErrorBadGateway

Bad Gateway

502 (Bad Gateway)

The primarily addressed server that was acting as gateway or proxy received an invalid response from subsequent systems/servers

+
+
+

12.11. Additional Data Types for Payload for HTTP/REST

+
+

In addition to the data types used in the technology-neutral specification, the HTTP/REST API uses the data types as defined in this clause.

+
+
+

12.11.1. PackageDescription

+ ++++ + + + + + + + + + + + + + + +

Class Name

PackageDescription

Explanation

The package description consists of a system-wide unique packageId and its corresponding Asset Administration Shell identifiers. The packageId is used to identify the AASX package at the AASX file server. The package description is used to list the Asset Administration Shells in a given AASX package. This class is not part of the metamodel.

Inherits from

 — 

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + +
AttributeExplanationTypeCard.

packageId

File server specific package id

ShortIdType

1

aasId

Asset Administration Shell unique identifier

Identifier

0..*

+
+
+
+

12.12. Service Specifications and Profiles

+
+

Figure 2 defines that a service specification contains at least one API and that an API contains at least one API Operation.

+
+
+

The profiles defined in this clause present complete service specifications and their subsets.

+
+
+

For instance, the profile “RepositoryServiceSpecification/V3.0_SSP-002” contains the API Operation “GetAllSubmodels” but not “PostSubmodelElementByPath”, while the more comprehensive “RepositoryServiceSpecification/V3.0_SSP-001” contains both. Furthermore, profiles also define which of the SerializationModifiers (content, extent, level) or serialization formats (JSON) can be used or whether pagination or asynchronous operations are available.

+
+ + ++++++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 17. Overview of Service Specifications and the Contained APIs
Contained APIs: + +Service Specifications:Asset Administration Shell APISubmodel APIAASX File Server APIAsset Administration Shell Registry APISubmodel Registry APIAsset Administration Shell Repository APISubmodel Repository APIConcept Description Repository APIAsset Administration Shell Basic Discovery APISerialization APIDescription API

Asset Administration Shell Service Specification

x

s

x

x

Submodel Service Specification

x

x

x

AASX File Server Service Specification

x

x

Asset Administration Shell Registry Serv. Spec.

x

s

x

Submodel Registry Service Specification

x

x

Discovery Service Specification

x

x

Asset Administration Shell Repository Serv. Spec.

s

s

x

s

x

x

Submodel Repository Service Specification

s

x

x

x

ConceptDescription Repository Service Spec.

x

x

x

+
+

x: Service Specification contains API at the root

+
+
+

s: Service Specification contains API through superpaths as introduced in Clause 0

+
+
+

12.12.1. Profiles

+
+

Service specifications are further refined in profiles, governing which API operations, modifiers, and path combinations are supported. The following clauses describe each service specification and present their predefined profiles. Each profile is unambiguously identified and represented through a normative OpenAPI document. The different OpenAPI profiles of one ServiceSpecification share the same title attribute but with different versions. The version attribute contains both the major and minor version as well as the profile identifier. A profile identifier is defined as:

+
+
+

https://admin-shell.io/aas/API/3/0/<service specification name>/SSP-<profile number>

+
+
+

The name of the service specification ends with "ServiceSpecification".

+
+
+

The supported service specification or profile can be discovered at the /description endpoint. This endpoint will return the related profile string.

+
+
+

Additional profiles might be introduced in future versions of this document.

+
+
+
+
+

Note: in the following, only the last part (<name of service specification>/SSP-<profile number>) is used in the text for better readability, e.g. “AssetAdministrationShellServiceSpecification/SSP-001” instead of “https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001”.

+
+
+
+
+
+

12.12.2. Asset Administration Shell Service Specification

+ ++++ + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

AssetAdministrationShellServiceSpecification/SSP-001

Full feature set

AssetAdministrationShellServiceSpecification/SSP-002

Only read operations; is included in the profile AssetAdministrationShellServiceSpecification/SSP-001.

+
+
Asset Administration Shell Service Specification – Full Profile
+
+

The Asset Administration Shell service specification with all its features and endpoints is represented through the profile identifier AssetAdministrationShellServiceSpecification/SSP-001:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AAS Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-001

Feature

Appearance

APIs and API Operations

+

Asset Administration Shell API:
+GetAssetAdministrationShell
+PutAssetAdministrationShell
+GetAllSubmodelReferences
+PostSubmodelReference
+DeleteSubmodelReference
+GetAssetInformation
+PutAssetInformation
+GetThumbnail
+PutThumbnail
+DeleteThumbnail

+
+
+

Submodel API as superpath:
+GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath
+PutFileByPath
+DeleteFileByPath
+PutSubmodel
+PatchSubmodel
+PostSubmodelElement
+PostSubmodelElementByPath
+PutSubmodelElementByPath
+PatchSubmodelElementByPath
+DeleteSubmodelElementByPath
+InvokeOperationSync
+InvokeOperationAsync
+GetOperationAsyncStatus
+GetOperationAsyncResult

+
+
+

Serialization API:[.underline]#
+#GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Asset Administration Shell Service Specification – Read Profile
+
+

The Asset Administration Shell Service specification with the minimal feature set is represented through AssetAdministrationShellServiceSpecification/SSP-002:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AAS Read Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/V3.0_SSP-002

Feature

Appearance

API Operations

+

Asset Administration Shell API:
+GetAssetAdministrationShell
+GetAllSubmodelReferences
+GetAssetInformation
+GetThumbnail

+
+
+

Submodel API as superpath:
+GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
+

12.12.3. Submodel Service Specification

+ ++++ + + + + + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

SubmodelServiceSpecification/SSP-001

Full feature set

SubmodelServiceSpecification/SSP-002

Only reads operations; is included in the profile SubmodelServiceSpecification/SSP-001.

SubmodelServiceSpecification/SSP-003

Limitation on the basic capabilities plus the option to execute synchronous operations and to read the submodel in the ValueOnly-serialization format to reduce required bandwidth; is included in the profile SubmodelServiceSpecification/SSP-001.

+
+
Submodel Service Specification – Full Profile
+
+

The submodel service specification with all its features and endpoints is represented through SubmodelServiceSpecification/SSP-001:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001

Feature

Appearance

APIs and API Operations

+

Submodel API:
+GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath
+PutFileByPath
+DeleteFileByPath
+PutSubmodel
+PatchSubmodel
+PostSubmodelElement
+PostSubmodelElementByPath
+PutSubmodelElementByPath
+PatchSubmodelElementByPath
+DeleteSubmodelElementByPath
+InvokeOperationSync
+InvokeOperationAsync
+GetOperationAsyncStatus
+GetOperationAsyncResult

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Service Specification – Read Profile
+
+

The submodel service specification with its minimal feature set is represented through SubmodelServiceSpecification/SSP-002:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Read Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellServiceSpecification/SSP-002

Feature

Appearance

API and API Operations

+

Submodel API:
+GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Service Specification – Value Profile
+
+

The submodel service specification with a reduced feature set is represented through SubmodelServiceSpecification/SSP-003:

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Value Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003

Feature

Appearance

APIs and API Operations

+

Submodel API:
+
GetSubmodel
+InvokeOperationSync

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Deep

+
+
+

Content: Normal, Value

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

not supported

+ +
+
+
+

12.12.4. AASX File Server Service Specification

+ ++++ + + + + + + + + + + + + +
Service Specification / ProfilesDescription

AasxFileServerServiceSpecification/SSP-001

The full feature set of the AASX File Server Service Specification

+
+
AASX File Server Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AASX File Server Full Profile

Profile Identifier

https://admin-shell.io/aas/API/3/0/AasxFileServerServiceSpecification/SSP-001

Feature

Appearance

APIs and API Operations

+

File Server API:
+GetAllAASXPackageIds
+GetAASXByPackageId
+PostAASXPackage
+PutAASXByPackageId
+DeleteAASXByPackageId

+
+
+

Description API:
+GetDescription

+

SerializationModifier

not applicable

SerializationFormat

+

JSON for descriptions and error messages

+
+
+

AASX for packages

+

Pagination

supported

+ +
+
+
+

12.12.5. Asset Administration Shell Registry Service Specification

+ ++++ + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

AssetAdministrationShellRegistryServiceSpecification/SSP-001

Full profile

AssetAdministrationShellRegistryServiceSpecification/SSP-002

Only reads operations; is included in the profile AssetAdministrationShellRegistryServiceSpecification/SSP-001.

+
+
Asset Administration Shell Registry Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Asset Administration Shell Registry Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-001

Feature

Appearance

APIs and API Operations

+

AAS Registry API:
+GetAllAssetAdministrationShellDescriptors
+GetAssetAdministrationShellDescriptorById
+PostAssetAdministrationShellDescriptor
+PutAssetAdministrationShellDescriptorById
+DeleteAssetAdministrationShellDescriptorById

+
+
+

Submodel Registry API as superpath:
+GetAllSubmodelDescriptors
+GetSubmodelDescriptorById
+PostSubmodelDescriptor
+PutSubmodelDescriptorById
+DeleteSubmodelDescriptorById

+
+
+

Description API:
+
GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

Supported

+ +
+
+
Asset Administration Shell Registry Service Specification – Read Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AAS Registry Read Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRegistryServiceSpecification/SSP-002

Feature

Appearance

APIs and API Operations

+

AAS Registry API:
+GetAllAssetAdministrationShellDescriptors
+GetAssetAdministrationShellDescriptorById

+
+
+

Submodel Registry API as superpath:
+GetAllSubmodelDescriptors
+GetSubmodelDescriptorById

+
+
+

Description API:
+GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

supported

+ +
+
+
+

12.12.6. Submodel Registry Service Specification

+ ++++ + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

SubmodelRegistryServiceSpecification/SSP-001

Full profile

SubmodelRegistryServiceSpecification/SSP-002

Only reads operations; is included in the profile SubmodelRegistryServiceSpecification/SSP-001.

+
+
Submodel Registry Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Registry Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-001

Feature

Appearance

APIs and API Operations

+

Submodel Registry API:
+
GetAllSubmodelDescriptors
+GetSubmodelDescriptorById
+PostSubmodelDescriptor
+PutSubmodelDescriptorById
+DeleteSubmodelDescriptorById

+
+
+

Description API:
+
GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Registry Profile – Read Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Registry Read Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelRegistryServiceSpecification/SSP-002

Feature

Appearance

APIs and API Operations

+

Submodel Registry API:
+
GetAllSubmodelDescriptors
+GetSubmodelDescriptorById

+
+
+

Description API:
+
GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

Supported

+ +
+
+
+

12.12.7. Discovery Service Specification

+ ++++ + + + + + + + + + + + + +
Service Specification / ProfilesDescription

DiscoveryServiceSpecification/SSP-001

Full feature set

+
+
Discovery Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Discovery Service Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/DiscoveryServiceSpecification/SSP-001

Feature

Appearance

API and API Operations

+

AAS Basic Discovery API:
+
GetAllAssetAdministrationShellIdsByAssetLink
+GetAllAssetLinksById
+PostAllAssetLinksById
+DeleteAllAssetLinksById

+
+
+

Description API:
+GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

Not supported

+ +
+
+
+

12.12.8. Asset Administration Shell Repository Service Specification

+ ++++ + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

AssetAdministrationShellRepository
+ServiceSpecification/SSP-001

Full feature set

AssetAdministrationShellRepository
+ServiceSpecification/SSP-002

Only read operations; is included in the profile AssetAdministrationShellRepositoryServiceSpecification/SSP-001

+
+
Asset Administration Shell Repository Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AAS Repository Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-001

Feature

Appearance

API and API Operations

+

AAS Repository API:
+GetAllAssetAdministrationShells
+GetAssetAdministrationShellById
+GetAllAssetAdministrationShellsByAssetId
+GetAllAssetAdministrationShellsByIdShort
+PostAssetAdministrationShell
+PutAssetAdministrationShellById
+DeleteAssetAdministrationShellById

+
+
+

AAS API by superpath:
+GetAssetAdministrationShell
+PutAssetAdministrationShell
+GetAllSubmodelReferences
+PostSubmodelReference
+DeleteSubmodelReference
+GetAssetInformation
+PutAssetInformation
+GetThumbnail
+PutThumbnail
+DeleteThumbnail

+
+
+

Submodel Repository API by superpath:
+
GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort
+PostSubmodel
+PutSubmodelById
+DeleteSubmodelById

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath
+PutFileByPath
+DeleteFileByPath
+PutSubmodel
+PatchSubmodel
+PostSubmodelElement
+PostSubmodelElementByPath
+PutSubmodelElementByPath
+PatchSubmodelElementByPath
+DeleteSubmodelElementByPath
+InvokeOperationSync
+InvokeOperationAsync
+GetOperationAsyncStatus
+GetOperationAsyncResult

+
+
+

AAS Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Asset Administration Shell Repository Service Specification – Read Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:AAS Repository Read Profile

Profile Identifier:

https://admin-shell.io/aas/ API/3/0/AssetAdministrationShellRepositoryServiceSpecification/SSP-002

Feature

Appearance

API and API Operations

+

AAS Repository API:
+GetAllAssetAdministrationShells
+GetAssetAdministrationShellById
+GetAllAssetAdministrationShellsByAssetId
+GetAllAssetAdministrationShellsByIdShort

+
+
+

AAS API by superpath:
+GetAssetAdministrationShell
+GetAllSubmodelReferences
+GetAssetInformation
+GetThumbnail

+
+
+

Submodel Repository API by superpath:
+
GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
+

12.12.9. Submodel Repository Service Specification

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + +
Service Specification / ProfilesDescription

SubmodelRepositoryServiceSpecification/SSP-001

Full feature set

SubmodelRepositoryServiceSpecification/SSP-002

Only read operations; is included in the profile SubmodelRepositoryServiceSpecification/SSP-001

SubmodelRepositoryServiceSpecification/SSP-003

Profile for a Submodel Repository which only contains Submodels with kind=Template; is not included in the profile SubmodelRepositoryServiceSpecification/SSP-001 or the profile SubmodelRepositoryServiceSpecification/SSP-002

SubmodelRepositoryServiceSpecification/SSP-004

Only read operations for a Submodel Repository which only contains Submodels with kind=Template; is included in the profile SubmodelRepositoryServiceSpecification/SSP-003 but not in the profile SubmodelRepositoryServiceSpecification/SSP-001 or the profile SubmodelRepositoryService Specification/SSP-002

+
+
Submodel Repository - Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Repository Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-001

Feature

Appearance

API and API Operations

+

Submodel Repository API:
+
GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort
+PostSubmodel
+PutSubmodelById
+PatchSubmodelById
+DeleteSubmodelById

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath
+PutFileByPath
+DeleteFileByPath
+PutSubmodel
+PatchSubmodel
+PostSubmodelElement
+PostSubmodelElementByPath
+PutSubmodelElementByPath
+PatchSubmodelElementByPath
+DeleteSubmodelElementByPath
+InvokeOperationSync
+InvokeOperationAsync
+GetOperationAsyncStatus
+GetOperationAsyncResult

+
+
+

AAS Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Repository – Read Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Repository Read Profile

Profile Identifier

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-002

Feature

Appearance

API and API Operations

+

Submodel Repository API:
+GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata, Value, Reference, Path

+
+
+

Extent: WithBLOBValue, WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Repository - Template Profile
+
+

The Submodel Repository service specification that only provides and manages Submodel Templates is represented through the profile identifier SubmodelRepositoryServiceSpecification/SSP-003.

+
+
+

Constraint AASa-003: A service implementing the SubmodelServiceSpecification/SSP-003 must not accept or provide any Submodel with the attribute “kind=Instance”.

+
+
+
+
+

Note 1: due to Constraint AASa-003, SubmodelServiceSpecification/SSP-003 can not be combined with SubmodelServiceSpecification/SSP-001 or SubmodelServiceSpecification/SSP-002 as SubmodelService

+
+
+
+
+

Specification/SSP-001 or SubmodelServiceSpecification/SSP-002-compliant services may contain Submodel instances but SubmodelServiceSpecification/SSP-003 not.

+
+
+
+
+

Note 2: future versions may introduce a Submodel Repository Instance Profile.

+
+
+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Repository Template Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-003

Feature

Appearance

API and API Operations

+

Submodel Repository API:
+
GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort
+PostSubmodel
+PutSubmodelById
+PatchSubmodelById
+DeleteSubmodelById

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath
+PutFileByPath
+DeleteFileByPath
+PutSubmodel
+PatchSubmodel
+PostSubmodelElement
+PostSubmodelElementByPath
+PutSubmodelElementByPath
+PatchSubmodelElementByPath
+DeleteSubmodelElementByPath

+
+
+

AAS Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata

+
+
+

Extent: WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
Submodel Repository - Template Read Profile
+
+

The Submodel Repository service specification that only provides Submodel Templates is represented through the profile identifier SubmodelRepositoryServiceSpecification/SSP-004.

+
+
+

Constraint AASa-004: A service implementing the SubmodelServiceSpecification/SSP-004 must not accept or provide any Submodel with the attribute “kind=Instance”.

+
+
+
+
+

Note: due to Constraint AASa-004, SubmodelServiceSpecification/SSP-004 can not be combined with SubmodelServiceSpecification/SSP-001 or SubmodelServiceSpecification/SSP-002 as SubmodelService

+
+
+
+
+

Specification/SSP-001 or SubmodelServiceSpecification/SSP-002-compliant services may contain Submodel instances but SubmodelServiceSpecification/SSP-004 not.

+
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Submodel Repository Template Read Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/SubmodelServiceSpecification/SSP-004

Feature

Appearance

API and API Operations

+

Submodel Repository API:
+
GetAllSubmodels
+GetSubmodelById
+GetAllSubmodelsBySemanticId
+GetAllSubmodelsByIdShort

+
+
+

Submodel API by superpath:
+
GetSubmodel
+GetAllSubmodelElements
+GetSubmodelElementByPath
+GetFileByPath

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

+

Level: Core, Deep

+
+
+

Content: Normal, Metadata

+
+
+

Extent: WithoutBLOBValue

+

SerializationFormat

JSON

Pagination

supported

+ +
+
+
+

12.12.10. Concept Description Repository Service Specification

+ ++++ + + + + + + + + + + + + +
Service Specification / ProfilesDescription

ConceptDescriptionRepositoryServiceSpecification/SSP-001

Full feature set

+
+
Concept Description Repository Service Specification – Full Profile
+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Name:Concept Description Repository Full Profile

Profile Identifier:

https://admin-shell.io/aas/API/3/0/ConceptDescriptionRepositoryServiceSpecification/SSP-001

Feature

Appearance

API and API Operations

+

ConceptDescription Repository API
+GetAllConceptDescriptions
+GetConceptDescriptionById
+GetAllConceptDescriptionsByIdShort
+GetAllConceptDescriptionsByIsCaseOf’
+GetAllConceptDescriptionsByDataSpecificationReference
+PostConceptDescription
+PutConceptDescriptionById
+DeleteConceptDescriptionById

+
+
+

Serialization API:
+GenerateSerializationByIds

+
+
+

Description API:
+GetDescription

+

SerializationModifier

not applicable

SerializationFormat

JSON

Pagination

Supported

+ +
+
+
+
+

12.13. Interactions

+
+

Interactions describe the sequence of calls of operations by a client application to achieve a defined goal in a use case. Future versions of the document will describe interactions for further use cases.

+
+
+

Currently, only the key use case “Access a submodel in a distributed system” with focus on a completely decentralized Industry 4.0 system is described.

+
+
+

Since the interaction diagram in the current version only describes a first subset of interactions, some constraints and assumptions are made according to the configuration and qualities of the system.

+
+
+

Constraints and assumptions for calling an AAS and a submodel operation by a client application:

+
+
+
    +
  • +

    The calling application hast to be aware that endpoints may change at any time. If the application has cached an endpoint that is no longer vivid, the application needs to start the interaction to resolve the appropriate endpoint again from the beginning.

    +
  • +
  • +

    Endpoints for infrastructure interfaces like AAS registries are known at design time of the client application or configured manually before start-up.

    +
  • +
  • +

    The endpoint information of the submodel registry must be known to the client application. The following questions are subject to discussion for future interaction versions:

    +
    +
      +
    1. +

      Will it be accessible via the AAS interface and therefore become a mandatory part of a standard interaction?

      +
    2. +
    3. +

      How much “control” of submodels is implemented in the AAS and how are distributed submodels handled, which are deployed in network areas not accessible by the AAS server application?

      +
    4. +
    +
    +
  • +
  • +

    The AAS server application itself is instantiated and registered by calling an AAS registry interface.

    +
  • +
  • +

    The AAS-ID is known to the calling application.

    +
  • +
  • +

    Access to any API is allowed only if authenticated (mechanisms for authentication are to be described separately) and response follows a defined access rights model for all calls.

    +
  • +
+
+
+

In Figure 7 below, the interaction starts with a client application resolving the interface endpoint of an Asset Administration Shell registry with a known asset ID. The AAS registry provides the AAS Descriptor object belonging to this asset ID and containing the Submodel Descriptors of the Submodels, which are part of the related AAS. Both descriptor kinds, those of the Asset Administration Shell and those of the Submodels, contain endpoint information for the respective AAS and Submodel Repositories. AAS interface operations – independent of the underlying protocol – are used to retrieve the AAS from the AAS repository answering at one of the supplied endpoints. In the sequence shown in Figure 7, one submodel of this AAS is also provided through the same repository. For the second submodel, however, only the submodel identifier is provided by the AAS registry, while the endpoint information is empty. Therefore, the client application must execute another look-up at a dedicated Submodel Registry, which responds with one Submodel Descriptor object. Equipped with this information, the client application locates the stand-alone Submodel Repository and downloads the second submodel.

+
+
+
+image26 +
+
Figure 7. Interactions for Client Applications using AAS and Submodel Interfaces (independent Submodel Registry)
+
+
+

Figure 8 shows a slight variant of the scenario in Figure 7. The AAS Registry only returns the AAS Descriptor without any Submodel Descriptors. The client application retrieves the AAS from the discovered AAS Repository endpoint and learns about its submodel references. Using these references, the client can ask a Submodel Registry, in this case also hosted by the repository server, for the respective Submodel Descriptors. It understands that the Submodels are also available at the same server and downloads them by sending requests to the Submodel Interface.

+
+
+
+Ein Bild +
+
Figure 8. Interaction for Client Application using AAS and Submodel Interfaces (included Submodel Registry)
+
+
+

The difference between Interface and API Operations is outlined in Figure 9. This sequence translates the interaction on the interface level of Figure 7, which is protocol-independent and therefore can be implemented in several different manners, to the specific HTTP API Operations. The generic operations are replaced with HTTP requests, e.g. “GetAasDescriptorById” with “GET /shell-descriptors/<aas-id>”. The returned objects are shortened for better readability. The first request to the Submodel API shows the concatenated path (“/shells/<aas-id>/aas” + “/submodels/<submodel-id>”) and illustrates how contained submodels can be provided natively through an AAS API.

+
+
+
+image28 +
+
Figure 9. Interaction for Client Application using AAS and Submodels (for HTTP API Operations)
+
+
+
+

12.14. Security

+
+

The AAS metamodel includes a security metamodel, which is defined in the chapter “Overview Metamodel of Administration Shell w.r.t. Security”. This chapter was part of “Details of the Asset Administration Shell Part 1” until version 3.0 RC02. Since Part 1 has been split for the release of version 3.0, this chapter will become the basis of “Specification of the Asset Administration Shell. Part 4: Security”. In addition to the security metamodel, Part 4 will define e.g. authentication, further details about authorization, and signature of data.

+
+
+

Authentication is mandatory. Depending on the ecosystem the AAS uses, different authentication mechanisms might be in place. This clause explains one exemplary authentication mechanisms, which has been developed by the security working group (AG3) of Plattform Industrie 4.0. Other authentication services (e.g. Username/Password, DID=Decentralized Identifiers, Verifiable Credentials, EDC=Eclipse Data Space Connector, or IDS=International Data Spaces) may also be used to receive an access token for authorization.

+
+
+

The following paragraphs describe the most important steps for token-based authentication of the HTTP/REST APIs. For more details, see “Secure Downloadservice” (https://www.plattform-i40.de/PI40/Redaktion/EN/Downloads/Publikation/secure_downloadservice.html). Figure 10 gives an overview.

+
+
+
+Ein Bild +
+
Figure 10. The private_key_certchain_jwt Method […​download service]
+
+
+

A client application uses a client certificate to create a certificate chain. The certificate chain can be checked on the authentication server by the corresponding Root CA certificate, which is signed by a certification authority (CA). The client application sends the certificate chain to the authentication server as token request by a JSON Web Token (JWT). The JWT is signed by the client’s private key corresponding to the client certificate (JWT = Data + Signature).

+
+
+

If the authentication is approved, the client application receives an access token from the authentication server (not shown in Figure 10).

+
+
+

Such an access token contains attributes from the client certificate (e.g. username, email address) which will be sent as HTTP header bearer token to the AAS server application. The latter will check, whether the access token has been signed by a trusted authentication server and will make the authorization according to the AAS security metamodel.

+
+
+

A running demo is explained in “Secure Downloadservice”. A corresponding server can be seen on https://admin-shell-io.com/5011/ with a related security AAS at the bottom.

+
+
+

The AAS security metamodel does not deal with authentication; it assumes that the user is already authenticated. The example security AAS is only created for demonstration purposes and is not standardized. Since the version of the AASX Package Explorer used does not yet support the AAS security metamodel, the required information in subsequent steps like the access permission rules for AAS are modelled as a submodel.

+
+
+

The different security and authentication steps are explained in the video https://admin-shell-io.com/screencasts/security/Industrie_40_Security_with_AASX_Server.mp4.

+
+
+
+

12.15. API Code Generation

+
+

SwaggerHub includes the possibility to generate code from an API, e.g. for C# .NET:

+
+
+

Ein Bild

+
+
+

API code can be created for both servers and clients in various programming languages.

+
+
+

Known issues include the following:

+
+
+
    +
  • +

    When generating the aspnetcore server stub for the AssetAdministrationShellEnvironmentApi, the operation PutFileByPath is not generated automatically and must be added manually.

    +
  • +
  • +

    When generating the aspnetcore server stub for the AasxFileServerInterfaceApi, the operations PostAASXPackage and PutAASXPackageById are not generated automatically and must be added manually.

    +
  • +
+
+
+

The SwaggerHub code generator development team is not part of the AAS activities and has been informed about these issues.

+
+
+
+
+
+

13. Summary and Outlook

+
+
+

This document specifies the interfaces for a single Asset Administration Shell and its Submodels, as well as for a repository of Asset Administration Shells. Additionally, infrastructural interfaces like Registry and Discovery of a set of Asset Administration Shells are specified.

+
+
+

All interfaces are specified in a technology-neutral way before defining technology-specific APIs.

+
+
+

In this version of the specification, HTTP/REST APIs are defined and mapped to the technology-neutral specification as a frontrunner.

+
+
+

In subsequent versions of this specification, APIs using other technologies are planned to be supported, e.g. gRPC or MQTT.

+
+
+

Additionally, further interfaces, service specifications, and profiles may be defined. Querying will also be a topic.

+
+
+

Another very important topic that will be looked at in upcoming versions of the specification in more detail is the definition of access control based on the information provided by an Asset Administration Shell to ensure the trustworthiness of the contained information across different system boundaries.

+
+
+
+
+

Appendix A: Templates used for Specification

+
+
+

This Annex explains the table templates used for documentation of interfaces, operations, data types, etc.

+
+
+

Card. is the cardinality (or multiplicity) defining the lower and upper bound of the number of instances of the member element. "" denotes an arbitrary infinite number of elements of the corresponding Type. "0..1" means optional. "0.." or "0..3" etc. means that the list may be either not available (null object) or empty or has infinitely many / exactly three elements.

+
+
+
+
+

Note: attributes having a default value are always considered to be optional; there is always a value for the attribute because the default value is used for initialization in this case.

+
+
+
+ + ++++ + + + + + + + + + + + + + + + + + + + + + + + +
Table 18. Interface Description
Interface: <Interface Name>

Operation Name

Description

Oper1

+

Human-understandable description of the operation of the interface. Only major input and output information shall be described, no individual request and result parameters.

+
+
+
+
+

Note: all words in the service operation name are written together in italics without a blank in between. The first letter of the first word is lower case, all other words are upper case.

+
+
+

operN (optional)

Human-understandable description of the operation n of the interface. Optional operations are to be marked by suffix (optional) after the operation name.

+ + ++++ + + + + + + + + + + + + + + +
Table 19. Operation Description

Operation Name:

Name of the operation: all individual words in the operation name are capitalized

Explanation:

+

Human-understandable description of the functionality

+
+
+

The operation provides its functionality through the following input and output parameters:

+
+
+
    +
  • +

    Input parameter 1: human-understandable description of the purpose of the input parameter 1

    +
  • +
  • +

    +
  • +
  • +

    Input parameter N: human-understandable description of the purpose of input parameter N

    +
  • +
  • +

    Output parameter 1: human-understandable description of the purpose of output parameter 1: human-understandable description of the purpose of the input parameter 1

    +
  • +
  • +

    +
  • +
  • +

    Output Parameter N: human-understandable description of the purpose of output parameter N:

    +
  • +
+
+
+

If payload is mentioned as output parameter, only the returned payload in case of a successful operation (status code: Success, SuccessCreated) is denoted in column Type. In case of failure see Clause 10.2.9.1.

+
+
+

If no payload is mentioned as output parameter, the status code shall be SuccessNoContent in case of success, otherwise see Clause 0.

+
+
+

Convention: all words in the interface name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters.

+

semanticId

The unique identifier of this operation

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionMand.TypeCard.

Input Parameter

inputParameter1

Human-understandable description of the input parameter 1 of the operation.

States whether the inputParameter1 is mandatory (“yes”) or optional (“no”)

Type of the input parameter 1

The cardinality of type of the inputParameter1, e.g. zero-to-one (“0..1”) or at-least-one (“1..*).

inputParameterN

Human-understandable description of the input parameter N of the operation.

States whether the inputParameterN is mandatory (“yes”) or optional (“no”)

Type of the input parameter N

The cardinality of type of the inputParameterN, e.g. zero-to-one (“0..1”) or at-least-one (“1..*).

Output Parameter

outputParameter1

Human-understandable description of the output parameter 1 of the operation.

States whether the outputParameter1 is mandatory (“yes”) or optional (“no”)

+

Type of the output

+
+
+

parameter 1

+

The cardinality of type of the outputParameter1, e.g. zero-to-one (“0..1”) or at-least-one (“1..*).

outputParameterN

Human-understandable description of the output parameter N of the operation.

+ + ++++ + + + + + + + + + + + + + + + + + + +
Table 20. Data Types for Payload Description

Class Name

Name of the class: all individual words in the class name are capitalized

Explanation

+

Human-understandable description of the class

+
+
+

The Class has following attributes:

+
+
+
    +
  • +

    Attribute 1: human-understandable description of the purpose of the attribute 1

    +
  • +
  • +

    +
  • +
  • +

    Attribute N: human-understandable description of the purpose of the attribute N

    +
  • +
+
+
+

Convention: all words in the class name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters.

+

Inherits from

Name of the class this class inherits from

semanticId

The unique identifier of this class

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Attribute
+(
= mandatory)*
ExplanationTypeCard.

attribute1

Human-understandable description of the attribute 1 of the class.

Type of the attribute 1

Cardinality of the attribute 1

attributeN

Human-understandable description of the attribute N of the class.

Type of the attribute N

Cardinality of the attribute N

+ + ++++ + + + + + + + + + + + + + + +
Table 21. Enumeration Description

Enumeration Name:

Name of the enumeration: all individual words in the enumeration name are capitalized

Explanation:

+

Human-understandable description of the enumeration

+
+
+

The enumeration has following literals:

+
+
+
    +
  • +

    Literal 1: human-understandable description of the purpose of the literal 1

    +
  • +
  • +

    +
  • +
  • +

    Literal N: human-understandable description of the purpose of the literal N

    +
  • +
+
+
+

Convention: all words in the enumeration name are written together in italics without a blank in between. The first letter of the first word and all other words are written in upper case letters.

+

semanticId

The unique identifier of this enumeration

+ ++++ + + + + + + + + + + + + + + + + + + + + +
LiteralDescription

Literal1

Human-understandable description of the literal 1 of the enumeration.

LiteralN

Human understandable description of the literal N of the enumeration.

+
+
+
+

Appendix B: ValueOnly-Serialization Example

+
+
+

The following example shows the ValueOnly-Serialization for an entire Submodel that validates against the JSON-schema specified in Clause 11.4.3.
+As mentioned in Clause 11.4.3, SubmodelElementCollections cannot be validated within the same schema due to circularity reasons; instead they have their own specific validation schema. An exemplary SubmodelElementCollection is added to the following JSON for completeness. It is, however, not validatable against the schema in Clause 11.4.3 due to the reasons mentioned above.

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+
{
+  "MyPropertyIdShortNumber": 5000,
+  "MyPropertyIdShortString": "MyTestStringValue",
+  "MyPropertyIdShortBoolean": true,
+  "MyMultiLanguageProperty": [
+    {
+      "de": "Das ist ein deutscher Bezeichner"
+    },
+    {
+      "en": "That's an English label"
+    }
+  ],
+  "MyRange": {
+    "min": 3,
+    "max": 15
+  },
+  "MyFile": {
+    "contentType": "application/pdf",
+    "value": "SafetyInstructions.pdf"
+  },
+  "MyBlob": {
+    "contentType": "application/octet-stream",
+    "value": "VGhpcyBpcyBteSBibG9i"
+  },
+  "MyEntity": {
+    "statements": {
+      "MaxRotationSpeed": 5000
+    },
+    "entityType": "SelfManagedEntity",
+    "globalAssetId": "http://customer.com/demo/asset/1/1/MySubAsset"
+  },
+  "MyReference": {
+    "type": "ModelReference",
+    "keys": [
+      {
+        "type": "Submodel",
+        "value": "http://customer.com/demo/aas/1/1/1234859590"
+      },
+      {
+        "type": "Property",
+        "value": "MaxRotationSpeed"
+      }
+    ]
+  },
+  "MyBasicEvent": {
+    "observed": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "CurrentValue"
+        }
+      ]
+    }
+  },
+  "MyRelationship": {
+    "first": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "PlusPole"
+        }
+      ]
+    },
+    "second": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/0/1234859123490"
+        },
+        {
+          "type": "Property",
+          "value": "MinusPole"
+        }
+      ]
+    }
+  },
+  "MyAnnotatedRelationship": {
+    "first": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/1/1234859590"
+        },
+        {
+          "type": "Property",
+          "value": "PlusPole"
+        }
+      ]
+    },
+    "second": {
+      "type": "ModelReference",
+      "keys": [
+        {
+          "type": "Submodel",
+          "value": "http://customer.com/demo/aas/1/0/1234859123490"
+        },
+        {
+          "type": "Property",
+          "value": "MinusPole"
+        }
+      ]
+    },
+    "annotation": [
+      {
+        "AppliedRule": "TechnicalCurrentFlowDirection"
+      }
+    ]
+  },
+  "MySubmodelElementIntegerPropertyList": [
+    1,
+    2,
+    30,
+    50
+  ],
+  "MySubmodelElementFileList": [
+    {
+      "contentType": "application/pdf",
+      "value": "MyFirstFile.pdf"
+    },
+    {
+      "contentType": "application/pdf",
+      "value": "MySecondFile.pdf"
+    }
+  ],
+  "MySubmodelElementCollection":
+  {
+    "myStringElement": "That’s a string",
+    "myIntegerElement": 5,
+    "myBooleanElement": true
+  }
+}
+
+
+
+
+
+

Appendix C: SerializationModifier Examples

+
+
+

C.1. Description

+
+

SerializationModifiers are only allowed for GET and PATCH operations.

+
+
+

GET operations can use any combination of SerializationModifiers.

+
+
+

POST operations create new resources using the input content.

+
+
+

PUT operations replace existing resources using the input content.

+
+
+

POST and PUT use the regular serialization. The client creates the input content as needed, so that no further SerializationModifiers need to be used.

+
+
+

PATCH operations may use the regular serialization, the metadata serialization, or the ValueOnly- serialization. The SerializationModifier Core is not used. The resources in the input content must already exist on the server and are replaced one by one accordingly. If one of the resources in the input content does not exist, no changes will be made on the server. “Resource exists” means, that the type of a SubmodelElement is the same in the input content and on the server. For example, a property may only be replaced by a property; elements of a SubmodelElementCollection or SubmodelElementList can only be replaced if they already exist on the server. A SubmodelElementList with five elements cannot be patched with a SubmodelElementList with more than five elements. A SubmodelElementList with five elements can be patched with a SubmodelElementList with less than five elements since all required elements starting from index 0 already exist.

+
+
+
+
+

Note: values remain unchanged with content=metadata.

+
+
+
+
+
+

C.2. Examples for GET Operations

+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Deep (default)Core

Normal
+(default)

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData",
+  "semanticId": {
+    "keys": [ {
+        "type": "GlobalReference",
+        "value": "0173-1#01-AFZ615#016"
+    } ],
+    "type": "ExternalReference"
+  },
+  "submodelElements": [ {
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    },
+    "value": [ {
+        "modelType": "Property",
+        "idShort": "MaxRotationSpeed",
+        "category": "PARAMETER",
+        "semanticId": {
+          "keys": [ {
+              "type": "ConceptDescription",
+              "value": "0173-1#02-BAA120#008"
+          } ],
+          "type": "ExternalReference"
+        },
+        "valueType": "xs:int",
+        "value": "5000"
+      } ]
+  } ]
+}
+
+
+
+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData",
+  "semanticId": {
+    "keys": [ {
+        "type": "GlobalReference",
+        "value": "0173-1#01-AFZ615#016"
+    } ],
+    "type": "ExternalReference"
+  },
+  "submodelElements": [ {
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    }
+  } ]
+}
+
+
+

Metadata

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData",
+  "semanticId": {
+    "keys": [ {
+        "type": "GlobalReference",
+        "value": "0173-1#01-AFZ615#016"
+    } ],
+    "type": "ExternalReference"
+  },
+  "submodelElements": [ {
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    },
+    "value": [ {
+        "modelType": "Property",
+        "idShort": "MaxRotationSpeed",
+        "category": "PARAMETER",
+        "semanticId": {
+          "keys": [ {
+              "type": "ConceptDescription",
+              "value": "0173-1#02-BAA120#008"
+          } ],
+          "type": "ExternalReference"
+        },
+        "valueType": "xs:int"
+      } ]
+  } ]
+}
+
+
+
+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData",
+  "semanticId": {
+    "keys": [ {
+        "type": "GlobalReference",
+        "value": "0173-1#01-AFZ615#016"
+    } ],
+    "type": "ExternalReference"
+  },
+  "submodelElements": [ {
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    }
+  } ]
+}
+
+
+
+
+

If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+
{
+   "modelType": "Property",
+   "idShort": "DocumentId",
+   "category": "PARAMETER",
+   "semanticId": {
+       "keys": [ {
+           "type": "GlobalReference",
+           "value": "0173-1#02-BAA120#008"
+       } ] ,
+       "type": "ExternalReference"
+   },
+   "valueType": "xs:int"
+}
+
+
+

Value

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+
{
+  "TechnicalData": {
+    "RotationSpeed": {
+      "MaxRotationSpeed": "5000"
+    }
+  }
+
+
+
+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+
{
+  "TechnicalData": {
+    "RotationSpeed": {}
+  }
+}
+
+
+

Reference

+

Not allowed, see Clause 12.8:

+
+
+

“The combination of Level=Deep and Content=Reference is not allowed.”

+
+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+
{
+  "keys": [ {
+     "type": "Submodel",
+     "value": "http://i40.customer.com/type/1/1/7A7104BDAB57E184"
+  } ],
+  "type": "ModelReference"
+}
+
+
+
+

If applied to the Property inside the SubmodelElementCollection, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+
{
+  "keys": [ {
+     "type": "Submodel",
+     "value": "http://i40.customer.com/type/1/1/7A7104BDAB57E184"
+  }, {
+     "type": "SubmodelElementCollection",
+     "value": "RotationSpeed"
+  }, {
+     "type": "Property",
+     "value": "MaxRotationSpeed"
+  }],
+  "type": "ModelReference"
+}
+
+
+

Path

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+
[
+ "RotationSpeed",
+ "RotationSpeed.MaxRotationSpeed"
+]
+
+
+
+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+
[
+  "RotationSpeed"
+]
+
+
+
+

If applied to the Property inside the SubmodelElementCollection:

+
+
+
+

+  
+  
+
1
+
[ ]
+
+
+
+
+

C.3. Examples for PATCH Operations

+ ++++ + + + + + + + + + + + + + + + + + + +

Deep (default)

Normal (default)

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData",
+  "semanticId": {
+    "keys": [ {
+        "type": "GlobalReference",
+        "value": "0173-1#01-AFZ615#016"
+    } ],
+    "type": "ExternalReference"
+  },
+  "submodelElements": [ {
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+        "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    },
+    "value": [ {
+        "modelType": "Property",
+        "idShort": "MaxRotationSpeed",
+        "category": "PARAMETER",
+        "semanticId": {
+          "keys": [ {
+              "type": "ConceptDescription",
+              "value": "0173-1#02-BAA120#008"
+          } ],
+          "type": "ExternalReference"
+        },
+        "valueType": "xs:int",
+        "value": "5000"
+      } ]
+  } ]
+}
+
+
+
+

If applied to the SubmodelElementCollection, i.e. idShortPath “OperatingManual”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+
{
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    },
+    "value": [ {
+        "modelType": "Property",
+        "idShort": "MaxRotationSpeed",
+        "category": "PARAMETER",
+        "semanticId": {
+          "keys": [ {
+              "type": "ConceptDescription",
+              "value": "0173-1#02-BAA120#008"
+          } ],
+          "type": "ExternalReference"
+        },
+        "valueType": "xs:int",
+        "value": "5000"
+   } ]
+}
+
+
+
+
+

If applied to the Property, i.e. idShortPath “OperatingManual.DocumentId”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+
{
+  "modelType": "Property",
+  "idShort": "MaxRotationSpeed",
+  "category": "PARAMETER",
+  "semanticId": {
+    "keys": [ {
+      "type": "ConceptDescription",
+      "value": "0173-1#02-BAA120#008"
+    } ],
+    "type": "ExternalReference"
+  },
+  "valueType": "xs:int",
+  "value": "5000"
+}
+
+

Metadata

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+
{
+  "modelType": "Submodel",
+  "id": "http://i40.customer.com/type/1/1/7A7104BDAB57E184",
+  "idShort": "TechnicalData"
+}
+
+
+
+

If applied to the SubmodelElementCollection, i.e. idShortPath “RotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+
{
+    "modelType":  "SubmodelElementCollection",
+    "idShort": "RotationSpeed",
+    "semanticId": {
+      "keys": [ {
+          "type": "GlobalReference",
+          "value": "http://purl.org/iot/vocab/iot-taxonomy-lite#RotationalSpeed"
+      } ],
+      "type": "ExternalReference"
+    }
+}
+
+
+
+

If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+
{
+  "modelType": "Property",
+  "idShort": "MaxRotationSpeed",
+  "category": "PARAMETER",
+  "semanticId": {
+    "keys": [ {
+        "type": "ConceptDescription",
+        "value": "0173-1#02-BAA120#008"
+    } ],
+    "type": "ExternalReference"
+  }
+}
+
+

Value

+

If applied to the Submodel:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+6
+7
+
{
+  "TechnicalData": {
+    "RotationSpeed": {
+      "MaxRotationSpeed": "5000"
+    }
+  }
+}
+
+
+
+

If applied to the SubmodelElementCollection, i.e. idShortPath “RotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+4
+5
+
{
+    "RotationSpeed": {
+      "MaxRotationSpeed": "5000"
+    }
+}
+
+
+
+

If applied to the Property, i.e. idShortPath “RotationSpeed.MaxRotationSpeed”:

+
+
+
+

+  
+  
+
1
+2
+3
+
{
+   "MaxRotationSpeed": "5000"
+}
+
+
+
+
+
+
+

Appendix D: Backus-Naur-Form

+
+
+

The Backus-Naur form (BNF) – a meta-syntax notation for context-free grammars – is used to define grammars. For more information see Wikipedia [6].

+
+
+

A BNF specification is a set of derivation rules, written as

+
+
+

<symbol> ::= expression

+
+
+

where:

+
+
+
    +
  • +

    <symbol> is a nonterminal (variable) and the expression consists of one or more sequences of either terminal or nonterminal symbols,

    +
  • +
  • +

    ::= means that the symbol on the left must be replaced with the expression on the right,

    +
  • +
  • +

    more sequences of symbols are separated by the vertical bar "|", indicating a choice, the whole being a possible substitution for the symbol on the left,

    +
  • +
  • +

    symbols that never appear on a left side are terminals, while symbols that appear on a left side are non-terminals and are always enclosed between the pair of angle brackets <>,

    +
  • +
  • +

    terminals are enclosed with quotation marks: "text". "" is an empty string,

    +
  • +
  • +

    optional items are enclosed in square brackets: [<item-x>],

    +
  • +
  • +

    items existing 0 or more times are enclosed in curly brackets are suffixed with an asterisk () such as <word> ::= <letter> \{<letter>},

    +
  • +
  • +

    Items existing 1 or more times are suffixed with an addition (plus) symbol, , such as <word> ::= \{<letter>},

    +
  • +
  • +

    round brackets are used to explicitly to define the order of expansion to indicate precedence, example: ( <symbol1> | <symbol2> ) <symbol3>,

    +
  • +
  • +

    text without quotation marks is an informal explanation of what is expected; this text is cursive if grammar is non-recursive and vice versa.

    +
  • +
+
+
+

Example:

+
+
+

<contact-address> ::= <name> "e-mail addresses:" <e-mail-Addresses>

+
+
+

<e-mail-Addresses> ::= \{<e-mail-Address>}*

+
+
+

<e-mail-Addresse> ::= <local-part> "@" <domain>

+
+
+

<name> ::= characters

+
+
+

<local-part> ::= characters conformant to local-part in RFC 5322

+
+
+

<domain> ::= characters conformant to domain in RFC 5322

+
+
+
+
+

Valid contact addresses:

+
+
+

Hugo Me e-mail addresses: Hugo@example.com

+
+
+

Hugo e-mail addresses: Hugo.Me@text.de

+
+
+

Invalid contact addresses:

+
+
+

Hugo

+
+
+

Hugo Hugo@ example.com

+
+
+

Hugo@example.com

+
+
+
+
+
+
+

Appendix E: Change Notes

+
+
+

E.1. General

+
+
    +
  • +

    * Means not backward compatible

    +
  • +
  • +

    (*) means not backward compatible but just renaming

    +
  • +
+
+
+
+

E.2. Interface Changes w.r.t. V1.0RC03 to V3.0

+
+

Major Changes:

+
+
+
    +
  • +

    Introduction of service specifications and profiles

    +
  • +
  • +

    Introduction of pagination for "GetAll*" API operations in http/REST

    +
  • +
  • +

    Distinction between replace and update for operations

    +
  • +
  • +

    SerializationModifier Content as path: $metadata, $value, $reference, $path

    +
  • +
  • +

    Introduction of length constraints for string attributes

    +
  • +
+
+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BWCInterface ChangeKind of ChangeComment

Submodel

New

+

PatchSubmodel and PatchSubmodelElementByPath

+
+
+

(PUT to completely replace and PATCH to update content)

+
+

Asset Administration Shell,

+
+
+

Submodel,

+
+
+

AASX File Server,

+
+
+

AAS Repository,

+
+
+

Submodel Repository,

+
+
+

CD Repository,

+
+
+

AAS Registry,

+
+
+

Submodel Registry,

+
+
+

AAS Basic Discovery

+

Changed

+

Add Pagination:

+
+
+

GetAllAssetAdministrationShells

+
+
+

GetAllAssetAdministrationShellsByAssetId

+
+
+

GetAllAssetAdministrationShellsByIdShort

+
+
+

GetAllSubmodelReferences

+
+
+

GetAllSubmodels

+
+
+

GetAllSubmodelsBySemanticId

+
+
+

GetAllSubmodelsByIdShort

+
+
+

GetAllSubmodelElements

+
+
+

GetSubmodelElementByPath

+
+
+

GetAllConceptDescriptions

+
+
+

GetAllConceptDescriptionsByIdShort

+
+
+

GetAllConceptDescriptionsByIsCaseOf

+
+
+

GetAllConceptDescriptionsByDataSpecificationReference

+
+
+

GetAllAssetAdministrationShellDescriptors

+
+
+

GetAllSubmodelDescriptors

+
+
+

GetAllAssetAdministrationShellIdsByAssetLink

+
+
+

GetAllAASXPackageIds

+

Submodel

Changed

SerializationModifier Content as path: $metadata, $value, $reference, $path

Asset Administration Shell

New

GetThumbnail, PutThumbnail

Submodel Repository

New

PatchSubmodelForId was missing

Registry

New

Add extensions to descriptor

AssetAdministrationShellDescriptor

New

Add the attributes assetKind and assetType

SubmodelDescriptor

New

Add supplementalSemanticId

*

Changed

Rename GetDescriptor to GetDescription

*

Changed

API versioning with major + minor

*

New

Profiles

*

Changed

Clarify service specifications and APIs

CD Registry

Changed

Renaming parameter ‘cdIdentifier’ in GetConceptDescriptionById to ‘id’. Parameter has not been changed in the HTTP API.

+
+
+

E.3. Operation Changes w.r.t. V1.0RC03 to V3.0

+ ++++++ + + + + + + + + + + + + + + + + +
Operation Change OldOperation Change NewKind of ChangeComment

GetDescriptor

GetDescription

Changed

Rename, get profiles

+
+
+

E.4. Interface Changes w.r.t. V1.0RC02 to V1.0RC03

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BWCInterface ChangeKind of ChangeComment

*

Discovery

Changed

IndentifierKeyValuePair to SpecificAssetId

*

Submodel

Changed

SubmodelElementStruct remains as SubmodelElementCollection

*

Submodel

Changed

ModelReference and GlobalReference are combined back to Reference

*

Submodel

Changed

Rename trimmed to metadata

Submodel

New

Add GetFileByPath

Submodel

New

Add PutFileByPath

*

Submodel

Changed

InvokeOperationAsync

Registry

Changed

Endpoint

*

Registry

Changed

Remove /registry from REST path

*

All

New

API Versioning adds a prefix to all interfaces

+
+
+

E.5. Operation Changes w.r.t. V1.0RC02 to V1.0RC03

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Operation Change OldOperation Change NewKind of ChangeComment

Changed

inputArgument and inoutputArgument are OperationVariable

GetAllAssetAdminstrationShellsByAssetLink

Changed

IdentifierKeyValuePair to SpeicifcAssetId

GetAllAssetLinksById

Changed

IdentifierKeyValuePair to SpeicifcAssetId

PostAllAssetLinksById

Changed

IdentifierKeyValuePair to SpeicifcAssetId

+
+
+

E.6. Interface Changes w.r.t. V1.0RC01 to V1.0RC02

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BWCInterface ChangeKind of ChangeComment

*

Asset Administration Shell

Changed

+

Renamed:

+
+
+

RemoveSubmodelReference to DeleteSubmodelReference

+
+
+

Removed:

+
+
+

PutSubmodelReference, PatchAssetAdministrationShell

+
+
+

New:

+
+
+

GetAssetInformation

+
+
+

PutAssetInformation

+
+
+

GetAllSubmodelReferences

+
+
+

PostSubmodelReference

+

*

Submodel

Changed

+

Removed:

+
+
+

GetAllSubmodelElementsByParentPathAndSemanticId, GetAllSubmodelElementsBySemanticId

+
+
+

New:

+
+
+

PutSubmodel, PostSubmodelElement, PostSubmodelElementByPath

+

*

Asset Administration Shell Serialization

Changed

+

Renamed:

+
+
+

GetSerializationByIds to GenerateSerializationByIds

+
+
+

Removed:

+
+
+

GetAASX

+

AASX File Server

New

New interface

(*)

Asset Administration Shell Registry

Changed

+

Renamed: PutAssetAdministrationShellDescriptor to PutAssetAdministrationShellDescriptorById

+
+
+

New:

+
+
+

PostAssetAdministrationShellDescriptor

+

(*)

Submodel Registry

Changed

+

Renamed:

+
+
+

PutSubmodelDescriptor to PutSubmodelDescriptorById

+
+
+

New:
+PostSubmodelDescriptor

+

(*)

Asset Administration Shell Repository

Changed

+

Renamed:

+
+
+

GetAllAssetAdministrationShellsById to GetAssetAdministrationShellById,

+
+
+

PutAssetAdministrationShell to PutAssetAdministratioShellById

+
+
+

New:

+
+
+

PostAssetAdministrationShell

+

(*)

Submodel Repository

Changed

+

Renamed:

+
+
+

PutSubmodel to PutSubmodelById

+
+
+

New:

+
+
+

PostSubmodel

+

(*)

Asset Administration Shell Basic Discovery

Changed

+

Removed: GetAllAssetAdministrationShellIdsByAssetId,

+
+
+

PutAssetId

+
+
+

New: GetAllAssetAdministrationShellIdsByAssetLink, GetAllAssetLinksById, PutAllAssetLinksById, DeleteAllAssetLinksById

+

(*)

Submodel Discovery Basic

Removed

(*)

Concept Description Repository

Changed

+

Renamed: GetAllConceptDescriptionsWtihDataSpecificationReference to GetAllConceptDescriptionsByDataSpecificationReference, PutConceptDescription to PutConceptDescriptionById

+
+
+

New:

+
+
+

PostConceptDescription

+
+
+
+

E.7. Operation Changes w.r.t. V1.0RC01 to V1.0RC02

+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Operation Change OldOperation Change NewKind of ChangeComment

PatchAssetAdministrationShell

Removed

PutSubmodelReference

Removed

Substituted by PostSubmodelReference

PostSubmodelReference

New

For PutSubmodelReference

RemoveSubmodelReference

DeleteSubmodelReference

Changed

GetAllSubmodelReferences

New

PostSubmodelReference

New

GetAssetInformation

New

PutAssetInformation

New

PutSubmodel

New

PostSubmodelElement

New

PostSubmodelElementByPath

New

GetAllSubmodelElementsByParentPathAndSemanticId

Removed

GetAllSubmodelElementsBySemanticId

Removed

GetAASX

Removed

GetSerializationByIds

GenerateSerializationByIds

Renamed

GetAllAASXPackageIds

New

GetAASXByPackageId

New

PostAASXPackage

New

PutAASXByPackageId

New

DeleteAASXByPackageId

New

PutAssetAdministrationShellDescriptor

PutAssetAdministrationShellDescriptorById

Changed

Naming pattern byId

PostAssetAdministrationDescriptor

New

PutSubmodelDescriptor

PutSubmodelDescriptorById

Changed

Naming pattern byId

PostSubmdeoDescriptor

New

GetAllAssetAdministrationShellsById

GetAssetAdministrationShellById

Changed

Naming pattern resource singular

PostAssetAdministrationShell

New

PutAssetAdministrationShell

PutAssetAdministrationShellById

Changed

Naming pattern byId

PutSubmodel

PutSubmodelById

Changed

Naming pattern byId

PostSubmodel

New

GetAllAssetAdministrationShellIdsByAssetId

Removed

substituted by GetAllAssetAdministrationShellIdsByAssetLink and GetAllAssetLinksById

PutAssetId

Removed

Substituted by PutAllAssetLinksById and DeleteAllAssetLinksById

GetAllAssetAdministrationShellIdsByAssetLink

New

Before: GetAllAssetAdministrationShellIdsByAssetId

GetAllAssetLinksById

New

PutAllAssetLinksById

New

DeleteAllAssetLinksById

New

GetAllSubmodelIdsBySemanticId

Removed

GetAllConceptDescriptionsWithDataSpecificationReference

GetAllConceptDescriptionsByDataSpecificationReference

Renamed

Renaming With  By

PutConceptDescription

PutConceptDescriptionById

Changed

Naming pattern byId

PostConceptDescription

New

+
+
+
+
+

Bibliography

+
+
+

[1] Specification of the Asset Administration Shell. Part 1: Metamodel, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub

+
+
+

[2] Specification of the Asset Administration Shell. Part 3a: Data Specification – IEC 61360, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub

+
+
+

[3] Specification of the Asset Administration Shell. Part 5: Package File Format, Version 3.0. Industrial Digital Twin Association (IDTA), March 2023. Online. Available: https://industrialdigitaltwin.org/en/content-hub

+
+
+

[4] Tom Preston-Werner. Semantic Versioning. Version 2.0.0. Online. Available: https://semver.org/spec/v2.0.0.html

+
+
+

[5] RFC 8820: URI Design and Ownership. Internet Engineering Task Force (IETF), 2020. Online. Available: https://tools.ietf.org/html/rfc8820

+
+
+

[6] DIN SPEC 91406: “Automatic identification of physical objects and information on physical objects in IT systems, particularly IoT systems”. December 2019. Online. Available: https://www.beuth.de/de/technische-regel/din-spec-91406/314564057

+
+
+

[7] Decentralized Identifiers (DIDs) v1.0. Edited by Manu Sporny, Amy Guy, Markus Sabadello, and Drummond Reed. W3C Recommendation. Online. Available: https://www.w3.org/TR/did-core/

+
+
+

[8] OData Version 4.01 Part 1: Protocol. Edited by Michael Pizzo, Ralf Handl, and Martin Zurmuehl. OASIS Standard. Online. Available: https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html

+
+
+
+
+ + + \ No newline at end of file diff --git a/documentation/media/image1.jpeg b/documentation/media/image1.jpeg new file mode 100644 index 00000000..bd42978e Binary files /dev/null and b/documentation/media/image1.jpeg differ diff --git a/documentation/media/image10.emf b/documentation/media/image10.emf new file mode 100644 index 00000000..f9d81961 Binary files /dev/null and b/documentation/media/image10.emf differ diff --git a/documentation/media/image10.png b/documentation/media/image10.png new file mode 100644 index 00000000..760befdc Binary files /dev/null and b/documentation/media/image10.png differ diff --git a/documentation/media/image11.emf b/documentation/media/image11.emf new file mode 100644 index 00000000..27614b27 Binary files /dev/null and b/documentation/media/image11.emf differ diff --git a/documentation/media/image11.png b/documentation/media/image11.png new file mode 100644 index 00000000..1b6a1c0c Binary files /dev/null and b/documentation/media/image11.png differ diff --git a/documentation/media/image12.emf b/documentation/media/image12.emf new file mode 100644 index 00000000..07578564 Binary files /dev/null and b/documentation/media/image12.emf differ diff --git a/documentation/media/image12.png b/documentation/media/image12.png new file mode 100644 index 00000000..544b84a8 Binary files /dev/null and b/documentation/media/image12.png differ diff --git a/documentation/media/image13.emf b/documentation/media/image13.emf new file mode 100644 index 00000000..29ceb107 Binary files /dev/null and b/documentation/media/image13.emf differ diff --git a/documentation/media/image13.png b/documentation/media/image13.png new file mode 100644 index 00000000..cdf73dd7 Binary files /dev/null and b/documentation/media/image13.png differ diff --git a/documentation/media/image14.emf b/documentation/media/image14.emf new file mode 100644 index 00000000..87457ebd Binary files /dev/null and b/documentation/media/image14.emf differ diff --git a/documentation/media/image14.png b/documentation/media/image14.png new file mode 100644 index 00000000..6c26d1b4 Binary files /dev/null and b/documentation/media/image14.png differ diff --git a/documentation/media/image15.emf b/documentation/media/image15.emf new file mode 100644 index 00000000..44544c3a Binary files /dev/null and b/documentation/media/image15.emf differ diff --git a/documentation/media/image15.png b/documentation/media/image15.png new file mode 100644 index 00000000..72c6f9dc Binary files /dev/null and b/documentation/media/image15.png differ diff --git a/documentation/media/image16.emf b/documentation/media/image16.emf new file mode 100644 index 00000000..f17e48ce Binary files /dev/null and b/documentation/media/image16.emf differ diff --git a/documentation/media/image16.png b/documentation/media/image16.png new file mode 100644 index 00000000..d611a970 Binary files /dev/null and b/documentation/media/image16.png differ diff --git a/documentation/media/image17.emf b/documentation/media/image17.emf new file mode 100644 index 00000000..4f13c897 Binary files /dev/null and b/documentation/media/image17.emf differ diff --git a/documentation/media/image17.png b/documentation/media/image17.png new file mode 100644 index 00000000..8ecb2e36 Binary files /dev/null and b/documentation/media/image17.png differ diff --git a/documentation/media/image18.emf b/documentation/media/image18.emf new file mode 100644 index 00000000..cead60e4 Binary files /dev/null and b/documentation/media/image18.emf differ diff --git a/documentation/media/image18.png b/documentation/media/image18.png new file mode 100644 index 00000000..41908441 Binary files /dev/null and b/documentation/media/image18.png differ diff --git a/documentation/media/image19.emf b/documentation/media/image19.emf new file mode 100644 index 00000000..0589f809 Binary files /dev/null and b/documentation/media/image19.emf differ diff --git a/documentation/media/image19.png b/documentation/media/image19.png new file mode 100644 index 00000000..348c3050 Binary files /dev/null and b/documentation/media/image19.png differ diff --git a/documentation/media/image2.png b/documentation/media/image2.png new file mode 100644 index 00000000..bce53e34 Binary files /dev/null and b/documentation/media/image2.png differ diff --git a/documentation/media/image20.emf b/documentation/media/image20.emf new file mode 100644 index 00000000..7cc34c02 Binary files /dev/null and b/documentation/media/image20.emf differ diff --git a/documentation/media/image20.png b/documentation/media/image20.png new file mode 100644 index 00000000..fbe5f428 Binary files /dev/null and b/documentation/media/image20.png differ diff --git a/documentation/media/image21.emf b/documentation/media/image21.emf new file mode 100644 index 00000000..6c219846 Binary files /dev/null and b/documentation/media/image21.emf differ diff --git a/documentation/media/image21.png b/documentation/media/image21.png new file mode 100644 index 00000000..143f769b Binary files /dev/null and b/documentation/media/image21.png differ diff --git a/documentation/media/image22.emf b/documentation/media/image22.emf new file mode 100644 index 00000000..0bfa587e Binary files /dev/null and b/documentation/media/image22.emf differ diff --git a/documentation/media/image22.png b/documentation/media/image22.png new file mode 100644 index 00000000..0a7d9a09 Binary files /dev/null and b/documentation/media/image22.png differ diff --git a/documentation/media/image23.png b/documentation/media/image23.png new file mode 100644 index 00000000..1c1dbc30 Binary files /dev/null and b/documentation/media/image23.png differ diff --git a/documentation/media/image24.jpeg b/documentation/media/image24.jpeg new file mode 100644 index 00000000..ca27fc3a Binary files /dev/null and b/documentation/media/image24.jpeg differ diff --git a/documentation/media/image25.png b/documentation/media/image25.png new file mode 100644 index 00000000..8f75ff74 Binary files /dev/null and b/documentation/media/image25.png differ diff --git a/documentation/media/image26.png b/documentation/media/image26.png new file mode 100644 index 00000000..227ecb94 Binary files /dev/null and b/documentation/media/image26.png differ diff --git a/documentation/media/image27.png b/documentation/media/image27.png new file mode 100644 index 00000000..42c0132c Binary files /dev/null and b/documentation/media/image27.png differ diff --git a/documentation/media/image28.png b/documentation/media/image28.png new file mode 100644 index 00000000..d2d1df7a Binary files /dev/null and b/documentation/media/image28.png differ diff --git a/documentation/media/image29.png b/documentation/media/image29.png new file mode 100644 index 00000000..2cf1474b Binary files /dev/null and b/documentation/media/image29.png differ diff --git a/documentation/media/image3.emf b/documentation/media/image3.emf new file mode 100644 index 00000000..c25f1e12 Binary files /dev/null and b/documentation/media/image3.emf differ diff --git a/documentation/media/image3.png b/documentation/media/image3.png new file mode 100644 index 00000000..af8c53c2 Binary files /dev/null and b/documentation/media/image3.png differ diff --git a/documentation/media/image30.png b/documentation/media/image30.png new file mode 100644 index 00000000..2abc8b85 Binary files /dev/null and b/documentation/media/image30.png differ diff --git a/documentation/media/image4.jpeg b/documentation/media/image4.jpeg new file mode 100644 index 00000000..e59ee27e Binary files /dev/null and b/documentation/media/image4.jpeg differ diff --git a/documentation/media/image5.emf b/documentation/media/image5.emf new file mode 100644 index 00000000..4242b381 Binary files /dev/null and b/documentation/media/image5.emf differ diff --git a/documentation/media/image5.png b/documentation/media/image5.png new file mode 100644 index 00000000..a95eac2a Binary files /dev/null and b/documentation/media/image5.png differ diff --git a/documentation/media/image6.emf b/documentation/media/image6.emf new file mode 100644 index 00000000..e18ce110 Binary files /dev/null and b/documentation/media/image6.emf differ diff --git a/documentation/media/image6.png b/documentation/media/image6.png new file mode 100644 index 00000000..07876a3d Binary files /dev/null and b/documentation/media/image6.png differ diff --git a/documentation/media/image7.emf b/documentation/media/image7.emf new file mode 100644 index 00000000..62982e6c Binary files /dev/null and b/documentation/media/image7.emf differ diff --git a/documentation/media/image7.png b/documentation/media/image7.png new file mode 100644 index 00000000..931a5df8 Binary files /dev/null and b/documentation/media/image7.png differ diff --git a/documentation/media/image8.emf b/documentation/media/image8.emf new file mode 100644 index 00000000..41d626e1 Binary files /dev/null and b/documentation/media/image8.emf differ diff --git a/documentation/media/image8.png b/documentation/media/image8.png new file mode 100644 index 00000000..b95f091d Binary files /dev/null and b/documentation/media/image8.png differ diff --git a/documentation/media/image9.emf b/documentation/media/image9.emf new file mode 100644 index 00000000..a99e7bac Binary files /dev/null and b/documentation/media/image9.emf differ diff --git a/documentation/media/image9.png b/documentation/media/image9.png new file mode 100644 index 00000000..d7074857 Binary files /dev/null and b/documentation/media/image9.png differ diff --git a/documentation/style.css b/documentation/style.css new file mode 100644 index 00000000..2405c1f3 --- /dev/null +++ b/documentation/style.css @@ -0,0 +1,87 @@ + +@import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"; +@import "https://cdn.jsdelivr.net/gh/asciidoctor/asciidoctor@2.0/data/stylesheets/asciidoctor-default.css"; + +/*body { + background: #f2f2f2; +}*/ + +#toc.toc2 { + background: #ffffff; +} + +#toctitle { + color: #0028CD; +} + +/*Links*/ +a { + color: #0028CD; +} + +a:hover, a:focus { + color: #ff500f; +} + +/*Details*/ +#header .details { + color: #ff500f; +} + + +/*Headers*/ + +#header > h1:first-child { + color: #3149cc; +} +h1, h2, h3, .sidebarblock > .content > .title, h4, h5, h6 { + color: #3149cc; +} +#content h1 > a.link:hover, h2 > a.link:hover, h3 > a.link:hover, #toctitle > a.link:hover, .sidebarblock > .content > .title > a.link:hover, h4 > a.link:hover, h5 > a.link:hover, h6 > a.link:hover { + color: #ff500f; +} + +#content h1 > a.link, h2 > a.link, h3 > a.link, #toctitle > a.link, .sidebarblock > .content > .title > a.link, h4 > a.link, h5 > a.link, h6 > a.link { + color: #3149cc; + text-decoration: none; +} + +.subheader, .admonitionblock td.content > .title, .audioblock > .title, .exampleblock > .title, .imageblock > .title, .listingblock > .title, .literalblock > .title, .stemblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, table.tableblock > .title, .verseblock > .title, .videoblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title { + color: #3149cc; +} + +/*Tables*/ +.table-with-appendix-table { + margin-bottom: 0; +} + +/*Header column*/ +tbody tr th { + background: #0028CD; +} +tbody tr th, tbody tr th p, tfoot tr th, tfoot tr th p { + color: #ffffff; +} + +/*Header row*/ +table thead, table tfoot { + background: #0028CD; +} + +table thead tr th, table thead tr td, table tfoot tr th, table tfoot tr td { + color: #ffffff; +} + +.exampleblock > .content { + background: #e5f0f7; + box-shadow: 0 1px 4px #e0e0dc; +} + +#header, #content, #footnotes, #footer { + margin-left: 0; +} + +img { + margin: auto; + display: block; +} \ No newline at end of file