From 86a3485a7008afb5f6b4dd7f3c1de1fecc63eee9 Mon Sep 17 00:00:00 2001 From: Sebastian Bader Date: Tue, 23 May 2023 14:50:41 +0200 Subject: [PATCH] switch submodel service specification 002 and 003 --- .../V3.0_SSP-002.yaml | 522 ++++++++++++++++-- .../V3.0_SSP-003.yaml | 522 ++---------------- 2 files changed, 522 insertions(+), 522 deletions(-) diff --git a/SubmodelServiceSpecification/V3.0_SSP-002.yaml b/SubmodelServiceSpecification/V3.0_SSP-002.yaml index a1671457..45c6d3ae 100644 --- a/SubmodelServiceSpecification/V3.0_SSP-002.yaml +++ b/SubmodelServiceSpecification/V3.0_SSP-002.yaml @@ -1,14 +1,14 @@ 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 Details of the Asset Administration Shell Part 2. Publisher: Industrial Digital Twin Association (IDTA) April 2023" + description: "The Full Profile of the Submodel Service Specification as part of Details of the Asset Administration Shell Part 2. 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_SSP-002 + version: V3.0_SSP-003 servers: - url: '{protocol}://{host_name}:{port}/api/{version_prefix}' variables: @@ -61,6 +61,33 @@ paths: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/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#/components/schemas/SubmodelMetadata' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' /submodel/$value: get: tags: @@ -88,31 +115,253 @@ paths: '500': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/Reference' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/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#/components/schemas/PathItem' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Extent' + responses: + '200': + description: List of found submodel elements + content: + application/json: + schema: + type: array + items: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsMetadataResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsValueResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetReferencesResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetPathItemsResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}: parameters: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/IdShortPath' - post: + get: tags: - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperation + summary: Returns a specific submodel element from the Submodel at a specified + path + operationId: GetSubmodelElementByPath 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#/components/schemas/OperationRequest' - required: true + - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Extent' responses: '200': - description: Operation result object + description: Requested submodel element content: application/json: schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/OperationResult' + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsResult' '400': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' '401': @@ -121,40 +370,181 @@ paths: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' '404': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '405': - description: Method not allowed - Invoke only valid for Operation submodel element + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}/$metadata: + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Level' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/Result' + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsMetadataResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '404': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' '500': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/invoke/$value: + /submodel/submodel-elements/{idShortPath}/$value: parameters: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/IdShortPath' - post: + get: tags: - Submodel API - summary: Synchronously invokes an Operation at a specified path - operationId: InvokeOperationSync-ValueOnly + 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/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#/components/schemas/OperationRequestValueOnly' - required: true + - https://admin-shell.io/aas/API/GetSubmodelElementByPath/3/0 + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Extent' responses: '200': - description: Operation result object + description: Requested submodel element content: application/json: schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/OperationResultValueOnly' + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsValueResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '404': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}/$reference: + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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/Part2-API-Schemas/V3.0#/components/schemas/GetReferencesResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '404': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}/$path: + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetPathItemsResult' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '404': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}/attachment: + parameters: + - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/responses/bad-request' '401': @@ -164,7 +554,7 @@ paths: '404': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' '405': - description: Method not allowed - Invoke only valid for Operation submodel element + description: Method not allowed - Download only valid for File submodel element content: application/json: schema: @@ -174,6 +564,68 @@ paths: default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/Environment' + application/xml: + schema: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0#/components/schemas/Environment' + '400': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' + '401': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' + '403': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' + '404': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' + '500': + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' + default: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' /description: get: tags: diff --git a/SubmodelServiceSpecification/V3.0_SSP-003.yaml b/SubmodelServiceSpecification/V3.0_SSP-003.yaml index 45c6d3ae..a1671457 100644 --- a/SubmodelServiceSpecification/V3.0_SSP-003.yaml +++ b/SubmodelServiceSpecification/V3.0_SSP-003.yaml @@ -1,14 +1,14 @@ 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 Details of the Asset Administration Shell Part 2. Publisher: Industrial Digital Twin Association (IDTA) April 2023" + description: "The Value Profile of the Submodel Service Specification as part of Details of the Asset Administration Shell Part 2. 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_SSP-003 + version: V3.0_SSP-002 servers: - url: '{protocol}://{host_name}:{port}/api/{version_prefix}' variables: @@ -61,33 +61,6 @@ paths: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/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#/components/schemas/SubmodelMetadata' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' /submodel/$value: get: tags: @@ -115,253 +88,31 @@ paths: '500': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/Reference' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/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#/components/schemas/PathItem' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Extent' - responses: - '200': - description: List of found submodel elements - content: - application/json: - schema: - type: array - items: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}: + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' + /submodel/submodel-elements/{idShortPath}/invoke: parameters: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/IdShortPath' - get: + post: tags: - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path - operationId: GetSubmodelElementByPath + summary: Synchronously invokes an Operation at a specified path + operationId: InvokeOperation 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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Extent' + - 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#/components/schemas/OperationRequest' + required: true responses: '200': - description: Requested submodel element + description: Operation result object content: application/json: schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetSubmodelElementsResult' + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/OperationResult' '400': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' '401': @@ -370,181 +121,40 @@ paths: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' '404': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$metadata: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsMetadataResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$value: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/GetSubmodelElementsValueResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$reference: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - #- $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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 + '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#/components/schemas/GetReferencesResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/Result' '500': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/$path: + /submodel/submodel-elements/{idShortPath}/invoke/$value: parameters: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/IdShortPath' - get: + post: tags: - Submodel API - summary: Returns a specific submodel element from the Submodel at a specified - path in the Path notation - operationId: GetSubmodelElementByPath-Path + summary: Synchronously invokes an Operation at a specified path + operationId: InvokeOperationSync-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#/components/parameters/Limit' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Cursor' - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/parameters/Level' + - 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#/components/schemas/OperationRequestValueOnly' + required: true responses: '200': - description: Requested submodel element + description: Operation result object content: application/json: schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/GetPathItemsResult' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' - /submodel/submodel-elements/{idShortPath}/attachment: - parameters: - - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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 + $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/schemas/OperationResultValueOnly' '400': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' '401': @@ -554,7 +164,7 @@ paths: '404': $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' '405': - description: Method not allowed - Download only valid for File submodel element + description: Method not allowed - Invoke only valid for Operation submodel element content: application/json: schema: @@ -564,68 +174,6 @@ paths: default: $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/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#/components/schemas/Environment' - application/xml: - schema: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part1-MetaModel-Schemas/V3.0#/components/schemas/Environment' - '400': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/bad-request' - '401': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/unauthorized' - '403': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/forbidden' - '404': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/not-found' - '500': - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/internal-server-error' - default: - $ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0#/components/responses/default' /description: get: tags: