From e5da778762550138629543b46c085e7236309908 Mon Sep 17 00:00:00 2001 From: Sahil Aggarwal Date: Mon, 18 Mar 2024 20:29:35 +0100 Subject: [PATCH 1/5] Changed API path from api/v3.0/ to api/v3/ --- CHANGELOG.md | 1 + .../static/access-control-openapi.yaml | 4 +- backend/loadtests/locust/locustfile.py | 6 +- .../static/aas-registry-openapi.yaml | 4 +- .../AbstractAssetAdministrationShellApi.java | 14 ++--- ...setAdministrationShellApiSecurityTest.java | 8 +-- .../AssetAdministrationShellApiTest.java | 2 +- ...setAdministrationShellApiSecurityTest.java | 50 ++++++++--------- .../tests/test-script-configmap.yaml | 8 +-- docs/README.md | 10 ++-- .../tractusx-dtr-aas-3.0.0-collection.json | 50 ++++++++--------- .../tractusx-dtr-aas-3.1.0-collection.json | 56 +++++++++---------- ...s-rule-management-api-v1.0-collection.json | 16 +++--- e2e-tests/aas-registry/test_api.tavern.yaml | 12 ++-- 14 files changed, 121 insertions(+), 120 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c2bb6a50..68a553d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added API POST lookup/shellsByAssetLink to retrieve shell ids without base64 encryption. - Added v3.1.0 postman collection for new API. ## fixed +- Changed API path from api/v3.0/ to api/v3/ ## 0.4.1-RC2 ### Added diff --git a/access-control-service-sql-impl/src/main/resources/static/access-control-openapi.yaml b/access-control-service-sql-impl/src/main/resources/static/access-control-openapi.yaml index faf7085f..bf7f8498 100644 --- a/access-control-service-sql-impl/src/main/resources/static/access-control-openapi.yaml +++ b/access-control-service-sql-impl/src/main/resources/static/access-control-openapi.yaml @@ -50,9 +50,9 @@ servers: - "443" - "4243" version_prefix: - default: v3.0 + default: v3 enum: - - v3.0 + - v3 context_root: description: Context root for the API default: "" diff --git a/backend/loadtests/locust/locustfile.py b/backend/loadtests/locust/locustfile.py index 203803af..2745368c 100644 --- a/backend/loadtests/locust/locustfile.py +++ b/backend/loadtests/locust/locustfile.py @@ -37,7 +37,7 @@ class AasRegistryTask(HttpUser): def createAndQueryAasDescriptor(self): shell = generate_shell() headers = { 'Content-Type' : 'application/json', 'Edc-Bpn' : 'BPN_COMPANY_1'} - with self.client.post("/api/v3.0/shell-descriptors", data=json.dumps(shell), headers= headers, catch_response=True) as response: + with self.client.post("/api/v3/shell-descriptors", data=json.dumps(shell), headers= headers, catch_response=True) as response: if response.status_code != 201: response.failure(f"Expected 201 but status code was {response.status_code}") raise RescheduleTask() @@ -45,14 +45,14 @@ def createAndQueryAasDescriptor(self): shell_id = shell['id'] shell_id_encoded = str(base64.urlsafe_b64encode(shell_id.encode("utf-8")), "utf-8") - with self.client.get(f"/api/v3.0/shell-descriptors/{shell_id_encoded}", name = "/api/v3.0/shell-descriptors/{id}", headers= headers, catch_response=True) as response: + with self.client.get(f"/api/v3/shell-descriptors/{shell_id_encoded}", name = "/api/v3/shell-descriptors/{id}", headers= headers, catch_response=True) as response: if response.status_code != 200: response.failure(f"Expected 200 but status code was {response.status_code}") raise RescheduleTask() specificAssetIds = shell['specificAssetIds'] decodedAssetIds = urllib.parse.quote_plus(json.dumps(specificAssetIds)) - with self.client.get(f"/api/v3.0/lookup/shells?assetIds={decodedAssetIds}", name = "/api/v3.0/lookup/shells?assetIds={assetIds}", headers= headers, catch_response=True) as response: + with self.client.get(f"/api/v3/lookup/shells?assetIds={decodedAssetIds}", name = "/api/v3/lookup/shells?assetIds={assetIds}", headers= headers, catch_response=True) as response: if response.status_code != 200: response.failure(f"Expected 200 but status code was {response.status_code}") raise RescheduleTask() diff --git a/backend/src/main/resources/static/aas-registry-openapi.yaml b/backend/src/main/resources/static/aas-registry-openapi.yaml index 56befe9c..caafc23e 100644 --- a/backend/src/main/resources/static/aas-registry-openapi.yaml +++ b/backend/src/main/resources/static/aas-registry-openapi.yaml @@ -53,9 +53,9 @@ servers: - "443" - "4243" version_prefix: - default: v3.0 + default: v3 enum: - - v3.0 + - v3 context_root: description: Context root for the API default: "" diff --git a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AbstractAssetAdministrationShellApi.java b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AbstractAssetAdministrationShellApi.java index 928a8a81..0cb68581 100644 --- a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AbstractAssetAdministrationShellApi.java +++ b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AbstractAssetAdministrationShellApi.java @@ -46,13 +46,13 @@ @EnableConfigurationProperties( RegistryProperties.class) public abstract class AbstractAssetAdministrationShellApi { - protected static final String SHELL_BASE_PATH = "/api/v3.0/shell-descriptors"; - protected static final String SINGLE_SHELL_BASE_PATH = "/api/v3.0/shell-descriptors/{aasIdentifier}"; - protected static final String LOOKUP_SHELL_BASE_PATH = "/api/v3.0/lookup/shells"; - protected static final String LOOKUP_SHELL_BASE_PATH_POST = "/api/v3.0/lookup/shellsByAssetLink"; - protected static final String SINGLE_LOOKUP_SHELL_BASE_PATH = "/api/v3.0/lookup/shells/{aasIdentifier}"; - protected static final String SUB_MODEL_BASE_PATH = "/api/v3.0/shell-descriptors/{aasIdentifier}/submodel-descriptors"; - protected static final String SINGLE_SUB_MODEL_BASE_PATH = "/api/v3.0/shell-descriptors/{aasIdentifier}/submodel-descriptors/{submodelIdentifier}"; + protected static final String SHELL_BASE_PATH = "/api/v3/shell-descriptors"; + protected static final String SINGLE_SHELL_BASE_PATH = "/api/v3/shell-descriptors/{aasIdentifier}"; + protected static final String LOOKUP_SHELL_BASE_PATH = "/api/v3/lookup/shells"; + protected static final String LOOKUP_SHELL_BASE_PATH_POST = "/api/v3/lookup/shellsByAssetLink"; + protected static final String SINGLE_LOOKUP_SHELL_BASE_PATH = "/api/v3/lookup/shells/{aasIdentifier}"; + protected static final String SUB_MODEL_BASE_PATH = "/api/v3/shell-descriptors/{aasIdentifier}/submodel-descriptors"; + protected static final String SINGLE_SUB_MODEL_BASE_PATH = "/api/v3/shell-descriptors/{aasIdentifier}/submodel-descriptors/{submodelIdentifier}"; protected static final String EXTERNAL_SUBJECT_ID_HEADER = "Edc-Bpn"; diff --git a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiSecurityTest.java b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiSecurityTest.java index b99194ed..1a2ea719 100644 --- a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiSecurityTest.java +++ b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiSecurityTest.java @@ -1276,7 +1276,7 @@ class DescriptionApiTest { public void testGetDescriptionOnlyDeleteRoleExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/description" ) + .get( "/api/v3/description" ) .accept( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.deleteTwin() ) ) @@ -1288,7 +1288,7 @@ public void testGetDescriptionOnlyDeleteRoleExpectForbidden() throws Exception { public void testGetDescriptionNoRoleExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/description" ) + .get( "/api/v3/description" ) .accept( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.withoutRoles() ) ) @@ -1300,7 +1300,7 @@ public void testGetDescriptionNoRoleExpectForbidden() throws Exception { public void testGetDescriptionReadRoleExpectSuccess() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/description" ) + .get( "/api/v3/description" ) .accept( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.readTwin() ) ) @@ -1312,7 +1312,7 @@ public void testGetDescriptionReadRoleExpectSuccess() throws Exception { public void testGetDescriptionReadRoleExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/description" ) + .get( "/api/v3/description" ) .accept( MediaType.APPLICATION_JSON ) ) .andDo( MockMvcResultHandlers.print() ) diff --git a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiTest.java b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiTest.java index 36ab98cf..f0310e03 100644 --- a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiTest.java +++ b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/AssetAdministrationShellApiTest.java @@ -1231,7 +1231,7 @@ class DescriptionApiTest { public void testGetDescriptionExpectSuccess() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/description" ) + .get( "/api/v3/description" ) .accept( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.allRoles() ) ) diff --git a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/GranularAssetAdministrationShellApiSecurityTest.java b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/GranularAssetAdministrationShellApiSecurityTest.java index 0242e492..809a76f9 100644 --- a/backend/src/test/java/org/eclipse/tractusx/semantics/registry/GranularAssetAdministrationShellApiSecurityTest.java +++ b/backend/src/test/java/org/eclipse/tractusx/semantics/registry/GranularAssetAdministrationShellApiSecurityTest.java @@ -345,7 +345,7 @@ class SubmodelEndpointAuthorizationApiTest { void testPostSubmodelDescriptorAuthorizedWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .content( HTTP_EDC_DATA_PLANE_URL_REQUEST ) .header( EXTERNAL_SUBJECT_ID_HEADER, jwtTokenFactory.tenantOne().getTenantId() ) @@ -358,7 +358,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutTokenExpectUnauthorized() throws void testPostSubmodelDescriptorAuthorizedWithoutAppropriateRoleExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.readTwin() ) .content( HTTP_EDC_DATA_PLANE_URL_REQUEST ) @@ -372,7 +372,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutAppropriateRoleExpectForbidden() void testPostSubmodelDescriptorAuthorizedWithoutContentExpectBadRequest() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantOne().submodelAccessControl() ) .header( EXTERNAL_SUBJECT_ID_HEADER, jwtTokenFactory.tenantOne().getTenantId() ) @@ -385,7 +385,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutContentExpectBadRequest() throws void testPostSubmodelDescriptorAuthorizedWithoutTenantIdExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantOne().submodelAccessControl() ) .content( HTTP_EDC_DATA_PLANE_URL_REQUEST ) @@ -398,7 +398,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutTenantIdExpectForbidden() throws void testPostSubmodelDescriptorAuthorizedWithoutAnyShellsExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantOne().submodelAccessControl() ) .content( HTTP_EDC_DATA_PLANE_URL_REQUEST ) @@ -432,7 +432,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutMatchingSemanticIdExpectForbidde //Tenant two should not have access because the rule does not give access to any semanticIds mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantTwo().submodelAccessControl() ) .content( getRequestForUrl( EXISTING_URL + randomId ) ) @@ -466,7 +466,7 @@ void testPostSubmodelDescriptorAuthorizedWithMatchingShellAndSemanticIdExpectSuc //Tenant two should have access due to the matching shell and semantic Id values mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantTwo().submodelAccessControl() ) .content( getRequestForUrl( EXISTING_URL + randomId ) ) @@ -500,7 +500,7 @@ void testPostSubmodelDescriptorAuthorizedWithoutMatchingShellExpectForbidden() t //Tenant three should have access due to the non-visible shell (as it is only visible to tenantTwo mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/submodel-descriptor/authorized" ) + .post( "/api/v3/submodel-descriptor/authorized" ) .contentType( MediaType.APPLICATION_JSON ) .with( jwtTokenFactory.tenantThree().submodelAccessControl() ) .content( getRequestForUrl( EXISTING_URL + randomId ) ) @@ -537,7 +537,7 @@ class AccessRuleEndpointApiTest { void testGetAccessRulesWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules" ) + .get( "/api/v3/access-controls/rules" ) ) .andDo( MockMvcResultHandlers.print() ) .andExpect( status().isUnauthorized() ); @@ -547,7 +547,7 @@ void testGetAccessRulesWithoutTokenExpectUnauthorized() throws Exception { void testPostAccessRuleWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/access-controls/rules" ) + .post( "/api/v3/access-controls/rules" ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new CreateAccessRule() .policyType( PolicyType.AAS ) @@ -562,7 +562,7 @@ void testPostAccessRuleWithoutTokenExpectUnauthorized() throws Exception { void testGetAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules/1" ) + .get( "/api/v3/access-controls/rules/1" ) ) .andDo( MockMvcResultHandlers.print() ) .andExpect( status().isUnauthorized() ); @@ -572,7 +572,7 @@ void testGetAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { void testPutAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .put( "/api/v3.0/access-controls/rules/1" ) + .put( "/api/v3/access-controls/rules/1" ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new ReadUpdateAccessRule() .id( 1L ) @@ -589,7 +589,7 @@ void testPutAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { void testDeleteAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { mvc.perform( MockMvcRequestBuilders - .delete( "/api/v3.0/access-controls/rules/1" ) + .delete( "/api/v3/access-controls/rules/1" ) ) .andDo( MockMvcResultHandlers.print() ) .andExpect( status().isUnauthorized() ); @@ -599,7 +599,7 @@ void testDeleteAnAccessRuleWithoutTokenExpectUnauthorized() throws Exception { void testGetAccessRulesWithWrongTokenExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules" ) + .get( "/api/v3/access-controls/rules" ) .with( jwtTokenFactory.tenantOne().writeAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -610,7 +610,7 @@ void testGetAccessRulesWithWrongTokenExpectForbidden() throws Exception { void testPostAccessRuleWithWrongTokenExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/access-controls/rules" ) + .post( "/api/v3/access-controls/rules" ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new CreateAccessRule() .policyType( PolicyType.AAS ) @@ -626,7 +626,7 @@ void testPostAccessRuleWithWrongTokenExpectForbidden() throws Exception { void testGetAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules/1" ) + .get( "/api/v3/access-controls/rules/1" ) .with( jwtTokenFactory.tenantOne().writeAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -637,7 +637,7 @@ void testGetAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { void testPutAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .put( "/api/v3.0/access-controls/rules/1" ) + .put( "/api/v3/access-controls/rules/1" ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new ReadUpdateAccessRule() .id( 1L ) @@ -655,7 +655,7 @@ void testPutAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { void testDeleteAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { mvc.perform( MockMvcRequestBuilders - .delete( "/api/v3.0/access-controls/rules/1" ) + .delete( "/api/v3/access-controls/rules/1" ) .with( jwtTokenFactory.tenantOne().readAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -666,7 +666,7 @@ void testDeleteAnAccessRuleWithWrongTokenExpectForbidden() throws Exception { void testGetAccessRulesWithTokenExpectSuccess() throws Exception { mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules" ) + .get( "/api/v3/access-controls/rules" ) .with( jwtTokenFactory.tenantOne().readAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -679,7 +679,7 @@ void testPostAccessRuleWithTokenExpectSuccess() throws Exception { String description = UUID.randomUUID().toString(); String responseBody = mvc.perform( MockMvcRequestBuilders - .post( "/api/v3.0/access-controls/rules" ) + .post( "/api/v3/access-controls/rules" ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new CreateAccessRule() .policyType( PolicyType.AAS ) @@ -710,7 +710,7 @@ void testGetAnAccessRuleWithTokenExpectSuccess() throws Exception { AccessRule saved = saveDefaultRule( description ); String responseBody = mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules/" + saved.getId() ) + .get( "/api/v3/access-controls/rules/" + saved.getId() ) .with( jwtTokenFactory.tenantOne().readAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -742,7 +742,7 @@ void testPutAnAccessRuleWithTokenExpectSuccess() throws Exception { String description = UUID.randomUUID().toString(); String responseBody = mvc.perform( MockMvcRequestBuilders - .put( "/api/v3.0/access-controls/rules/" + saved.getId() ) + .put( "/api/v3/access-controls/rules/" + saved.getId() ) .contentType( MediaType.APPLICATION_JSON ) .content( objectMapper.writeValueAsString( new ReadUpdateAccessRule() .id( saved.getId() ) @@ -775,7 +775,7 @@ void testDeleteAnAccessRuleWithTokenExpectSuccess() throws Exception { //verify that it exists mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules/" + saved.getId() ) + .get( "/api/v3/access-controls/rules/" + saved.getId() ) .with( jwtTokenFactory.tenantOne().readAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -783,7 +783,7 @@ void testDeleteAnAccessRuleWithTokenExpectSuccess() throws Exception { //delete mvc.perform( MockMvcRequestBuilders - .delete( "/api/v3.0/access-controls/rules/" + saved.getId() ) + .delete( "/api/v3/access-controls/rules/" + saved.getId() ) .with( jwtTokenFactory.tenantOne().writeAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) @@ -791,7 +791,7 @@ void testDeleteAnAccessRuleWithTokenExpectSuccess() throws Exception { //verify that it does not exist mvc.perform( MockMvcRequestBuilders - .get( "/api/v3.0/access-controls/rules/" + saved.getId() ) + .get( "/api/v3/access-controls/rules/" + saved.getId() ) .with( jwtTokenFactory.tenantOne().readAccessRules() ) ) .andDo( MockMvcResultHandlers.print() ) diff --git a/charts/registry/templates/tests/test-script-configmap.yaml b/charts/registry/templates/tests/test-script-configmap.yaml index faf3a753..ea94bc24 100644 --- a/charts/registry/templates/tests/test-script-configmap.yaml +++ b/charts/registry/templates/tests/test-script-configmap.yaml @@ -50,7 +50,7 @@ data: stages: - name: Create shell descriptor expect success request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors" method: POST headers: Content-Type: application/json @@ -65,7 +65,7 @@ data: - name: Get shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: GET headers: Content-Type: application/json @@ -84,7 +84,7 @@ data: - name: Update shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: PUT headers: Content-Type: application/json @@ -97,7 +97,7 @@ data: - name: Delete shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: DELETE headers: Content-Type: application/json diff --git a/docs/README.md b/docs/README.md index a71c04c4..3bd1335c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -250,7 +250,7 @@ To be able to register a DigitalTwin the following prerequisites must be met. ```mermaid sequenceDiagram - Client->>+Decentralized digital Twin registry: POST /api/v3.0/shell-descriptors + Client->>+Decentralized digital Twin registry: POST /api/v3/shell-descriptors Decentralized digital Twin registry->>+Client: 200 Ok Response success Note left of Client: Registers the AAS Descriptor by providing
- assetIds to make discovery possible (e.g. VIN)
- Submodel Descriptor Endpoint ``` @@ -533,7 +533,7 @@ _________________ Example to create a *Digital Twin* with `specificAssetIds`: ``` POST Method: -{{registry-baseurl}}/api/v3.0/shell-descriptors +{{registry-baseurl}}/api/v3/shell-descriptors ``` ```json @@ -823,7 +823,7 @@ flowchart LR showFiltered-->END ``` -###### Lookup shells - `GET {{baseUrl}}/api/v3.0/lookup/shells?assetIds=...` +###### Lookup shells - `GET {{baseUrl}}/api/v3/lookup/shells?assetIds=...` In case of the lookup shells, the filtering and access control of the *Digital Twins* is done using the following steps: @@ -832,7 +832,7 @@ In case of the lookup shells, the filtering and access control of the *Digital T 3. The process is repeated until we have the desired number of *Digital Twins* or there are no more *Digital Twins* to fetch. 4. The AAS Ids of the visible *Digital Twins* are returned. -###### Get all shells - `GET {{baseUrl}}/api/v3.0/shell-descriptors` +###### Get all shells - `GET {{baseUrl}}/api/v3/shell-descriptors` The process is similar to the lookup shells, the filtering and access control of the *Digital Twins* is done as follows: @@ -841,7 +841,7 @@ The process is similar to the lookup shells, the filtering and access control of 3. The process is repeated until we have the desired number of *Digital Twins* or there are no more *Digital Twins* to fetch. 4. The visible properties of the visible *Digital Twins* are returned. -###### Get Shell by AAS Id - `GET {{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier` +###### Get Shell by AAS Id - `GET {{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier` To determine the visibility of a single *Digital Twin*, we can simply: diff --git a/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json b/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json index 084ea29a..93ba363d 100644 --- a/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json +++ b/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json @@ -25,7 +25,7 @@ } } }, - "url": "{{baseUrl}}/api/v3.0/shell-descriptors" + "url": "{{baseUrl}}/api/v3/shell-descriptors" }, "response": [] }, @@ -45,13 +45,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors" ], "query": [ @@ -91,13 +91,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -130,13 +130,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -160,13 +160,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -199,13 +199,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -237,13 +237,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -280,13 +280,13 @@ "method": "GET", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -326,13 +326,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -363,13 +363,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -409,13 +409,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", + "raw": "{{baseUrl}}/api/v3/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells" ], @@ -452,13 +452,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells", ":aasIdentifier" @@ -496,13 +496,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells", ":aasIdentifier" diff --git a/docs/development/postman/tractusx-dtr-aas-3.1.0-collection.json b/docs/development/postman/tractusx-dtr-aas-3.1.0-collection.json index 9fee6b35..d09774e4 100644 --- a/docs/development/postman/tractusx-dtr-aas-3.1.0-collection.json +++ b/docs/development/postman/tractusx-dtr-aas-3.1.0-collection.json @@ -27,13 +27,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors" ] } @@ -56,13 +56,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors" ], "query": [ @@ -102,13 +102,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -141,13 +141,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -171,13 +171,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier" ], @@ -210,13 +210,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -248,13 +248,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -291,13 +291,13 @@ "method": "GET", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -337,13 +337,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -374,13 +374,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -420,13 +420,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", + "raw": "{{baseUrl}}/api/v3/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells" ], @@ -463,13 +463,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells", ":aasIdentifier" @@ -507,13 +507,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shells", ":aasIdentifier" @@ -550,13 +550,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/lookup/shellsByAssetLink", + "raw": "{{baseUrl}}/api/v3/lookup/shellsByAssetLink", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "lookup", "shellsByAssetLink" ], diff --git a/docs/development/postman/tractusx-dtr-access-rule-management-api-v1.0-collection.json b/docs/development/postman/tractusx-dtr-access-rule-management-api-v1.0-collection.json index f2f77b2b..958f427a 100644 --- a/docs/development/postman/tractusx-dtr-access-rule-management-api-v1.0-collection.json +++ b/docs/development/postman/tractusx-dtr-access-rule-management-api-v1.0-collection.json @@ -10,7 +10,7 @@ "request": { "method": "GET", "header": [], - "url": "{{baseUrl}}/api/v3.0/access-controls/rules" + "url": "{{baseUrl}}/api/v3/access-controls/rules" }, "response": [] }, @@ -28,7 +28,7 @@ } } }, - "url": "{{baseUrl}}/api/v3.0/access-controls/rules" + "url": "{{baseUrl}}/api/v3/access-controls/rules" }, "response": [] }, @@ -38,13 +38,13 @@ "method": "GET", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/access-controls/rules/:ruleId", + "raw": "{{baseUrl}}/api/v3/access-controls/rules/:ruleId", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "access-controls", "rules", ":ruleId" @@ -74,13 +74,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3.0/access-controls/rules/:ruleId", + "raw": "{{baseUrl}}/api/v3/access-controls/rules/:ruleId", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "access-controls", "rules", ":ruleId" @@ -101,13 +101,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3.0/access-controls/rules/:ruleId", + "raw": "{{baseUrl}}/api/v3/access-controls/rules/:ruleId", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3.0", + "v3", "access-controls", "rules", ":ruleId" diff --git a/e2e-tests/aas-registry/test_api.tavern.yaml b/e2e-tests/aas-registry/test_api.tavern.yaml index 8c5404ea..fcbb0aea 100644 --- a/e2e-tests/aas-registry/test_api.tavern.yaml +++ b/e2e-tests/aas-registry/test_api.tavern.yaml @@ -27,7 +27,7 @@ includes: stages: - name: Test get shell descriptors without access token request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors" method: GET response: status_code: 401 @@ -37,7 +37,7 @@ stages: - name: Authenticated request request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors" method: GET headers: Content-Type: application/json @@ -61,7 +61,7 @@ stages: - name: Create shell descriptor expect success request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors" method: POST headers: Content-Type: application/json @@ -77,7 +77,7 @@ stages: - name: Get shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: GET headers: Content-Type: application/json @@ -97,7 +97,7 @@ stages: - name: Update shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: PUT headers: Content-Type: application/json @@ -111,7 +111,7 @@ stages: - name: Delete shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" method: DELETE headers: Content-Type: application/json From 5fda818513801df51cc51d6bef208bc68814c802 Mon Sep 17 00:00:00 2001 From: Sahil Aggarwal Date: Mon, 18 Mar 2024 20:41:53 +0100 Subject: [PATCH 2/5] Helm version version bump up --- charts/registry/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/registry/Chart.yaml b/charts/registry/Chart.yaml index 71e9c22a..b4eb2082 100644 --- a/charts/registry/Chart.yaml +++ b/charts/registry/Chart.yaml @@ -26,7 +26,7 @@ sources: - https://github.com/eclipse-tractusx/sldt-digital-twin-registry type: application -version: 0.4.9-RC2 +version: 0.4.9-RC3 appVersion: 0.4.1-RC2 dependencies: From abd1e8e9d77b46afeec3c225c81a6b829c9b6631 Mon Sep 17 00:00:00 2001 From: Sahil Aggarwal Date: Tue, 19 Mar 2024 10:46:23 +0100 Subject: [PATCH 3/5] revert helm chart changes --- charts/registry/Chart.yaml | 2 +- .../registry/templates/tests/test-script-configmap.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/charts/registry/Chart.yaml b/charts/registry/Chart.yaml index b4eb2082..71e9c22a 100644 --- a/charts/registry/Chart.yaml +++ b/charts/registry/Chart.yaml @@ -26,7 +26,7 @@ sources: - https://github.com/eclipse-tractusx/sldt-digital-twin-registry type: application -version: 0.4.9-RC3 +version: 0.4.9-RC2 appVersion: 0.4.1-RC2 dependencies: diff --git a/charts/registry/templates/tests/test-script-configmap.yaml b/charts/registry/templates/tests/test-script-configmap.yaml index ea94bc24..faf3a753 100644 --- a/charts/registry/templates/tests/test-script-configmap.yaml +++ b/charts/registry/templates/tests/test-script-configmap.yaml @@ -50,7 +50,7 @@ data: stages: - name: Create shell descriptor expect success request: - url: "{aas_registry_api_url:s}/api/v3/shell-descriptors" + url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors" method: POST headers: Content-Type: application/json @@ -65,7 +65,7 @@ data: - name: Get shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" method: GET headers: Content-Type: application/json @@ -84,7 +84,7 @@ data: - name: Update shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" method: PUT headers: Content-Type: application/json @@ -97,7 +97,7 @@ data: - name: Delete shell descriptor by id request: - url: "{aas_registry_api_url:s}/api/v3/shell-descriptors/{encoded_shell_id:s}" + url: "{aas_registry_api_url:s}/api/v3.0/shell-descriptors/{encoded_shell_id:s}" method: DELETE headers: Content-Type: application/json From e4c6722b97e858f87e750ac0450f7618029ca58f Mon Sep 17 00:00:00 2001 From: Sahil Aggarwal Date: Wed, 20 Mar 2024 11:05:45 +0100 Subject: [PATCH 4/5] revert dtr-collection v3.0.0 --- .../tractusx-dtr-aas-3.0.0-collection.json | 50 +++++++++---------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json b/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json index 93ba363d..084ea29a 100644 --- a/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json +++ b/docs/development/postman/tractusx-dtr-aas-3.0.0-collection.json @@ -25,7 +25,7 @@ } } }, - "url": "{{baseUrl}}/api/v3/shell-descriptors" + "url": "{{baseUrl}}/api/v3.0/shell-descriptors" }, "response": [] }, @@ -45,13 +45,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors" ], "query": [ @@ -91,13 +91,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier" ], @@ -130,13 +130,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier" ], @@ -160,13 +160,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier" ], @@ -199,13 +199,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -237,13 +237,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier", "submodel-descriptors" @@ -280,13 +280,13 @@ "method": "GET", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -326,13 +326,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -363,13 +363,13 @@ "method": "DELETE", "header": [], "url": { - "raw": "{{baseUrl}}/api/v3/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", + "raw": "{{baseUrl}}/api/v3.0/shell-descriptors/:aasIdentifier/submodel-descriptors/:submodelIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "shell-descriptors", ":aasIdentifier", "submodel-descriptors", @@ -409,13 +409,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", + "raw": "{{baseUrl}}/api/v3.0/lookup/shells?assetIds=[{\"name\":\"oen\",\"value\":\"1239485\"},{\"name\":\"manufacturePartId\",\"value\":\"1234\"}]", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "lookup", "shells" ], @@ -452,13 +452,13 @@ } ], "url": { - "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "lookup", "shells", ":aasIdentifier" @@ -496,13 +496,13 @@ } }, "url": { - "raw": "{{baseUrl}}/api/v3/lookup/shells/:aasIdentifier", + "raw": "{{baseUrl}}/api/v3.0/lookup/shells/:aasIdentifier", "host": [ "{{baseUrl}}" ], "path": [ "api", - "v3", + "v3.0", "lookup", "shells", ":aasIdentifier" From b759e21cdf23095d9cf676a1d45cc2d885d4aa2e Mon Sep 17 00:00:00 2001 From: Sahil Aggarwal Date: Wed, 20 Mar 2024 14:43:51 +0100 Subject: [PATCH 5/5] version update --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68a553d6..c39a0ef8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## 0.4.1-RC3 +## 0.4.1 ### Added - Added API POST lookup/shellsByAssetLink to retrieve shell ids without base64 encryption. - Added v3.1.0 postman collection for new API.