diff --git a/docs/api/README.md b/docs/api/README.md new file mode 100644 index 00000000..a037c312 --- /dev/null +++ b/docs/api/README.md @@ -0,0 +1,31 @@ +# Industry Core Hub Api Collection +Different API Collection for the Industry Core Hub Project. + +All the API Collection have been develop with the [Bruno](https://www.usebruno.com/) open source tool. + +## Backend API +The Backend API is divided in seven different folders. +* **Part Management**: Management of part metadata - including catalog parts, serialized parts, JIS parts and batches. +* **Partner Management**: Management of master data around business partners - including business partners, data exchange agreements and contracts. +* **Twin Management**: Management of how product information can be managed and shared. +* **Submodel Dispatcher**: Internal API called by EDC Data Planes or Admins in order the deliver data of of the internal used Submodel Service. +* **Sharing Functionality**: Sharing functionality for catalog part twins - including sharing of parts with business partners and automatic generation of digital twins and submodels. +* **Open Connection Management**: Handles the connections from the consumer modules, for specific services like digital twin registry and data endpoints. +* **Part Discovery Management**: Management of the discovery of parts, searching for digital twins and digital twins registries. + +> **Note** +> +> The baseUrl is set to "_http://localhost:8000/_", you can change it if you have a different one in the variable on the root folder. + +## Licenses + +- [Apache-2.0](https://raw.githubusercontent.com/eclipse-tractusx/industry-core-hub/main/LICENSE) for code +- [CC-BY-4.0](https://spdx.org/licenses/CC-BY-4.0.html) for non-code + +## NOTICE + +This work is licensed under the [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/legalcode). + +- SPDX-License-Identifier: CC-BY-4.0 +- SPDX-FileCopyrightText: 2025 Contributors to the Eclipse Foundation +- Source URL: https://github.com/eclipse-tractusx/industry-core-hub diff --git a/docs/api/bruno/Industry Core Hub Backend API/Check Health.bru b/docs/api/bruno/Industry Core Hub Backend API/Check Health.bru new file mode 100644 index 00000000..ebc3361b --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Check Health.bru @@ -0,0 +1,11 @@ +meta { + name: Check Health + type: http + seq: 1 +} + +get { + url: {{baseUrl}}/health + body: none + auth: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Get.bru b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Get.bru new file mode 100644 index 00000000..89b7b854 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Get.bru @@ -0,0 +1,28 @@ +meta { + name: Data Get + type: http + seq: 1 +} + +post { + url: {{baseUrl}}/v1/connection/data/get + body: json + auth: inherit +} + +body:json { + { + "counter_party_id": "", + "counter_party_address": "", + "filter_expression": [ + {} + ], + "path": "", + "policies": [], + "verify": "", + "headers": "", + "timeout": "", + "params": "", + "allow_redirects": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Post.bru b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Post.bru new file mode 100644 index 00000000..0cba9ecd --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/Data Post.bru @@ -0,0 +1,29 @@ +meta { + name: Data Post + type: http + seq: 2 +} + +post { + url: {{baseUrl}}/v1/connection/data/post + body: json + auth: inherit +} + +body:json { + { + "counter_party_id": "", + "counter_party_address": "", + "body": "", + "filter_expression": [ + {} + ], + "path": "", + "content_type": "", + "policies": "", + "verify": false, + "headers": "", + "timeout": "", + "allow_redirects": false + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/folder.bru new file mode 100644 index 00000000..817157a1 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Open Connection Management/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Open Connection Management +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Registries.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Registries.bru new file mode 100644 index 00000000..7a5dff62 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Registries.bru @@ -0,0 +1,17 @@ +meta { + name: Discover Registries + type: http + seq: 1 +} + +post { + url: {{baseUrl}}/v1/discover/registries + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shell.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shell.bru new file mode 100644 index 00000000..26f3f5fb --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shell.bru @@ -0,0 +1,19 @@ +meta { + name: Discover Shell + type: http + seq: 3 +} + +post { + url: {{baseUrl}}/v1/discover/shell + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "", + "id": "", + "dtrGovernance": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shells.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shells.bru new file mode 100644 index 00000000..4f8fc7b2 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Shells.bru @@ -0,0 +1,26 @@ +meta { + name: Discover Shells + type: http + seq: 2 +} + +post { + url: {{baseUrl}}/v1/discover/shells + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "", + "limit": "", + "cursor": "", + "querySpec": [ + { + "name": "", + "value": "" + } + ], + "dtrGovernance": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodel.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodel.bru new file mode 100644 index 00000000..a16a5f0a --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodel.bru @@ -0,0 +1,23 @@ +meta { + name: Discover Submodel + type: http + seq: 5 +} + +post { + url: {{baseUrl}}/v1/discover/shell/submodel + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "", + "id": "", + "dtrGovernance": "", + "submodelId": "", + "governance": [ + {} + ] + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels By Semantic Id.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels By Semantic Id.bru new file mode 100644 index 00000000..7aab4a1c --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels By Semantic Id.bru @@ -0,0 +1,24 @@ +meta { + name: Discover Submodels By Semantic Id + type: http + seq: 6 +} + +post { + url: {{baseUrl}}/v1/discover/shell/submodels/semanticId + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "", + "id": "", + "dtrGovernance": "", + "semanticIds": "", + "semanticId": "", + "governance": [ + {} + ] + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels.bru new file mode 100644 index 00000000..9b75acaf --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/Discover Submodels.bru @@ -0,0 +1,20 @@ +meta { + name: Discover Submodels + type: http + seq: 4 +} + +post { + url: {{baseUrl}}/v1/discover/shell/submodels + body: json + auth: inherit +} + +body:json { + { + "counterPartyId": "", + "id": "", + "dtrGovernance": "", + "governance": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/folder.bru new file mode 100644 index 00000000..24dde441 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Discovery Management/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Part Discovery Management +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Catalog Part.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Catalog Part.bru new file mode 100644 index 00000000..6231f130 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Catalog Part.bru @@ -0,0 +1,28 @@ +meta { + name: Part Management Create Catalog Part + type: http + seq: 3 +} + +post { + url: {{baseUrl}}/v1/part-management/catalog-part + body: json + auth: inherit +} + +body:json { + { + "manufacturerId": "", + "manufacturerPartId": "", + "name": "", + "category": "", + "bpns": "", + "description": "", + "materials": "", + "width": "", + "height": "", + "length": "", + "weight": "", + "customerPartIds": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Partner Mapping.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Partner Mapping.bru new file mode 100644 index 00000000..3d44deb5 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Partner Mapping.bru @@ -0,0 +1,20 @@ +meta { + name: Part Management Create Partner Mapping + type: http + seq: 4 +} + +post { + url: {{baseUrl}}/v1/part-management/catalog-part/create-partner-mapping + body: json + auth: inherit +} + +body:json { + { + "customerPartId": "", + "businessPartnerNumber": "", + "manufacturerId": "", + "manufacturerPartId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Serialized Part.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Serialized Part.bru new file mode 100644 index 00000000..45667209 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Create Serialized Part.bru @@ -0,0 +1,22 @@ +meta { + name: Part Management Create Serialized Part + type: http + seq: 6 +} + +post { + url: {{baseUrl}}/v1/part-management/serialized-part + body: json + auth: inherit +} + +body:json { + { + "businessPartnerNumber": "", + "manufacturerId": "", + "manufacturerPartId": "", + "partInstanceId": "", + "van": "", + "customerPartId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Part Details.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Part Details.bru new file mode 100644 index 00000000..1e92556c --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Part Details.bru @@ -0,0 +1,16 @@ +meta { + name: Part Management Get Catalog Part Details + type: http + seq: 1 +} + +get { + url: {{baseUrl}}/v1/part-management/catalog-part/:manufacturer_id/:manufacturer_part_id + body: none + auth: inherit +} + +params:path { + manufacturer_id: + manufacturer_part_id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Parts.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Parts.bru new file mode 100644 index 00000000..c1c23c8c --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Catalog Parts.bru @@ -0,0 +1,11 @@ +meta { + name: Part Management Get Catalog Parts + type: http + seq: 2 +} + +get { + url: {{baseUrl}}/v1/part-management/catalog-part + body: none + auth: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Serialized Parts.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Serialized Parts.bru new file mode 100644 index 00000000..9e9598db --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Get Serialized Parts.bru @@ -0,0 +1,11 @@ +meta { + name: Part Management Get Serialized Parts + type: http + seq: 5 +} + +get { + url: {{baseUrl}}/v1/part-management/serialized-part + body: none + auth: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Query Serialized Parts.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Query Serialized Parts.bru new file mode 100644 index 00000000..89ab470e --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/Part Management Query Serialized Parts.bru @@ -0,0 +1,22 @@ +meta { + name: Part Management Query Serialized Parts + type: http + seq: 7 +} + +post { + url: {{baseUrl}}/v1/part-management/serialized-part/query + body: json + auth: inherit +} + +body:json { + { + "manufacturerId": "", + "manufacturerPartId": "", + "businessPartnerNumber": "", + "customerPartId": "", + "partInstanceId": "", + "van": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Part Management/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Part Management/folder.bru new file mode 100644 index 00000000..5d4a7201 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Part Management/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Part Management +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Create Business Partner.bru b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Create Business Partner.bru new file mode 100644 index 00000000..2f0fc41b --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Create Business Partner.bru @@ -0,0 +1,18 @@ +meta { + name: Partner Management Create Business Partner + type: http + seq: 2 +} + +post { + url: {{baseUrl}}/v1/partner-management/business-partner + body: json + auth: inherit +} + +body:json { + { + "bpnl": "", + "name": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partner.bru b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partner.bru new file mode 100644 index 00000000..1c0d26f6 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partner.bru @@ -0,0 +1,15 @@ +meta { + name: Partner Management Get Business Partner + type: http + seq: 3 +} + +get { + url: {{baseUrl}}/v1/partner-management/business-partner/:business_partner_number + body: none + auth: inherit +} + +params:path { + business_partner_number: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partners.bru b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partners.bru new file mode 100644 index 00000000..e4dc760d --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Business Partners.bru @@ -0,0 +1,11 @@ +meta { + name: Partner Management Get Business Partners + type: http + seq: 1 +} + +get { + url: {{baseUrl}}/v1/partner-management/business-partner + body: none + auth: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Data Exchange Agreements.bru b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Data Exchange Agreements.bru new file mode 100644 index 00000000..728fa854 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/Partner Management Get Data Exchange Agreements.bru @@ -0,0 +1,15 @@ +meta { + name: Partner Management Get Data Exchange Agreements + type: http + seq: 4 +} + +get { + url: {{baseUrl}}/v1/partner-management/business-partner/:business_partner_number/data-exchange-agreement + body: none + auth: inherit +} + +params:path { + business_partner_number: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Partner Management/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/folder.bru new file mode 100644 index 00000000..27e1c844 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Partner Management/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Partner Management +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/Share Catalog Part.bru b/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/Share Catalog Part.bru new file mode 100644 index 00000000..7be479dc --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/Share Catalog Part.bru @@ -0,0 +1,20 @@ +meta { + name: Share Catalog Part + type: http + seq: 1 +} + +post { + url: {{baseUrl}}/v1/share/catalog-part + body: json + auth: inherit +} + +body:json { + { + "manufacturerId": "", + "manufacturerPartId": "", + "businessPartnerNumber": "", + "customerPartId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/folder.bru new file mode 100644 index 00000000..fa4e7450 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Sharing Functionality/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Sharing Functionality +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Delete Submodel.bru b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Delete Submodel.bru new file mode 100644 index 00000000..368a780c --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Delete Submodel.bru @@ -0,0 +1,16 @@ +meta { + name: Submodel Dispatcher Delete Submodel + type: http + seq: 4 +} + +delete { + url: {{baseUrl}}/v1/submodel-dispatcher/:semantic_id/:global_id/submodel + body: none + auth: inherit +} + +params:path { + semantic_id: + global_id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Get Submodel Content Submodel Value.bru b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Get Submodel Content Submodel Value.bru new file mode 100644 index 00000000..e3c601bd --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Get Submodel Content Submodel Value.bru @@ -0,0 +1,21 @@ +meta { + name: Submodel Dispatcher Get Submodel Content Submodel Value + type: http + seq: 5 +} + +get { + url: {{baseUrl}}/v1/submodel-dispatcher/:semantic_id/:global_id/submodel/$value + body: none + auth: inherit +} + +params:path { + semantic_id: + global_id: +} + +headers { + ~Edc-Bpn: + ~Edc-Contract-Agreement-Id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Upload Submodel.bru b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Upload Submodel.bru new file mode 100644 index 00000000..ce43d341 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/Submodel Dispatcher Upload Submodel.bru @@ -0,0 +1,20 @@ +meta { + name: Submodel Dispatcher Upload Submodel + type: http + seq: 3 +} + +post { + url: {{baseUrl}}/v1/submodel-dispatcher/:semantic_id/:global_id/submodel + body: json + auth: inherit +} + +params:path { + semantic_id: + global_id: +} + +body:json { + {} +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/folder.bru new file mode 100644 index 00000000..7e94788f --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Submodel Dispatcher/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Submodel Dispatcher +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Catalog Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Catalog Part Twin.bru new file mode 100644 index 00000000..b40f3f00 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Catalog Part Twin.bru @@ -0,0 +1,24 @@ +meta { + name: Twin Management Create Catalog Part Twin + type: http + seq: 2 +} + +post { + url: {{baseUrl}}/v1/twin-management/catalog-part-twin + body: json + auth: inherit +} + +params:query { + ~autoCreatePartTypeInformation: +} + +body:json { + { + "globalId": "", + "dtrAasId": "", + "manufacturerId": "", + "manufacturerPartId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Serialized Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Serialized Part Twin.bru new file mode 100644 index 00000000..20c64362 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Serialized Part Twin.bru @@ -0,0 +1,21 @@ +meta { + name: Twin Management Create Serialized Part Twin + type: http + seq: 7 +} + +post { + url: {{baseUrl}}/v1/twin-management/serialized-part-twin + body: json + auth: inherit +} + +body:json { + { + "globalId": "", + "dtrAasId": "", + "manufacturerId": "", + "manufacturerPartId": "", + "partInstanceId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Twin Aspect.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Twin Aspect.bru new file mode 100644 index 00000000..0bb34990 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Create Twin Aspect.bru @@ -0,0 +1,20 @@ +meta { + name: Twin Management Create Twin Aspect + type: http + seq: 9 +} + +post { + url: {{baseUrl}}/v1/twin-management/twin-aspect + body: json + auth: inherit +} + +body:json { + { + "globalId": "", + "semanticId": "", + "submodelId": "", + "payload": {} + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get All Serialized Part Twins.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get All Serialized Part Twins.bru new file mode 100644 index 00000000..af095cb2 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get All Serialized Part Twins.bru @@ -0,0 +1,15 @@ +meta { + name: Twin Management Get All Serialized Part Twins + type: http + seq: 6 +} + +get { + url: {{baseUrl}}/v1/twin-management/serialized-part-twin + body: none + auth: inherit +} + +params:query { + ~include_data_exchange_agreements: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin From Manufacturer.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin From Manufacturer.bru new file mode 100644 index 00000000..8bd573d4 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin From Manufacturer.bru @@ -0,0 +1,16 @@ +meta { + name: Twin Management Get Catalog Part Twin From Manufacturer + type: http + seq: 4 +} + +get { + url: {{baseUrl}}/v1/twin-management/catalog-part-twin/:manufacturer_id/:manufacturer_part_id + body: none + auth: inherit +} + +params:path { + manufacturer_id: + manufacturer_part_id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin.bru new file mode 100644 index 00000000..1a8092ab --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twin.bru @@ -0,0 +1,15 @@ +meta { + name: Twin Management Get Catalog Part Twin + type: http + seq: 3 +} + +get { + url: {{baseUrl}}/v1/twin-management/catalog-part-twin/:global_id + body: none + auth: inherit +} + +params:path { + global_id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twins.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twins.bru new file mode 100644 index 00000000..b1edb124 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Catalog Part Twins.bru @@ -0,0 +1,15 @@ +meta { + name: Twin Management Get Catalog Part Twins + type: http + seq: 1 +} + +get { + url: {{baseUrl}}/v1/twin-management/catalog-part-twin + body: none + auth: inherit +} + +params:query { + ~include_data_exchange_agreements: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Serialized Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Serialized Part Twin.bru new file mode 100644 index 00000000..63182118 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Get Serialized Part Twin.bru @@ -0,0 +1,15 @@ +meta { + name: Twin Management Get Serialized Part Twin + type: http + seq: 8 +} + +get { + url: {{baseUrl}}/v1/twin-management/serialized-part-twin/:global_id + body: none + auth: inherit +} + +params:path { + global_id: +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Catalog Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Catalog Part Twin.bru new file mode 100644 index 00000000..f64e0eb2 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Catalog Part Twin.bru @@ -0,0 +1,19 @@ +meta { + name: Twin Management Share Catalog Part Twin + type: http + seq: 5 +} + +post { + url: {{baseUrl}}/v1/twin-management/catalog-part-twin/share + body: json + auth: inherit +} + +body:json { + { + "businessPartnerNumber": "", + "manufacturerId": "", + "manufacturerPartId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Serialized Part Twin.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Serialized Part Twin.bru new file mode 100644 index 00000000..51843720 --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/Twin Management Share Serialized Part Twin.bru @@ -0,0 +1,19 @@ +meta { + name: Twin Management Share Serialized Part Twin + type: http + seq: 10 +} + +post { + url: {{baseUrl}}/v1/twin-management/serialized-part-twin/share + body: json + auth: inherit +} + +body:json { + { + "manufacturerId": "", + "manufacturerPartId": "", + "partInstanceId": "" + } +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/Twin Management/folder.bru b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/folder.bru new file mode 100644 index 00000000..286f3c9b --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/Twin Management/folder.bru @@ -0,0 +1,7 @@ +meta { + name: Twin Management +} + +auth { + mode: inherit +} diff --git a/docs/api/bruno/Industry Core Hub Backend API/bruno.json b/docs/api/bruno/Industry Core Hub Backend API/bruno.json new file mode 100644 index 00000000..87b84b1e --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/bruno.json @@ -0,0 +1,9 @@ +{ + "version": "1", + "name": "Industry Core Hub Backend API", + "type": "collection", + "ignore": [ + "node_modules", + ".git" + ] +} \ No newline at end of file diff --git a/docs/api/bruno/Industry Core Hub Backend API/collection.bru b/docs/api/bruno/Industry Core Hub Backend API/collection.bru new file mode 100644 index 00000000..471d6c8e --- /dev/null +++ b/docs/api/bruno/Industry Core Hub Backend API/collection.bru @@ -0,0 +1,7 @@ +meta { + name: Industry Core Hub Backend API +} + +auth { + mode: none +} diff --git a/docs/api/openAPI.yaml b/docs/api/openAPI.yaml index a13ea558..57022a5e 100644 --- a/docs/api/openAPI.yaml +++ b/docs/api/openAPI.yaml @@ -18,18 +18,18 @@ # # SPDX-License-Identifier: Apache-2.0 ############################################################### -openapi: 3.1.0 + +openapi: 3.0.3 info: title: Industry Core Hub Backend API version: 0.0.1 paths: - '/part-management/catalog-part/{manufacturer_id}/manufacturerPartId': + /v1/part-management/catalog-part/{manufacturer_id}/{manufacturer_part_id}: get: tags: - Part Management summary: Part Management Get Catalog Part Details - operationId: >- - part_management_get_catalog_part_details_part_management_catalog_part__manufacturer_id__manufacturerPartId_get + operationId: part_management_get_catalog_part_details_v1_part_management_catalog_part__manufacturer_id___manufacturer_part_id__get parameters: - name: manufacturer_id in: path @@ -38,7 +38,7 @@ paths: type: string title: Manufacturer Id - name: manufacturer_part_id - in: query + in: path required: true schema: type: string @@ -81,9 +81,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -94,12 +92,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /part-management/catalog-part: + /v1/part-management/catalog-part: get: tags: - Part Management summary: Part Management Get Catalog Parts - operationId: part_management_get_catalog_parts_part_management_catalog_part_get + operationId: part_management_get_catalog_parts_v1_part_management_catalog_part_get responses: '200': description: Successful Response @@ -109,9 +107,7 @@ paths: items: $ref: '#/components/schemas/CatalogPartReadWithStatus' type: array - title: >- - Response Part Management Get Catalog Parts Part Management - Catalog Part Get + title: Response Part Management Get Catalog Parts V1 Part Management Catalog Part Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -143,9 +139,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -160,7 +154,7 @@ paths: tags: - Part Management summary: Part Management Create Catalog Part - operationId: part_management_create_catalog_part_part_management_catalog_part_post + operationId: part_management_create_catalog_part_v1_part_management_catalog_part_post requestBody: content: application/json: @@ -205,9 +199,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -218,13 +210,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /part-management/catalog-part/create-partner-mapping: + /v1/part-management/catalog-part/create-partner-mapping: post: tags: - Part Management summary: Part Management Create Partner Mapping - operationId: >- - part_management_create_partner_mapping_part_management_catalog_part_create_partner_mapping_post + operationId: part_management_create_partner_mapping_v1_part_management_catalog_part_create_partner_mapping_post requestBody: content: application/json: @@ -269,9 +260,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -282,12 +271,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /part-management/serialized-part: + /v1/part-management/serialized-part: get: tags: - Part Management summary: Part Management Get Serialized Parts - operationId: part_management_get_serialized_parts_part_management_serialized_part_get + operationId: part_management_get_serialized_parts_v1_part_management_serialized_part_get responses: '200': description: Successful Response @@ -297,9 +286,7 @@ paths: items: $ref: '#/components/schemas/SerializedPartRead' type: array - title: >- - Response Part Management Get Serialized Parts Part Management - Serialized Part Get + title: Response Part Management Get Serialized Parts V1 Part Management Serialized Part Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -331,9 +318,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -348,8 +333,7 @@ paths: tags: - Part Management summary: Part Management Create Serialized Part - operationId: >- - part_management_create_serialized_part_part_management_serialized_part_post + operationId: part_management_create_serialized_part_v1_part_management_serialized_part_post requestBody: content: application/json: @@ -394,9 +378,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -407,13 +389,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /part-management/serialized-part/query: + /v1/part-management/serialized-part/query: post: tags: - Part Management summary: Part Management Query Serialized Parts - operationId: >- - part_management_query_serialized_parts_part_management_serialized_part_query_post + operationId: part_management_query_serialized_parts_v1_part_management_serialized_part_query_post requestBody: content: application/json: @@ -429,9 +410,7 @@ paths: items: $ref: '#/components/schemas/SerializedPartRead' type: array - title: >- - Response Part Management Query Serialized Parts Part - Management Serialized Part Query Post + title: Response Part Management Query Serialized Parts V1 Part Management Serialized Part Query Post '400': description: Invalid input provided. Please check your request and try again. content: @@ -463,9 +442,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -476,13 +453,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /partner-management/business-partner: + /v1/partner-management/business-partner: get: tags: - Partner Management summary: Partner Management Get Business Partners - operationId: >- - partner_management_get_business_partners_partner_management_business_partner_get + operationId: partner_management_get_business_partners_v1_partner_management_business_partner_get responses: '200': description: Successful Response @@ -492,9 +468,7 @@ paths: items: $ref: '#/components/schemas/BusinessPartnerRead' type: array - title: >- - Response Partner Management Get Business Partners Partner - Management Business Partner Get + title: Response Partner Management Get Business Partners V1 Partner Management Business Partner Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -526,9 +500,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -543,8 +515,7 @@ paths: tags: - Partner Management summary: Partner Management Create Business Partner - operationId: >- - partner_management_create_business_partner_partner_management_business_partner_post + operationId: partner_management_create_business_partner_v1_partner_management_business_partner_post requestBody: content: application/json: @@ -589,9 +560,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -602,13 +571,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/partner-management/business-partner/{business_partner_number}': + /v1/partner-management/business-partner/{business_partner_number}: get: tags: - Partner Management summary: Partner Management Get Business Partner - operationId: >- - partner_management_get_business_partner_partner_management_business_partner__business_partner_number__get + operationId: partner_management_get_business_partner_v1_partner_management_business_partner__business_partner_number__get parameters: - name: business_partner_number in: path @@ -624,10 +592,9 @@ paths: schema: anyOf: - $ref: '#/components/schemas/BusinessPartnerRead' - - type: 'null' - title: >- - Response Partner Management Get Business Partner Partner - Management Business Partner Business Partner Number Get + - type: object + nullable: true + title: Response Partner Management Get Business Partner V1 Partner Management Business Partner Business Partner Number Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -659,9 +626,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -672,13 +637,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/partner-management/business-partner/{business_partner_number}/data-exchange-agreement': + /v1/partner-management/business-partner/{business_partner_number}/data-exchange-agreement: get: tags: - Partner Management summary: Partner Management Get Data Exchange Agreements - operationId: >- - partner_management_get_data_exchange_agreements_partner_management_business_partner__business_partner_number__data_exchange_agreement_get + operationId: partner_management_get_data_exchange_agreements_v1_partner_management_business_partner__business_partner_number__data_exchange_agreement_get parameters: - name: business_partner_number in: path @@ -695,10 +659,7 @@ paths: type: array items: $ref: '#/components/schemas/DataExchangeAgreementRead' - title: >- - Response Partner Management Get Data Exchange Agreements - Partner Management Business Partner Business Partner Number - Data Exchange Agreement Get + title: Response Partner Management Get Data Exchange Agreements V1 Partner Management Business Partner Business Partner Number Data Exchange Agreement Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -730,9 +691,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -743,13 +702,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /twin-management/catalog-part-twin: + /v1/twin-management/catalog-part-twin: get: tags: - Twin Management summary: Twin Management Get Catalog Part Twins - operationId: >- - twin_management_get_catalog_part_twins_twin_management_catalog_part_twin_get + operationId: twin_management_get_catalog_part_twins_v1_twin_management_catalog_part_twin_get parameters: - name: include_data_exchange_agreements in: query @@ -767,9 +725,7 @@ paths: type: array items: $ref: '#/components/schemas/CatalogPartTwinRead' - title: >- - Response Twin Management Get Catalog Part Twins Twin - Management Catalog Part Twin Get + title: Response Twin Management Get Catalog Part Twins V1 Twin Management Catalog Part Twin Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -801,9 +757,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -818,17 +772,14 @@ paths: tags: - Twin Management summary: Twin Management Create Catalog Part Twin - operationId: >- - twin_management_create_catalog_part_twin_twin_management_catalog_part_twin_post + operationId: twin_management_create_catalog_part_twin_v1_twin_management_catalog_part_twin_post parameters: - name: autoCreatePartTypeInformation in: query required: false schema: type: boolean - description: >- - Automatically create part type information submodel if not - present. + description: Automatically create part type information submodel if not present. default: true title: Autocreateparttypeinformation description: Automatically create part type information submodel if not present. @@ -876,9 +827,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -889,13 +838,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/twin-management/catalog-part-twin/{global_id}': + /v1/twin-management/catalog-part-twin/{global_id}: get: tags: - Twin Management summary: Twin Management Get Catalog Part Twin - operationId: >- - twin_management_get_catalog_part_twin_twin_management_catalog_part_twin__global_id__get + operationId: twin_management_get_catalog_part_twin_v1_twin_management_catalog_part_twin__global_id__get parameters: - name: global_id in: path @@ -912,10 +860,9 @@ paths: schema: anyOf: - $ref: '#/components/schemas/CatalogPartTwinDetailsRead' - - type: 'null' - title: >- - Response Twin Management Get Catalog Part Twin Twin Management - Catalog Part Twin Global Id Get + - type: object + nullable: true + title: Response Twin Management Get Catalog Part Twin V1 Twin Management Catalog Part Twin Global Id Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -947,9 +894,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -960,26 +905,25 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/twin-management/catalog-part-twin/{manufacturerId}/{manufacturerPartId}': + /v1/twin-management/catalog-part-twin/{manufacturer_id}/{manufacturer_part_id}: get: tags: - Twin Management summary: Twin Management Get Catalog Part Twin From Manufacturer - operationId: >- - twin_management_get_catalog_part_twin_from_manufacturer_twin_management_catalog_part_twin__manufacturerId___manufacturerPartId__get + operationId: twin_management_get_catalog_part_twin_from_manufacturer_v1_twin_management_catalog_part_twin__manufacturer_id___manufacturer_part_id__get parameters: - - name: manufacturerId + - name: manufacturer_id in: path required: true schema: type: string - title: Manufacturerid - - name: manufacturerPartId + title: Manufacturer Id + - name: manufacturer_part_id in: path required: true schema: type: string - title: Manufacturerpartid + title: Manufacturer Part Id responses: '200': description: Successful Response @@ -988,11 +932,9 @@ paths: schema: anyOf: - $ref: '#/components/schemas/CatalogPartTwinDetailsRead' - - type: 'null' - title: >- - Response Twin Management Get Catalog Part Twin From - Manufacturer Twin Management Catalog Part Twin - Manufacturerid Manufacturerpartid Get + - type: object + nullable: true + title: Response Twin Management Get Catalog Part Twin From Manufacturer V1 Twin Management Catalog Part Twin Manufacturer Id Manufacturer Part Id Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1024,9 +966,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1037,13 +977,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /twin-management/catalog-part-twin/share: + /v1/twin-management/catalog-part-twin/share: post: tags: - Twin Management summary: Twin Management Share Catalog Part Twin - operationId: >- - twin_management_share_catalog_part_twin_twin_management_catalog_part_twin_share_post + operationId: twin_management_share_catalog_part_twin_v1_twin_management_catalog_part_twin_share_post requestBody: content: application/json: @@ -1091,9 +1030,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1104,13 +1041,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /twin-management/serialized-part-twin: + /v1/twin-management/serialized-part-twin: get: tags: - Twin Management summary: Twin Management Get All Serialized Part Twins - operationId: >- - twin_management_get_all_serialized_part_twins_twin_management_serialized_part_twin_get + operationId: twin_management_get_all_serialized_part_twins_v1_twin_management_serialized_part_twin_get parameters: - name: include_data_exchange_agreements in: query @@ -1128,9 +1064,7 @@ paths: type: array items: $ref: '#/components/schemas/SerializedPartTwinRead' - title: >- - Response Twin Management Get All Serialized Part Twins Twin - Management Serialized Part Twin Get + title: Response Twin Management Get All Serialized Part Twins V1 Twin Management Serialized Part Twin Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1162,9 +1096,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1179,8 +1111,7 @@ paths: tags: - Twin Management summary: Twin Management Create Serialized Part Twin - operationId: >- - twin_management_create_serialized_part_twin_twin_management_serialized_part_twin_post + operationId: twin_management_create_serialized_part_twin_v1_twin_management_serialized_part_twin_post requestBody: required: true content: @@ -1225,9 +1156,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1238,13 +1167,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/twin-management/serialized-part-twin/{global_id}': + /v1/twin-management/serialized-part-twin/{global_id}: get: tags: - Twin Management summary: Twin Management Get Serialized Part Twin - operationId: >- - twin_management_get_serialized_part_twin_twin_management_serialized_part_twin__global_id__get + operationId: twin_management_get_serialized_part_twin_v1_twin_management_serialized_part_twin__global_id__get parameters: - name: global_id in: path @@ -1261,10 +1189,9 @@ paths: schema: anyOf: - $ref: '#/components/schemas/SerializedPartTwinDetailsRead' - - type: 'null' - title: >- - Response Twin Management Get Serialized Part Twin Twin - Management Serialized Part Twin Global Id Get + - type: object + nullable: true + title: Response Twin Management Get Serialized Part Twin V1 Twin Management Serialized Part Twin Global Id Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1296,9 +1223,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1309,12 +1234,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /twin-management/twin-aspect: + /v1/twin-management/twin-aspect: post: tags: - Twin Management summary: Twin Management Create Twin Aspect - operationId: twin_management_create_twin_aspect_twin_management_twin_aspect_post + operationId: twin_management_create_twin_aspect_v1_twin_management_twin_aspect_post requestBody: content: application/json: @@ -1359,9 +1284,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1372,13 +1295,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /twin-management/serialized-part-twin/share: + /v1/twin-management/serialized-part-twin/share: post: tags: - Twin Management summary: Twin Management Share Serialized Part Twin - operationId: >- - twin_management_share_serialized_part_twin_twin_management_serialized_part_twin_share_post + operationId: twin_management_share_serialized_part_twin_v1_twin_management_serialized_part_twin_share_post requestBody: content: application/json: @@ -1426,9 +1348,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1439,13 +1359,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/submodel-dispatcher/{semantic_id}/{global_id}': + /v1/submodel-dispatcher/{semantic_id}/{global_id}: get: tags: - Submodel Dispatcher summary: Submodel Dispatcher Get Submodel Content Submodel Value - operationId: >- - submodel_dispatcher_get_submodel_content_submodel_value_submodel_dispatcher__semantic_id___global_id__get + operationId: submodel_dispatcher_get_submodel_content_submodel_value_v1_submodel_dispatcher__semantic_id___global_id__get parameters: - name: semantic_id in: path @@ -1466,7 +1385,8 @@ paths: schema: anyOf: - type: string - - type: 'null' + - type: object + nullable: true description: The BPN of the consumer delivered by the EDC Data Plane title: Edc-Bpn description: The BPN of the consumer delivered by the EDC Data Plane @@ -1476,14 +1396,11 @@ paths: schema: anyOf: - type: string - - type: 'null' - description: >- - The contract agreement id of the consumer delivered by the EDC - Data Plane + - type: object + nullable: true + description: The contract agreement id of the consumer delivered by the EDC Data Plane title: Edc-Contract-Agreement-Id - description: >- - The contract agreement id of the consumer delivered by the EDC Data - Plane + description: The contract agreement id of the consumer delivered by the EDC Data Plane responses: '200': description: Successful Response @@ -1492,9 +1409,7 @@ paths: schema: type: object additionalProperties: true - title: >- - Response Submodel Dispatcher Get Submodel Content Submodel - Value Submodel Dispatcher Semantic Id Global Id Get + title: Response Submodel Dispatcher Get Submodel Content Submodel Value V1 Submodel Dispatcher Semantic Id Global Id Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1526,9 +1441,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1539,13 +1452,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/submodel-dispatcher/{semantic_id}/{global_id}/submodel': + /v1/submodel-dispatcher/{semantic_id}/{global_id}/submodel: get: tags: - Submodel Dispatcher summary: Submodel Dispatcher Get Submodel Content Submodel Value - operationId: >- - submodel_dispatcher_get_submodel_content_submodel_value_submodel_dispatcher__semantic_id___global_id__submodel_get + operationId: submodel_dispatcher_get_submodel_content_submodel_value_v1_submodel_dispatcher__semantic_id___global_id__submodel_get parameters: - name: semantic_id in: path @@ -1566,7 +1478,8 @@ paths: schema: anyOf: - type: string - - type: 'null' + - type: object + nullable: true description: The BPN of the consumer delivered by the EDC Data Plane title: Edc-Bpn description: The BPN of the consumer delivered by the EDC Data Plane @@ -1576,14 +1489,11 @@ paths: schema: anyOf: - type: string - - type: 'null' - description: >- - The contract agreement id of the consumer delivered by the EDC - Data Plane + - type: object + nullable: true + description: The contract agreement id of the consumer delivered by the EDC Data Plane title: Edc-Contract-Agreement-Id - description: >- - The contract agreement id of the consumer delivered by the EDC Data - Plane + description: The contract agreement id of the consumer delivered by the EDC Data Plane responses: '200': description: Successful Response @@ -1592,10 +1502,7 @@ paths: schema: type: object additionalProperties: true - title: >- - Response Submodel Dispatcher Get Submodel Content Submodel - Value Submodel Dispatcher Semantic Id Global Id Submodel - Get + title: Response Submodel Dispatcher Get Submodel Content Submodel Value V1 Submodel Dispatcher Semantic Id Global Id Submodel Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1627,9 +1534,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1644,8 +1549,7 @@ paths: tags: - Submodel Dispatcher summary: Submodel Dispatcher Upload Submodel - operationId: >- - submodel_dispatcher_upload_submodel_submodel_dispatcher__semantic_id___global_id__submodel_post + operationId: submodel_dispatcher_upload_submodel_v1_submodel_dispatcher__semantic_id___global_id__submodel_post parameters: - name: semantic_id in: path @@ -1703,9 +1607,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1720,8 +1622,7 @@ paths: tags: - Submodel Dispatcher summary: Submodel Dispatcher Delete Submodel - operationId: >- - submodel_dispatcher_delete_submodel_submodel_dispatcher__semantic_id___global_id__submodel_delete + operationId: submodel_dispatcher_delete_submodel_v1_submodel_dispatcher__semantic_id___global_id__submodel_delete parameters: - name: semantic_id in: path @@ -1770,9 +1671,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1783,13 +1682,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - '/submodel-dispatcher/{semantic_id}/{global_id}/submodel/$value': + /v1/submodel-dispatcher/{semantic_id}/{global_id}/submodel/$value: get: tags: - Submodel Dispatcher summary: Submodel Dispatcher Get Submodel Content Submodel Value - operationId: >- - submodel_dispatcher_get_submodel_content_submodel_value_submodel_dispatcher__semantic_id___global_id__submodel__value_get + operationId: submodel_dispatcher_get_submodel_content_submodel_value_v1_submodel_dispatcher__semantic_id___global_id__submodel__value_get parameters: - name: semantic_id in: path @@ -1810,7 +1708,8 @@ paths: schema: anyOf: - type: string - - type: 'null' + - type: object + nullable: true description: The BPN of the consumer delivered by the EDC Data Plane title: Edc-Bpn description: The BPN of the consumer delivered by the EDC Data Plane @@ -1820,14 +1719,11 @@ paths: schema: anyOf: - type: string - - type: 'null' - description: >- - The contract agreement id of the consumer delivered by the EDC - Data Plane + - type: object + nullable: true + description: The contract agreement id of the consumer delivered by the EDC Data Plane title: Edc-Contract-Agreement-Id - description: >- - The contract agreement id of the consumer delivered by the EDC Data - Plane + description: The contract agreement id of the consumer delivered by the EDC Data Plane responses: '200': description: Successful Response @@ -1836,10 +1732,7 @@ paths: schema: type: object additionalProperties: true - title: >- - Response Submodel Dispatcher Get Submodel Content Submodel - Value Submodel Dispatcher Semantic Id Global Id Submodel - Value Get + title: Response Submodel Dispatcher Get Submodel Content Submodel Value V1 Submodel Dispatcher Semantic Id Global Id Submodel Value Get '400': description: Invalid input provided. Please check your request and try again. content: @@ -1871,9 +1764,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1884,12 +1775,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /share/catalog-part: + /v1/share/catalog-part: post: tags: - Sharing Functionality summary: Share Catalog Part - operationId: share_catalog_part_share_catalog_part_post + operationId: share_catalog_part_v1_share_catalog_part_post requestBody: content: application/json: @@ -1934,9 +1825,7 @@ paths: schema: $ref: '#/components/schemas/ErrorDetail' '502': - description: >- - Bad Gateway - The server received an invalid response from the - upstream server. + description: Bad Gateway - The server received an invalid response from the upstream server. content: application/json: schema: @@ -1947,12 +1836,12 @@ paths: application/json: schema: $ref: '#/components/schemas/ErrorDetail' - /connection/data/get: + /v1/connection/data/get: post: tags: - Open Connection Management summary: Data Get - operationId: data_get_connection_data_get_post + operationId: data_get_v1_connection_data_get_post requestBody: content: application/json: @@ -1971,12 +1860,12 @@ paths: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' - /connection/data/post: + /v1/connection/data/post: post: tags: - Open Connection Management summary: Data Post - operationId: data_post_connection_data_post_post + operationId: data_post_v1_connection_data_post_post requestBody: content: application/json: @@ -1995,6 +1884,298 @@ paths: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/registries: + post: + tags: + - Part Discovery Management + summary: Discover Registries + operationId: discover_registries_v1_discover_registries_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverRegistriesRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/shells: + post: + tags: + - Part Discovery Management + summary: Discover Shells + description: |- + Discover digital twin shells using query specifications. + + This endpoint discovers available DTRs for the given BPN, negotiates access, + and searches for shells matching the provided query specifications using + the /lookup/shellsByAssetLink API. + + Args: + search_request: Request containing counter_party_id (BPN) and query_spec + + Returns: + Response containing discovered shells and metadata + operationId: discover_shells_v1_discover_shells_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverShellsRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/shell: + post: + tags: + - Part Discovery Management + summary: Discover Shell + description: |- + Discover digital twin shells using query specifications. + + This endpoint discovers available DTRs for the given BPN, negotiates access, + and searches for shells matching the provided query specifications using + the /lookup/shellsByAssetLink API. + + Args: + search_request: Request containing counter_party_id (BPN) and query_spec + + Returns: + Response containing discovered shells and metadata + operationId: discover_shell_v1_discover_shell_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverShellRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/shell/submodels: + post: + tags: + - Part Discovery Management + summary: Discover Submodels + description: |- + Discover a digital twin shell by ID and retrieve its submodel data in parallel. + + This endpoint first discovers the shell using the provided ID, then analyzes its submodels + to identify unique assets, pre-negotiates access to those assets in parallel, and finally + fetches the actual submodel data using the negotiated tokens. + + The process is optimized to avoid duplicate asset negotiations when multiple submodels + share the same underlying asset. + + Args: + search_request: Request containing: + - counter_party_id (BPN): The Business Partner Number + - id: The shell ID to discover + - semantic_id_policies: Mapping of semantic IDs to their acceptable policies + + Returns: + Response containing the shell descriptor with submodel data included + + Example semantic_id_policies: + { + "urn:samm:io.catenax.part_type_information:1.0.0#PartTypeInformation": [ + { + "odrl:permission": { + "odrl:action": { + "@id": "odrl:use" + }, + "odrl:constraint": { + "odrl:and": [ + { + "odrl:leftOperand": { + "@id": "cx-policy:FrameworkAgreement" + }, + "odrl:operator": { + "@id": "odrl:eq" + }, + "odrl:rightOperand": "DataExchangeGovernance:1.0" + }, + { + "odrl:leftOperand": { + "@id": "cx-policy:Membership" + }, + "odrl:operator": { + "@id": "odrl:eq" + }, + "odrl:rightOperand": "active" + }, + { + "odrl:leftOperand": { + "@id": "cx-policy:UsagePurpose" + }, + "odrl:operator": { + "@id": "odrl:eq" + }, + "odrl:rightOperand": "cx.core.industrycore:1" + } + ] + } + }, + "odrl:prohibition": [], + "odrl:obligation": [] + } + ] + } + operationId: discover_submodels_v1_discover_shell_submodels_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverSubmodelsDataRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/shell/submodel: + post: + tags: + - Part Discovery Management + summary: Discover Submodel + description: |- + Discover a specific submodel by exact submodel ID using direct API call for optimal performance. + + This endpoint uses the DTR API direct endpoint /shell-descriptors/:base64aasid/submodel-descriptors/:base64submodelid + for fast, exact lookup of a specific submodel when you know the exact submodel ID. + + Args: + search_request: Request containing: + - counter_party_id (BPN): The Business Partner Number + - id: The shell ID to discover + - submodel_id: The exact submodel ID to retrieve (required) + - governance: List of policy dictionaries for the target submodel + + Returns: + Response containing single submodel descriptor and data + + Example governance structure: + [ + { + "odrl:permission": { + "odrl:action": {"@id": "odrl:use"}, + "odrl:constraint": { + "odrl:and": [ + { + "odrl:leftOperand": {"@id": "cx-policy:FrameworkAgreement"}, + "odrl:operator": {"@id": "odrl:eq"}, + "odrl:rightOperand": "DataExchangeGovernance:1.0" + } + ] + } + }, + "odrl:prohibition": [], + "odrl:obligation": [] + } + ] + operationId: discover_submodel_v1_discover_shell_submodel_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverSubmodelDataRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' + /v1/discover/shell/submodels/semanticId: + post: + tags: + - Part Discovery Management + summary: Discover Submodels By Semantic Id + description: |- + Discover submodels by semantic IDs. Searches through all submodels to find matches. + + This endpoint discovers the shell and searches through all submodels to find those + that match the provided semantic IDs (requiring all to match). May return multiple results. + + Args: + search_request: Request containing: + - counter_party_id (BPN): The Business Partner Number + - id: The shell ID to discover + - semantic_ids: List of semantic ID objects to search for + - semantic_id: Single semantic ID (converted to semantic_ids format) + - governance: List of policy dictionaries for target submodels + + Returns: + Response containing multiple submodel descriptors and data + + Example semantic_id format: + "urn:samm:io.catenax.part_type_information:1.0.0#PartTypeInformation" + + Example semantic_ids format: + [ + {"type": "GlobalReference", "value": "urn:samm:io.catenax.part_type_information:1.0.0#PartTypeInformation"}, + {"type": "DataElement", "value": "urn:samm:io.catenax.another_aspect:1.0.0#AnotherAspect"} + ] + operationId: discover_submodels_by_semantic_id_v1_discover_shell_submodels_semanticId_post + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DiscoverSubmodelSemanticIdDataRequest' + required: true + responses: + '200': + description: Successful Response + content: + application/json: + schema: {} + '422': + description: Validation Error + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPValidationError' /health: get: summary: Check Health @@ -2060,19 +2241,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. description: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Description description: The decription of the part. materials: @@ -2080,40 +2264,44 @@ components: - items: $ref: '#/components/schemas/Material' type: array - - type: 'null' + - type: object + nullable: true title: Materials - description: 'List of materials, e.g. [{''name'':''aluminum'',''share'':''20''}]' + description: List of materials, e.g. [{'name':'aluminum','share':'20'}] default: [] width: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The width of the part. height: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The height of the part. length: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The length of the part. weight: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The weight of the part. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} type: object required: @@ -2140,19 +2328,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. description: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Description description: The decription of the part. materials: @@ -2160,40 +2351,44 @@ components: - items: $ref: '#/components/schemas/Material' type: array - - type: 'null' + - type: object + nullable: true title: Materials - description: 'List of materials, e.g. [{''name'':''aluminum'',''share'':''20''}]' + description: List of materials, e.g. [{'name':'aluminum','share':'20'}] default: [] width: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The width of the part. height: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The height of the part. length: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The length of the part. weight: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The weight of the part. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} type: object required: @@ -2222,13 +2417,15 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. type: object @@ -2245,21 +2442,18 @@ components: anyOf: - type: string format: uuid - - type: 'null' + - type: object + nullable: true title: Globalid - description: >- - Optionally the Catena-X ID / global ID of the digital twin to - create. If not specified, a new UUID will be created automatically. + description: Optionally the Catena-X ID / global ID of the digital twin to create. If not specified, a new UUID will be created automatically. dtrAasId: anyOf: - type: string format: uuid - - type: 'null' + - type: object + nullable: true title: Dtraasid - description: >- - Optionally the shell descriptor ID ('AAS ID') of the digital twin in - the Digital Twin Registry. If not specified, a new UUID will be - created automatically. + description: Optionally the shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. If not specified, a new UUID will be created automatically. manufacturerId: type: string title: Manufacturerid @@ -2279,34 +2473,28 @@ components: anyOf: - additionalProperties: true type: object - - type: 'null' + - type: object + nullable: true title: Additionalcontext - description: >- - Additional context information about the digital twin. This can - include various metadata or properties associated with the twin. - Intended for handling twins by third party apps. + description: Additional context information about the digital twin. This can include various metadata or properties associated with the twin. Intended for handling twins by third party apps. registrations: anyOf: - additionalProperties: type: boolean type: object - - type: 'null' + - type: object + nullable: true title: Registrations - description: >- - A map of registration information for the digital twin in different - enablement service stacks. The key is the name of the enablement - service stack. + description: A map of registration information for the digital twin in different enablement service stacks. The key is the name of the enablement service stack. aspects: anyOf: - additionalProperties: $ref: '#/components/schemas/TwinAspectRead' type: object - - type: 'null' + - type: object + nullable: true title: Aspects - description: >- - A map of aspect information for the digital twin. The key is the - semantic ID of the aspect. The value is a TwinAspectRead object - containing details about the aspect. + description: A map of aspect information for the digital twin. The key is the semantic ID of the aspect. The value is a TwinAspectRead object containing details about the aspect. globalId: type: string format: uuid @@ -2316,9 +2504,7 @@ components: type: string format: uuid title: Dtraasid - description: >- - The shell descriptor ID ('AAS ID') of the digital twin in the - Digital Twin Registry. + description: The shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. createdDate: type: string format: date-time @@ -2334,7 +2520,8 @@ components: - items: $ref: '#/components/schemas/DataExchangeAgreementRead' type: array - - type: 'null' + - type: object + nullable: true title: Shares description: A list of data exchange agreements the digital twin is shared via. manufacturerId: @@ -2352,19 +2539,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. description: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Description description: The decription of the part. materials: @@ -2372,40 +2562,44 @@ components: - items: $ref: '#/components/schemas/Material' type: array - - type: 'null' + - type: object + nullable: true title: Materials - description: 'List of materials, e.g. [{''name'':''aluminum'',''share'':''20''}]' + description: List of materials, e.g. [{'name':'aluminum','share':'20'}] default: [] width: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The width of the part. height: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The height of the part. length: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The length of the part. weight: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The weight of the part. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} type: object required: @@ -2417,9 +2611,7 @@ components: - manufacturerPartId - name title: CatalogPartTwinDetailsRead - description: >- - Represents the details of a catalog part twin within the Digital Twin - Registry. + description: Represents the details of a catalog part twin within the Digital Twin Registry. CatalogPartTwinRead: properties: globalId: @@ -2431,9 +2623,7 @@ components: type: string format: uuid title: Dtraasid - description: >- - The shell descriptor ID ('AAS ID') of the digital twin in the - Digital Twin Registry. + description: The shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. createdDate: type: string format: date-time @@ -2449,7 +2639,8 @@ components: - items: $ref: '#/components/schemas/DataExchangeAgreementRead' type: array - - type: 'null' + - type: object + nullable: true title: Shares description: A list of data exchange agreements the digital twin is shared via. manufacturerId: @@ -2467,19 +2658,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. description: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Description description: The decription of the part. materials: @@ -2487,40 +2681,44 @@ components: - items: $ref: '#/components/schemas/Material' type: array - - type: 'null' + - type: object + nullable: true title: Materials - description: 'List of materials, e.g. [{''name'':''aluminum'',''share'':''20''}]' + description: List of materials, e.g. [{'name':'aluminum','share':'20'}] default: [] width: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The width of the part. height: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The height of the part. length: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The length of the part. weight: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The weight of the part. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} type: object required: @@ -2538,9 +2736,7 @@ components: businessPartnerNumber: type: string title: Businesspartnernumber - description: >- - The business partner number of the business partner with which the - catalog part is shared. + description: The business partner number of the business partner with which the catalog part is shared. manufacturerId: type: string title: Manufacturerid @@ -2563,9 +2759,7 @@ components: name: type: string title: Name - description: >- - The unique name of the data exchange agreement with the given - business partner. + description: The unique name of the data exchange agreement with the given business partner. contracts: items: $ref: '#/components/schemas/DataExchangeContractRead' @@ -2588,17 +2782,212 @@ components: edcUsagePolicyId: type: string title: Edcusagepolicyid - description: >- - The ID of the EDC usage policy for the background generated EDC - contract negotion + description: The ID of the EDC usage policy for the background generated EDC contract negotion type: object required: - semanticId - edcUsagePolicyId title: DataExchangeContractRead - description: >- - Represents document type specific contract terms belonging to a data - exchange agreement. + description: Represents document type specific contract terms belonging to a data exchange agreement. + DiscoverRegistriesRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + type: object + required: + - counterPartyId + title: DiscoverRegistriesRequest + DiscoverShellRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + id: + type: string + title: Id + description: The ID of the AAS. + dtrGovernance: + anyOf: + - items: + additionalProperties: true + type: object + type: array + - type: object + nullable: true + title: Dtrgovernance + description: DTR policies to use for connection negotiation. If not provided, will use cached policies for automatic contract negotiation. + type: object + required: + - counterPartyId + - id + title: DiscoverShellRequest + DiscoverShellsRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + limit: + anyOf: + - type: integer + - type: object + nullable: true + title: Limit + description: Maximum number of shells to return per page. + cursor: + anyOf: + - type: string + - type: object + nullable: true + title: Cursor + description: Cursor for pagination. + querySpec: + items: + $ref: '#/components/schemas/QuerySpec' + type: array + title: Queryspec + description: The query specifications for discovering shells. + dtrGovernance: + anyOf: + - items: + additionalProperties: true + type: object + type: array + - type: object + nullable: true + title: Dtrgovernance + description: DTR policies to use for connection negotiation. If not provided, will use cached policies for automatic contract negotiation. + type: object + required: + - counterPartyId + - querySpec + title: DiscoverShellsRequest + DiscoverSubmodelDataRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + id: + type: string + title: Id + description: The ID of the AAS. + dtrGovernance: + anyOf: + - items: + additionalProperties: true + type: object + type: array + - type: object + nullable: true + title: Dtrgovernance + description: DTR policies to use for connection negotiation. If not provided, will use cached policies for automatic contract negotiation. + submodelId: + type: string + title: Submodelid + description: The ID of the submodel. + governance: + items: + additionalProperties: true + type: object + type: array + title: Governance + description: Policies to be accepted for this semantic ID. + type: object + required: + - counterPartyId + - id + title: DiscoverSubmodelDataRequest + DiscoverSubmodelSemanticIdDataRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + id: + type: string + title: Id + description: The ID of the AAS. + dtrGovernance: + anyOf: + - items: + additionalProperties: true + type: object + type: array + - type: object + nullable: true + title: Dtrgovernance + description: DTR policies to use for connection negotiation. If not provided, will use cached policies for automatic contract negotiation. + semanticIds: + anyOf: + - items: + additionalProperties: + type: string + type: object + type: array + - type: object + nullable: true + title: Semanticids + description: The semantic IDs of the submodel. + semanticId: + anyOf: + - type: string + - type: object + nullable: true + title: Semanticid + description: The semantic ID of the submodel. + governance: + items: + additionalProperties: true + type: object + type: array + title: Governance + description: Policies to be accepted for this semantic ID. + type: object + required: + - counterPartyId + - id + title: DiscoverSubmodelSemanticIdDataRequest + DiscoverSubmodelsDataRequest: + properties: + counterPartyId: + type: string + title: Counterpartyid + description: The counter party ID of the part. + id: + type: string + title: Id + description: The ID of the AAS. + dtrGovernance: + anyOf: + - items: + additionalProperties: true + type: object + type: array + - type: object + nullable: true + title: Dtrgovernance + description: DTR policies to use for connection negotiation. If not provided, will use cached policies for automatic contract negotiation. + governance: + anyOf: + - additionalProperties: + items: + additionalProperties: true + type: object + type: array + type: object + - type: object + nullable: true + title: Governance + description: Mapping of semantic IDs to their acceptable policies for submodel data retrieval. + type: object + required: + - counterPartyId + - id + title: DiscoverSubmodelsDataRequest DoGetParams: properties: counter_party_id: @@ -2624,31 +3013,36 @@ components: verify: anyOf: - type: boolean - - type: 'null' + - type: object + nullable: true title: Verify default: false headers: anyOf: - additionalProperties: true type: object - - type: 'null' + - type: object + nullable: true title: Headers default: {} timeout: anyOf: - type: integer - - type: 'null' + - type: object + nullable: true title: Timeout params: anyOf: - additionalProperties: true type: object - - type: 'null' + - type: object + nullable: true title: Params allow_redirects: anyOf: - type: boolean - - type: 'null' + - type: object + nullable: true title: Allow Redirects default: false type: object @@ -2685,7 +3079,8 @@ components: anyOf: - items: {} type: array - - type: 'null' + - type: object + nullable: true title: Policies verify: type: boolean @@ -2695,12 +3090,14 @@ components: anyOf: - additionalProperties: true type: object - - type: 'null' + - type: object + nullable: true title: Headers timeout: anyOf: - type: integer - - type: 'null' + - type: object + nullable: true title: Timeout allow_redirects: type: boolean @@ -2769,9 +3166,7 @@ components: customerPartId: type: string title: Customerpartid - description: >- - The customer part ID for partner specific mapping of the catalog - part. + description: The customer part ID for partner specific mapping of the catalog part. businessPartnerNumber: type: string title: Businesspartnernumber @@ -2796,9 +3191,7 @@ components: customerPartId: type: string title: Customerpartid - description: >- - The customer part ID for partner specific mapping of the catalog - part. + description: The customer part ID for partner specific mapping of the catalog part. manufacturerId: type: string title: Manufacturerid @@ -2814,13 +3207,15 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. businessPartner: @@ -2834,6 +3229,21 @@ components: - name - businessPartner title: PartnerCatalogPartRead + QuerySpec: + properties: + name: + type: string + title: Name + description: The name of the query specification. + value: + type: string + title: Value + description: The value of the query specification. + type: object + required: + - name + - value + title: QuerySpec SerializedPartCreate: properties: businessPartnerNumber: @@ -2855,13 +3265,15 @@ components: van: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Van description: The optional VAN (Vehicle Assembly Number) of the serialized part. customerPartId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Customerpartid description: The customer part ID of the part. type: object @@ -2876,37 +3288,43 @@ components: manufacturerId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Manufacturerid description: The BPNL (manufactuer ID) of the part to register. manufacturerPartId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Manufacturerpartid description: The manufacturer part ID of the part. businessPartnerNumber: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Businesspartnernumber description: The unique BPNL of the business partner. customerPartId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Customerpartid description: The customer part ID of the part. partInstanceId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Partinstanceid description: The part instance ID of the serialized part. van: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Van description: The optional VAN (Vehicle Assembly Number) of the serialized part. type: object @@ -2916,9 +3334,7 @@ components: customerPartId: type: string title: Customerpartid - description: >- - The customer part ID for partner specific mapping of the catalog - part. + description: The customer part ID for partner specific mapping of the catalog part. businessPartner: $ref: '#/components/schemas/BusinessPartnerRead' description: The business partner to whom the part is being offered. @@ -2941,19 +3357,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. van: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Van description: The optional VAN (Vehicle Assembly Number) of the serialized part. type: object @@ -2971,21 +3390,18 @@ components: anyOf: - type: string format: uuid - - type: 'null' + - type: object + nullable: true title: Globalid - description: >- - Optionally the Catena-X ID / global ID of the digital twin to - create. If not specified, a new UUID will be created automatically. + description: Optionally the Catena-X ID / global ID of the digital twin to create. If not specified, a new UUID will be created automatically. dtrAasId: anyOf: - type: string format: uuid - - type: 'null' + - type: object + nullable: true title: Dtraasid - description: >- - Optionally the shell descriptor ID ('AAS ID') of the digital twin in - the Digital Twin Registry. If not specified, a new UUID will be - created automatically. + description: Optionally the shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. If not specified, a new UUID will be created automatically. manufacturerId: type: string title: Manufacturerid @@ -3010,34 +3426,28 @@ components: anyOf: - additionalProperties: true type: object - - type: 'null' + - type: object + nullable: true title: Additionalcontext - description: >- - Additional context information about the digital twin. This can - include various metadata or properties associated with the twin. - Intended for handling twins by third party apps. + description: Additional context information about the digital twin. This can include various metadata or properties associated with the twin. Intended for handling twins by third party apps. registrations: anyOf: - additionalProperties: type: boolean type: object - - type: 'null' + - type: object + nullable: true title: Registrations - description: >- - A map of registration information for the digital twin in different - enablement service stacks. The key is the name of the enablement - service stack. + description: A map of registration information for the digital twin in different enablement service stacks. The key is the name of the enablement service stack. aspects: anyOf: - additionalProperties: $ref: '#/components/schemas/TwinAspectRead' type: object - - type: 'null' + - type: object + nullable: true title: Aspects - description: >- - A map of aspect information for the digital twin. The key is the - semantic ID of the aspect. The value is a TwinAspectRead object - containing details about the aspect. + description: A map of aspect information for the digital twin. The key is the semantic ID of the aspect. The value is a TwinAspectRead object containing details about the aspect. globalId: type: string format: uuid @@ -3047,9 +3457,7 @@ components: type: string format: uuid title: Dtraasid - description: >- - The shell descriptor ID ('AAS ID') of the digital twin in the - Digital Twin Registry. + description: The shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. createdDate: type: string format: date-time @@ -3065,15 +3473,14 @@ components: - items: $ref: '#/components/schemas/DataExchangeAgreementRead' type: array - - type: 'null' + - type: object + nullable: true title: Shares description: A list of data exchange agreements the digital twin is shared via. customerPartId: type: string title: Customerpartid - description: >- - The customer part ID for partner specific mapping of the catalog - part. + description: The customer part ID for partner specific mapping of the catalog part. businessPartner: $ref: '#/components/schemas/BusinessPartnerRead' description: The business partner to whom the part is being offered. @@ -3096,19 +3503,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. description: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Description description: The decription of the part. materials: @@ -3116,45 +3526,50 @@ components: - items: $ref: '#/components/schemas/Material' type: array - - type: 'null' + - type: object + nullable: true title: Materials - description: 'List of materials, e.g. [{''name'':''aluminum'',''share'':''20''}]' + description: List of materials, e.g. [{'name':'aluminum','share':'20'}] default: [] width: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The width of the part. height: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The height of the part. length: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The length of the part. weight: anyOf: - $ref: '#/components/schemas/Measurement' - - type: 'null' + - type: object + nullable: true description: The weight of the part. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} van: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Van description: The optional VAN (Vehicle Assembly Number) of the serialized part. type: object @@ -3170,9 +3585,7 @@ components: - partInstanceId - name title: SerializedPartTwinDetailsRead - description: >- - Represents the details of a serialized part twin within the Digital Twin - Registry. + description: Represents the details of a serialized part twin within the Digital Twin Registry. SerializedPartTwinRead: properties: globalId: @@ -3184,9 +3597,7 @@ components: type: string format: uuid title: Dtraasid - description: >- - The shell descriptor ID ('AAS ID') of the digital twin in the - Digital Twin Registry. + description: The shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. createdDate: type: string format: date-time @@ -3202,15 +3613,14 @@ components: - items: $ref: '#/components/schemas/DataExchangeAgreementRead' type: array - - type: 'null' + - type: object + nullable: true title: Shares description: A list of data exchange agreements the digital twin is shared via. customerPartId: type: string title: Customerpartid - description: >- - The customer part ID for partner specific mapping of the catalog - part. + description: The customer part ID for partner specific mapping of the catalog part. businessPartner: $ref: '#/components/schemas/BusinessPartnerRead' description: The business partner to whom the part is being offered. @@ -3233,19 +3643,22 @@ components: category: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Category description: The category of the part. bpns: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Bpns description: The site number (BPNS) the part is attached to. van: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Van description: The optional VAN (Vehicle Assembly Number) of the serialized part. type: object @@ -3295,44 +3708,36 @@ components: businessPartnerNumber: type: string title: Businesspartnernumber - description: >- - The business partner number of the business partner with which the - catalog part is shared. + description: The business partner number of the business partner with which the catalog part is shared. customerPartId: anyOf: - type: string - - type: 'null' + - type: object + nullable: true title: Customerpartid - description: >- - The customer part ID which will be mapped to the respective Business - Partner + description: The customer part ID which will be mapped to the respective Business Partner type: object required: - manufacturerId - manufacturerPartId - businessPartnerNumber title: ShareCatalogPart - description: >- - Class that stores the information required by request in the sharing - functionalit, for catalog parts + description: Class that stores the information required by request in the sharing functionalit, for catalog parts SharedPartBase: properties: businessPartnerNumber: type: string title: Businesspartnernumber - description: >- - The business partner number of the business partner with which the - catalog part is shared. + description: The business partner number of the business partner with which the catalog part is shared. customerPartIds: anyOf: - additionalProperties: $ref: '#/components/schemas/BusinessPartnerRead' type: object - - type: 'null' + - type: object + nullable: true title: Customerpartids - description: >- - The list of customer part IDs mapped to the respective Business - Partners. + description: The list of customer part IDs mapped to the respective Business Partners. default: {} sharedAt: type: string @@ -3342,7 +3747,8 @@ components: twin: anyOf: - $ref: '#/components/schemas/CatalogPartTwinDetailsRead' - - type: 'null' + - type: object + nullable: true description: The digital twin created for part that was shared. type: object required: @@ -3364,33 +3770,24 @@ components: type: string format: uuid title: Globalid - description: >- - The Catena-X ID / global ID of the digital twin to which the new - aspect belongs. + description: The Catena-X ID / global ID of the digital twin to which the new aspect belongs. semanticId: type: string title: Semanticid - description: >- - The semantic ID of the new aspect determining the structure of the - associated payload data. + description: The semantic ID of the new aspect determining the structure of the associated payload data. submodelId: anyOf: - type: string format: uuid - - type: 'null' + - type: object + nullable: true title: Submodelid - description: >- - The optional ID of the submodel descriptor within the DTR shell - descriptor for the associated twin. If not specified, a new UUID - will be created automatically. + description: The optional ID of the submodel descriptor within the DTR shell descriptor for the associated twin. If not specified, a new UUID will be created automatically. payload: additionalProperties: true type: object title: Payload - description: >- - The payload data of the new aspect. This is a JSON object that - contains the actual data of the aspect. The structure of this object - is determined by the semantic ID of the aspect. + description: The payload data of the new aspect. This is a JSON object that contains the actual data of the aspect. The structure of this object is determined by the semantic ID of the aspect. type: object required: - globalId @@ -3402,27 +3799,21 @@ components: semanticId: type: string title: Semanticid - description: >- - The semantic ID of the aspect determining the structure of the - associated payload data. + description: The semantic ID of the aspect determining the structure of the associated payload data. submodelId: type: string format: uuid title: Submodelid - description: >- - The ID of the submodel descriptor within the DTR shell descriptor - for the associated twin. + description: The ID of the submodel descriptor within the DTR shell descriptor for the associated twin. registrations: anyOf: - additionalProperties: $ref: '#/components/schemas/TwinAspectRegistration' type: object - - type: 'null' + - type: object + nullable: true title: Registrations - description: >- - A map of registration information for the aspect in different - enablement service stacks. The key is the name of the enablement - service stack. + description: A map of registration information for the aspect in different enablement service stacks. The key is the name of the enablement service stack. default: {} type: object required: @@ -3434,9 +3825,7 @@ components: enablementServiceStackName: type: string title: Enablementservicestackname - description: >- - The name of the enablement service stack where the twin aspect is - registered. + description: The name of the enablement service stack where the twin aspect is registered. status: $ref: '#/components/schemas/TwinAspectRegistrationStatus' description: The current status of the aspect registration process. @@ -3461,9 +3850,7 @@ components: - createdDate - modifiedDate title: TwinAspectRegistration - description: >- - Represents the registration of a twin aspect within an enablement - service stack. + description: Represents the registration of a twin aspect within an enablement service stack. TwinAspectRegistrationStatus: type: integer enum: @@ -3472,9 +3859,7 @@ components: - 2 - 3 title: TwinAspectRegistrationStatus - description: >- - An enumeration of potential status values when a twin aspect is - registered within the system + description: An enumeration of potential status values when a twin aspect is registered within the system TwinRead: properties: globalId: @@ -3486,9 +3871,7 @@ components: type: string format: uuid title: Dtraasid - description: >- - The shell descriptor ID ('AAS ID') of the digital twin in the - Digital Twin Registry. + description: The shell descriptor ID ('AAS ID') of the digital twin in the Digital Twin Registry. createdDate: type: string format: date-time @@ -3504,7 +3887,8 @@ components: - items: $ref: '#/components/schemas/DataExchangeAgreementRead' type: array - - type: 'null' + - type: object + nullable: true title: Shares description: A list of data exchange agreements the digital twin is shared via. type: object @@ -3522,9 +3906,7 @@ components: - 1 - 2 title: TwinsAspectRegistrationMode - description: >- - An enumeration of potential possibilities how to provide aspects as - assets wihtin the Eclipse Dataspace Connector + description: An enumeration of potential possibilities how to provide aspects as assets wihtin the Eclipse Dataspace Connector Unit: type: string enum: @@ -3557,25 +3939,16 @@ components: title: ValidationError tags: - name: Part Management - description: >- - Management of part metadata - including catalog parts, serialized parts, - JIS parts and batches + description: Management of part metadata - including catalog parts, serialized parts, JIS parts and batches - name: Sharing Functionality - description: >- - Sharing functionality for catalog part twins - including sharing of parts - with business partners and automatic generation of digital twins and - submodels + description: Sharing functionality for catalog part twins - including sharing of parts with business partners and automatic generation of digital twins and submodels - name: Partner Management - description: >- - Management of master data around business partners - including business - partners, data exchange agreements and contracts + description: Management of master data around business partners - including business partners, data exchange agreements and contracts - name: Twin Management description: Management of how product information can be managed and shared - name: Submodel Dispatcher - description: >- - Internal API called by EDC Data Planes or Admins in order the deliver data - of of the internal used Submodel Service + description: Internal API called by EDC Data Planes or Admins in order the deliver data of of the internal used Submodel Service - name: Open Connection Management - description: >- - Handles the connections from the consumer modules, for specific services - like digital twin registry and data endpoints + description: Handles the connections from the consumer modules, for specific services like digital twin registry and data endpoints + - name: Part Discovery Management + description: Management of the discovery of parts, searching for digital twins and digital twins registries