diff --git a/docs/edc/EDC_BPDM_Setup.postman_collection.json b/docs/edc/EDC_BPDM_Setup.postman_collection.json index ea373e612..1d10aeb33 100644 --- a/docs/edc/EDC_BPDM_Setup.postman_collection.json +++ b/docs/edc/EDC_BPDM_Setup.postman_collection.json @@ -1,6 +1,6 @@ { "info": { - "_postman_id": "de00b289-a903-447c-a437-e79d5c37c6ea", + "_postman_id": "c43d2b7b-2bd9-4fae-b49f-c147e4456bc3", "name": "EDC BPDM Setup", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "1816771" @@ -10,535 +10,1099 @@ "name": "Create Assets", "item": [ { - "name": "GET Legal Entity Input", - "event": [ + "name": "Gate Assets", + "item": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"GET_BPL_INPUT\",\n \"asset:prop:description\": \"GET Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntities)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Sharing-State", + "item": [ + { + "name": "GET Sharing States", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_SHARING_STATE}}\",\n \"properties\": {\n \"description\": \"GET Sharing States ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/sharing-state-controller/getSharingStates)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/sharing-state\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "PUT Sharing State", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_PUT_SHARING_STATE}}\",\n \"properties\": {\n \"description\": \"PUT Sharing State ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/sharing-state-controller/upsertSharingState)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/sharing-state\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "GET Site Input", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"GET_BPS_INPUT\",\n \"asset:prop:description\": \"GET Site Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/getSites)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" - } - } }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" - ] - } - }, - "response": [] - }, - { - "name": "GET Addess Input", - "event": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"GET_BPA_INPUT\",\n \"asset:prop:description\": \"GET Address Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/address-controller/getAddresses)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Input", + "item": [ + { + "name": "Legal Entity", + "item": [ + { + "name": "GET Legal Entity Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPL_INPUT}}\",\n \"properties\": {\n \"description\": \"GET Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntities)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "PUT Legal Entity Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_PUT_BPL_INPUT}}\",\n \"properties\": {\n \"description\": \"PUT Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/upsertLegalEntities)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Legal Entity Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPL_INPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Legal Entity Input Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntitiesByExternalIds)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + } + ] + }, + { + "name": "Site", + "item": [ + { + "name": "GET Site Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPS_INPUT}}\",\n \"properties\": {\n \"description\": \"GET Site Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/getSites)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "PUT Site Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_PUT_BPS_INPUT}}\",\n \"properties\": {\n \"description\": \"PUT Site Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/upsertSites)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Site Input Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPS_INPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Site Input Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getSitesByExternalIds)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + } + ] + }, + { + "name": "Address", + "item": [ + { + "name": "GET Addess Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPA_INPUT}}\",\n \"properties\": {\n \"description\": \"GET Address Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/getAddresses)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "PUT Address Input", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_PUT_BPA_INPUT}}\",\n \"properties\": {\n \"description\": \"PUT Address Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/upsertAddresses)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Address Input Search Copy", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPA_INPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Address Input Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getAddressesByExternalIds)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + } + ] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "PUT Legal Entity Input", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"PUT_BPL_INPUT\",\n \"asset:prop:description\": \"PUT Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/upsertLegalEntities)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" - } - } }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" - ] - } - }, - "response": [] - }, - { - "name": "PUT Site Input", - "event": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"PUT_BPS_INPUT\",\n \"asset:prop:description\": \"Upsert Site Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/upsertSites)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Output", + "item": [ + { + "name": "POST Legal Entity Output Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPL_OUTPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Legal Entity Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntitiesOutput)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/legal-entities/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Site Output Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPS_OUTPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Site Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getSitesOutput)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/sites/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Address Output Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPA_OUTPUT_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Address Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getAddressesOutput)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/addresses/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "PUT Address Input", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"PUT_BPA_INPUT\",\n \"asset:prop:description\": \"Upsert Address Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/address-controller/upsertAddresses)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"PUT\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" - } - } }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" - ] - } - }, - "response": [] - }, - { - "name": "POST Legal Entity Validation", - "event": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPL_VALID\",\n \"asset:prop:description\": \"POST Legal Entity Validation ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/validateSite)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/legal-entities/validation\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Changelog", + "item": [ + { + "name": "POST Input Changelog Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_INPUT_CHANGELOG_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Input Changelog Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/changelog-controller/getInputChangelog)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/changelog/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Output Changelog Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_OUTPUT_CHANGELOG_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Output Changelog Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/changelog-controller/getOutputChangelog)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/changelog/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] } - }, - "response": [] + ] }, { - "name": "POST Site Validation", - "event": [ + "name": "Pool Assets", + "item": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPS_VALID\",\n \"asset:prop:description\": \"POST Site Validation ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/validateSite)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/sites/validation\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Metadata", + "item": [ + { + "name": "GET Legal Forms", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_LEGAL_FORMS}}\",\n \"properties\": {\n \"description\": \"GET Legal Forms ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/metadata-controller/getLegalForms)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/legal-forms\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "GET Identifier Types", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_IDENTIFIER_TYPES}}\",\n \"properties\": {\n \"description\": \"GET Identifier Types ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/metadata-controller/getIdentifierTypes)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/identifier-types\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "GET Field Quality Rules", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_FIELD_QUALITY_RULES}}\",\n \"properties\": {\n \"description\": \"GET Field Quality Rules ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/metadata-controller/getFieldQualityRules)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/field-quality-rules\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "POST Address Validation", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPA_VALID\",\n \"asset:prop:description\": \"POST Address Validation ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/address-controller/validateSite_1)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/input/addresses/validation\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" - } - } }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" - ] - } - }, - "response": [] - }, - { - "name": "POST Legal Entity Output Search", - "event": [ { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPL_OUT\",\n \"asset:prop:description\": \"POST Legal Entity Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntitiesOutput)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/legal-entities/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Legal Entity", + "item": [ + { + "name": "GET Legal Entities", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPL_POOL}}\",\n \"properties\": {\n \"description\": \"GET Pool Legal Entities ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntities)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/legal-entities\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Legal Entity Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPL_POOL_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Pool Legal Entity Search ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/searchSites_1)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/legal-entities/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "POST Site Output Search", - "event": [ + }, { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPS_OUT\",\n \"asset:prop:description\": \"POST Site Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/site-controller/getSitesOutput)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/sites/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Sites", + "item": [ + { + "name": "GET Sites", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPS_POOL}}\",\n \"properties\": {\n \"description\": \"GET Pool Sites ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/site-controller/getSitesPaginated)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/sites\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Site Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPS_POOL_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Pool Site Search ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/site-controller/searchSites)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/sites/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "POST Address Output Search", - "event": [ + }, { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BPA_OUT\",\n \"asset:prop:description\": \"POST Address Output Search ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/address-controller/getAddressesOutput)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/output/addresses/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\",\n \"proxyQueryParams\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Addresses", + "item": [ + { + "name": "GET Addresses", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_GET_BPA_POOL}}\",\n \"properties\": {\n \"description\": \"GET Pool Addresses ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/address-controller/getAddresses_1)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/addresses\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] + }, + { + "name": "POST Address Search", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_BPA_POOL_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Pool Address Search ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/address-controller/searchAddresses)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/addresses/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] - } - }, - "response": [] - }, - { - "name": "POST Business Partner Type Match", - "event": [ + }, { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 201\", function () {", - " pm.response.to.have.status(201);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"asset\": {\n \"properties\": {\n \"asset:prop:id\": \"POST_BP_TYPE_MATCH\",\n \"asset:prop:description\": \"POST Business Partner Type Analysis ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/business-partner-controller/determineLsaType)\",\n \"asset:prop:company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"properties\": {\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_GATE_URL}}/api/catena/business-partners/type-match\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecret\": \"{{ASSET_CLIENT_SECRET}}\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n }\n}", - "options": { - "raw": { - "language": "json" + "name": "Changelog", + "item": [ + { + "name": "POST Business Partner Changelog", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 201\", function () {", + " pm.response.to.have.status(201);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"@context\": {},\n \"asset\": {\n \"@type\": \"Asset\",\n \"@id\": \"{{ASSET_POST_CHANGELOG_POOL_SEARCH}}\",\n \"properties\": {\n \"description\": \"POST Pool Changelog Search ({{BPDM_POOL_URL}}/ui/swagger-ui/index.html#/changelog-controller/getChangelogEntries)\",\n \"company\": \"{{COMPANY_ID}}\"\n }\n },\n \"dataAddress\": {\n \"@type\": \"DataAddress\",\n \"type\": \"HttpData\",\n \"baseUrl\": \"{{BPDM_POOL_URL}}/api/catena/business-partners/changelog/search\",\n \"oauth2:tokenUrl\": \"{{ASSET_TOKEN_URL}}\",\n \"oauth2:clientId\": \"{{ASSET_CLIENT_ID}}\",\n \"oauth2:clientSecretKey\": \"{{ASSET_CLIENT_SECRET}}\",\n \"proxyQueryParams\": \"true\",\n \"method\": \"POST\",\n \"proxyBody\": \"true\"\n }\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{PROVIDER_MANAGEMENT_URL}}/assets", + "host": [ + "{{PROVIDER_MANAGEMENT_URL}}" + ], + "path": [ + "assets" + ] + } + }, + "response": [] } - } - }, - "url": { - "raw": "{{EDC_MANAGEMENT_URL}}/data/assets", - "host": [ - "{{EDC_MANAGEMENT_URL}}" - ], - "path": [ - "data", - "assets" ] } - }, - "response": [] + ] } ] }, { - "name": "Policy", + "name": "Create Policy", "request": { "method": "POST", "header": [], "body": { "mode": "raw", - "raw": "{\n \"id\": \"MEMBER_BPN_ACCESS\",\n \"policy\": {\n \"prohibitions\": [],\n \"obligations\": [],\n \"permissions\": [\n {\n \"edctype\": \"dataspaceconnector:permission\",\n \"action\": {\n \"type\": \"USE\"\n },\n \"constraints\": [\n {\n \"edctype\": \"AtomicConstraint\",\n \"leftExpression\": {\n \"edctype\": \"dataspaceconnector:literalexpression\",\n \"value\": \"BusinessPartnerNumber\"\n },\n \"rightExpression\": {\n \"edctype\": \"dataspaceconnector:literalexpression\",\n \"value\": \"{{POLICY_BPN}}\"\n },\n \"operator\": \"EQ\"\n }\n ]\n }\n ]\n }\n}", + "raw": "{\n \"@context\": {\n \"odrl\": \"http://www.w3.org/ns/odrl/2/\"\n },\n \"@type\": \"PolicyDefinitionRequestDto\",\n \"@id\": \"{{POLICY_ID}}\",\n \"policy\": {\n\t\t\"@type\": \"Policy\",\n\t\t\"odrl:permission\" : [{\n\t\t\t\"odrl:action\" : \"USE\",\n\t\t\t\"odrl:constraint\" : {\n\t\t\t\t\"@type\": \"LogicalConstraint\",\n\t\t\t\t\"odrl:or\" : [{\n\t\t\t\t\t\"@type\" : \"Constraint\",\n\t\t\t\t\t\"odrl:leftOperand\" : \"BusinessPartnerNumber\",\n\t\t\t\t\t\"odrl:operator\" : {\n \"@id\": \"odrl:eq\"\n },\n\t\t\t\t\t\"odrl:rightOperand\" : \"{{POLICY_BPN}}\"\n\t\t\t\t}]\n\t\t\t}\n\t\t}]\n }\n}", "options": { "raw": { "language": "json" @@ -546,12 +1110,11 @@ } }, "url": { - "raw": "{{PROVIDER_DATAMGMT_URL}}/data/policydefinitions", + "raw": "{{PROVIDER_MANAGEMENT_URL}}/policydefinitions", "host": [ - "{{PROVIDER_DATAMGMT_URL}}" + "{{PROVIDER_MANAGEMENT_URL}}" ], "path": [ - "data", "policydefinitions" ] } @@ -559,13 +1122,13 @@ "response": [] }, { - "name": "Contract Definition", + "name": "Create Contract Definition", "request": { "method": "POST", "header": [], "body": { "mode": "raw", - "raw": "{\n \"id\": \"MEMBER_BPN_ACCESS_{{COMPANY_ID}}\",\n \"criteria\": [\n {\n \"operandLeft\": \"asset:prop:company\",\n \"operator\": \"=\",\n \"operandRight\": \"{{COMPANY_ID}}\"\n }\n ],\n \"accessPolicyId\": \"MEMBER_BPN_ACCESS\",\n \"contractPolicyId\": \"MEMBER_BPN_ACCESS\"\n}", + "raw": "{\n \"@context\": {},\n \"@id\": \"COMPANY_TEST_SHARING_MEMBER\",\n \"@type\": \"ContractDefinition\",\n \"accessPolicyId\": \"{{ACCESS_POLICY_ID}}\",\n \"contractPolicyId\": \"{{CONTRACT_POLICY_ID}}\",\n \"assetsSelector\": {\n \"@type\": \"CriterionDto\",\n \"operandLeft\": \"{{EDC_NAMESPACE}}id\",\n \"operator\": \"in\",\n \"operandRight\": [\n \"{{ASSET_GET_SHARING_STATE}}\",\n \"{{ASSET_GET_BPL_INPUT}}\",\n \"{{ASSET_PUT_BPL_INPUT}}\",\n \"{{ASSET_POST_BPL_INPUT_SEARCH}}\",\n \"{{ASSET_GET_BPS_INPUT}}\",\n \"{{ASSET_PUT_BPS_INPUT}}\",\n \"{{ASSET_POST_BPS_INPUT_SEARCH}}\",\n \"{{ASSET_GET_BPA_INPUT}}\",\n \"{{ASSET_PUT_BPA_INPUT}}\",\n \"{{ASSET_POST_BPA_INPUT_SEARCH}}\",\n \"{{ASSET_POST_BPL_OUTPUT_SEARCH}}\",\n \"{{ASSET_POST_BPS_OUTPUT_SEARCH}}\",\n \"{{ASSET_POST_BPA_OUTPUT_SEARCH}}\",\n \"{{ASSET_POST_INPUT_CHANGELOG_SEARCH}}\",\n \"{{ASSET_POST_OUTPUT_CHANGELOG_SEARCH}}\",\n \"{{ASSET_GET_LEGAL_FORMS}}\",\n \"{{ASSET_GET_IDENTIFIER_TYPES}}\",\n \"{{ASSET_GET_FIELD_QUALITY_RULES}}\",\n \"{{ASSET_GET_BPL_POOL}}\",\n \"{{ASSET_POST_BPL_POOL_SEARCH}}\",\n \"{{ASSET_GET_BPS_POOL}}\",\n \"{{ASSET_POST_BPS_POOL_SEARCH}}\",\n \"{{ASSET_GET_BPA_POOL}}\",\n \"{{ASSET_POST_BPA_POOL_SEARCH}}\",\n \"{{ASSET_POST_CHANGELOG_POOL_SEARCH}}\"\n ]\n }\n}", "options": { "raw": { "language": "json" @@ -573,12 +1136,11 @@ } }, "url": { - "raw": "{{PROVIDER_DATAMGMT_URL}}/data/contractdefinitions", + "raw": "{{PROVIDER_MANAGEMENT_URL}}/contractdefinitions", "host": [ - "{{PROVIDER_DATAMGMT_URL}}" + "{{PROVIDER_MANAGEMENT_URL}}" ], "path": [ - "data", "contractdefinitions" ] } @@ -591,7 +1153,7 @@ "apikey": [ { "key": "value", - "value": "{{EDC_API_KEY}}", + "value": "{{API-KEY}}", "type": "string" }, { @@ -623,38 +1185,206 @@ ], "variable": [ { - "key": "ASSET_CLIENT_ID", - "value": "", + "key": "PROVIDER_PROTOCOL_URL", + "value": "https://gate-edc-host/api/v1/dsp" + }, + { + "key": "PROVIDER_MANAGEMENT_URL", + "value": "https://gate-edc.int.demo.catena-x.net/management/v2" + }, + { + "key": "POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" + }, + { + "key": "CONTRACT_POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" + }, + { + "key": "ACCESS_POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" + }, + { + "key": "CONTRACT_DEFINITION_ID", + "value": "COMPANY_TEST_SHARING_MEMBER", + "type": "default" + }, + { + "key": "POLICY_BPN", + "value": "BPNL_SHARING_MEMBER", + "type": "default" + }, + { + "key": "PROVIDER_ID", + "value": "BPNL_GATE_PROVIDER", "type": "string" }, { - "key": "ASSET_CLIENT_SECRET", - "value": "", + "key": "EDC_NAMESPACE", + "value": "https://w3id.org/edc/v0.0.1/ns/", + "type": "string" + }, + { + "key": "API-KEY", + "value": "api-key", "type": "string" }, { "key": "ASSET_TOKEN_URL", - "value": "", + "value": "https://cx-openid-auth-server", "type": "string" }, { - "key": "EDC_MANAGEMENT_URL", - "value": "", + "key": "ASSET_CLIENT_ID", + "value": "client-id", + "type": "string" + }, + { + "key": "ASSET_CLIENT_SECRET", + "value": "vault-path-to-client-secret", + "type": "string" + }, + { + "key": "BPDM_POOL_URL", + "value": "https://bpdm-pool-api", "type": "string" }, { "key": "BPDM_GATE_URL", - "value": "", + "value": "https://bpdm-gate-api", + "type": "string" + }, + { + "key": "ASSET_GET_SHARING_STATE", + "value": "GET_SHARING_STATE", + "type": "string" + }, + { + "key": "ASSET_PUT_SHARING_STATE", + "value": "PUT_SHARING_STATE", + "type": "string" + }, + { + "key": "ASSET_GET_BPL_INPUT", + "value": "GET_BPL_INPUT", + "type": "string" + }, + { + "key": "ASSET_PUT_BPL_INPUT", + "value": "PUT_BPL_INPUT", + "type": "string" + }, + { + "key": "ASSET_POST_BPL_INPUT_SEARCH", + "value": "POST_BPL_INPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_GET_BPS_INPUT", + "value": "GET_BPS_INPUT", + "type": "string" + }, + { + "key": "ASSET_PUT_BPS_INPUT", + "value": "PUT_BPS_INPUT", + "type": "string" + }, + { + "key": "ASSET_POST_BPS_INPUT_SEARCH", + "value": "POST_BPS_INPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_GET_BPA_INPUT", + "value": "GET_BPA_INPUT", + "type": "string" + }, + { + "key": "ASSET_PUT_BPA_INPUT", + "value": "PUT_BPA_INPUT", + "type": "string" + }, + { + "key": "ASSET_POST_BPA_INPUT_SEARCH", + "value": "POST_BPA_INPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_POST_BPL_OUTPUT_SEARCH", + "value": "POST_BPL_OUTPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_POST_BPS_OUTPUT_SEARCH", + "value": "POST_BPS_OUTPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_POST_BPA_OUTPUT_SEARCH", + "value": "POST_BPA_OUTPUT_SEARCH", + "type": "string" + }, + { + "key": "ASSET_POST_INPUT_CHANGELOG_SEARCH", + "value": "POST_INPUT_CHANGELOG_SEARCH", + "type": "string" + }, + { + "key": "ASSET_POST_OUTPUT_CHANGELOG_SEARCH", + "value": "POST_OUTPUT_CHANGELOG_SEARCH", + "type": "string" + }, + { + "key": "ASSET_GET_LEGAL_FORMS", + "value": "GET_LEGAL_FORMS", + "type": "string" + }, + { + "key": "ASSET_GET_IDENTIFIER_TYPES", + "value": "GET_IDENTIFIER_TYPES", + "type": "string" + }, + { + "key": "ASSET_GET_FIELD_QUALITY_RULES", + "value": "GET_FIELD_QUALITY_RULES", + "type": "string" + }, + { + "key": "ASSET_GET_BPL_POOL", + "value": "GET_BPL_POOL", + "type": "string" + }, + { + "key": "ASSET_POST_BPL_POOL_SEARCH", + "value": "POST_BPL_POOL_SEARCH", + "type": "string" + }, + { + "key": "ASSET_GET_BPS_POOL", + "value": "GET_BPS_POOL", + "type": "string" + }, + { + "key": "ASSET_POST_BPS_POOL_SEARCH", + "value": "POST_BPS_POOL_SEARCH", + "type": "string" + }, + { + "key": "ASSET_GET_BPA_POOL", + "value": "GET_BPA_POOL", "type": "string" }, { - "key": "COMPANY_ID", - "value": "", + "key": "ASSET_POST_BPA_POOL_SEARCH", + "value": "POST_BPA_POOL_SEARCH", "type": "string" }, { - "key": "EDC_API_KEY", - "value": "", + "key": "ASSET_POST_CHANGELOG_POOL_SEARCH", + "value": "POST_CHANGELOG_POOL_SEARCH", "type": "string" } ] diff --git a/docs/edc/EDC_BPDM_Usage.postman_collection.json b/docs/edc/EDC_BPDM_Usage.postman_collection.json index 80116640c..ba0c16daf 100644 --- a/docs/edc/EDC_BPDM_Usage.postman_collection.json +++ b/docs/edc/EDC_BPDM_Usage.postman_collection.json @@ -1,487 +1,179 @@ { "info": { - "_postman_id": "c0b541fd-d746-43f7-be3f-580e2cfc2414", + "_postman_id": "67fa306a-a4c1-4d70-80bb-370491d8d0a9", "name": "EDC BPDM Usage", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "1816771" }, "item": [ { - "name": "Access Asset", - "item": [ - { - "name": "Legal Entity Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "GET", - "header": [], - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "limit", - "value": "10" - }, - { - "key": "startAfter", - "value": null, - "disabled": true - } - ] - } - }, - "response": [] - }, - { - "name": "Site Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "GET", - "header": [], - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "limit", - "value": "10" - }, - { - "key": "startAfter", - "value": null, - "disabled": true - } - ] - } - }, - "response": [] - }, - { - "name": "Address Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "GET", - "header": [], - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "limit", - "value": "10" - }, - { - "key": "startAfter", - "value": null, - "disabled": true - } - ] - } - }, - "response": [] - }, - { - "name": "Legal Entity Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "PUT", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n {\n \"identifiers\": [\n {\n \"value\": \"string\",\n \"type\": \"string\",\n \"issuingBody\": \"string\",\n \"status\": \"string\"\n }\n ],\n \"names\": [\n {\n \"value\": \"string\",\n \"shortName\": \"string\",\n \"type\": \"ACRONYM\",\n \"language\": \"undefined\"\n }\n ],\n \"legalForm\": \"string\",\n \"status\": {\n \"description\": \"string\",\n \"validFrom\": \"2023-03-21T13:47:05.538Z\",\n \"validUntil\": \"2023-03-21T13:47:05.538Z\",\n \"type\": \"ACTIVE\"\n },\n \"profileClassifications\": [\n {\n \"value\": \"string\",\n \"code\": \"string\",\n \"type\": \"NACE\"\n }\n ],\n \"types\": [\n \"BRAND\"\n ],\n \"bankAccounts\": [\n {\n \"trustScores\": [\n 0\n ],\n \"currency\": \"UNDEFINED\",\n \"internationalBankAccountIdentifier\": \"string\",\n \"internationalBankIdentifier\": \"string\",\n \"nationalBankAccountIdentifier\": \"string\",\n \"nationalBankIdentifier\": \"string\"\n }\n ],\n \"legalAddress\": {\n \"version\": {\n \"characterSet\": \"ARABIC\",\n \"language\": \"undefined\"\n },\n \"careOf\": \"string\",\n \"contexts\": [\n \"string\"\n ],\n \"country\": \"UNDEFINED\",\n \"administrativeAreas\": [\n {\n \"value\": \"string\",\n \"shortName\": \"string\",\n \"fipsCode\": \"string\",\n \"type\": \"COUNTY\"\n }\n ],\n \"postCodes\": [\n {\n \"value\": \"string\",\n \"type\": \"CEDEX\"\n }\n ],\n \"localities\": [\n {\n \"value\": \"string\",\n \"shortName\": \"string\",\n \"type\": \"BLOCK\"\n }\n ],\n \"thoroughfares\": [\n {\n \"value\": \"string\",\n \"name\": \"string\",\n \"shortName\": \"string\",\n \"number\": \"string\",\n \"direction\": \"string\",\n \"type\": \"INDUSTRIAL_ZONE\"\n }\n ],\n \"premises\": [\n {\n \"value\": \"string\",\n \"shortName\": \"string\",\n \"number\": \"string\",\n \"type\": \"BUILDING\"\n }\n ],\n \"postalDeliveryPoints\": [\n {\n \"value\": \"string\",\n \"shortName\": \"string\",\n \"number\": \"string\",\n \"type\": \"INTERURBAN_DELIVERY_POINT\"\n }\n ],\n \"geographicCoordinates\": {\n \"longitude\": 0,\n \"latitude\": 0,\n \"altitude\": 0\n },\n \"types\": [\n \"BRANCH_OFFICE\"\n ]\n },\n \"externalId\": \"string\",\n \"bpn\": \"string\"\n }\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ] - } - }, - "response": [] - }, - { - "name": "Site Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "PUT", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n {\n \"name\": \"Lager und Warenausgabe Berlin\",\n \"mainAddress\": {\n \"version\": {\n \"characterSet\": \"WESTERN_LATIN_STANDARD\",\n \"language\": \"de\"\n },\n \"careOf\": \"string\",\n \"contexts\": [\n \"string\"\n ],\n \"country\": \"DE\",\n \"postCodes\": [\n {\n \"value\": \"13629\",\n \"type\": \"CEDEX\"\n }\n ],\n \"localities\": [\n {\n \"value\": \"Berlin\",\n \"type\": \"CITY\"\n }\n ],\n \"thoroughfares\": [\n {\n \"value\": \"Nonnendamm 101\",\n \"type\": \"STREET\"\n }\n ]\n },\n \"externalId\": \"EXT_ID_1_S1\",\n \"legalEntityExternalId\": \"EXT_ID_1\",\n }\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ] - } - }, - "response": [] - }, - { - "name": "Address Input", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "PUT", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n {\n \"version\": {\n \"characterSet\": \"WESTERN_LATIN_STANDARD\",\n \"language\": \"de\"\n },\n \"country\": \"DE\",\n \"postCodes\": [\n {\n \"value\": \"13629\",\n \"type\": \"CEDEX\"\n }\n ],\n \"localities\": [\n {\n \"value\": \"Berlin\",\n \"type\": \"CITY\"\n }\n ],\n \"thoroughfares\": [\n {\n \"value\": \"Nonnendamm 120\",\n \"type\": \"STREET\"\n }\n ],\n \"externalId\": \"EXT_ID_1_A1\",\n \"siteExternalId\": \"EXT_ID_1_S1\"\n }\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ] + "name": "Query Catalog", + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\r\n \"@context\": {},\r\n \"protocol\": \"dataspace-protocol-http\",\r\n \"providerUrl\": \"{{PROVIDER_PROTOCOL_URL}}\",\r\n \"querySpec\": {\r\n \"offset\": 0,\r\n \"limit\": 100,\r\n \"filter\": \"\",\r\n \"range\": {\r\n \"from\": 0,\r\n \"to\": 100\r\n },\r\n \"criterion\": \"\"\r\n }\r\n}", + "options": { + "raw": { + "language": "json" } - }, - "response": [] + } }, + "url": { + "raw": "{{CONSUMER_MANAGEMENT_URL}}/catalog/request", + "host": [ + "{{CONSUMER_MANAGEMENT_URL}}" + ], + "path": [ + "catalog", + "request" + ] + } + }, + "response": [] + }, + { + "name": "Initiate Negotation", + "event": [ { - "name": "Legal Entity Output Search", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n \"string\"\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "startAfter", - "value": "", - "disabled": true - }, - { - "key": "limit", - "value": "10" - } - ] + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Body matches string\", function () {", + " var jsonData = pm.response.json();", + " pm.collectionVariables.set(\"NEGOTIATION_ID\", jsonData.id);", + "", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n\t\"@context\": {\n\t\t\"odrl\": \"http://www.w3.org/ns/odrl/2/\"\n\t},\n\t\"@type\": \"NegotiationInitiateRequestDto\",\n\t\"connectorAddress\": \"{{PROVIDER_PROTOCOL_URL}}\",\n\t\"protocol\": \"dataspace-protocol-http\",\n\t\"connectorId\": \"{{PROVIDER_ID}}\",\n\t\"providerId\": \"{{PROVIDER_ID}}\",\n\t\"offer\": {\n\t\t\"offerId\": \"{{CONTRACT_DEFINITION_ID}}:{{ASSET_ID}}:ZDM4Nzk3NmUtZjA0Ny00ZmNjLWFhNWItYjQwYmVkMDBhZGYy1\",\n\t\t\"assetId\": \"{{ASSET_ID}}\",\n\t\t\"policy\": {\n\t\t\t\"@type\": \"odrl:Set\",\n\t\t\t\"odrl:permission\": {\n\t\t\t\t\"odrl:target\": \"{{ASSET_ID}}\",\n\t\t\t\t\"odrl:action\": {\n\t\t\t\t\t\"odrl:type\": \"USE\"\n\t\t\t\t},\n\t\t\t\t\"odrl:constraint\": {\n\t\t\t\t\t\"odrl:or\": {\n\t\t\t\t\t\t\"odrl:leftOperand\": \"BusinessPartnerNumber\",\n\t\t\t\t\t\t\"odrl:operator\": {\n \"@id\": \"odrl:eq\"\n },\n\t\t\t\t\t\t\"odrl:rightOperand\": \"{{POLICY_BPN}}\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"odrl:prohibition\": [],\n\t\t\t\"odrl:obligation\": [],\n\t\t\t\"odrl:target\": \"{{ASSET_ID}}\"\n\t\t}\n\t}\n}", + "options": { + "raw": { + "language": "json" } - }, - "response": [] + } }, + "url": { + "raw": "{{CONSUMER_MANAGEMENT_URL}}/contractnegotiations", + "host": [ + "{{CONSUMER_MANAGEMENT_URL}}" + ], + "path": [ + "contractnegotiations" + ] + } + }, + "response": [] + }, + { + "name": "Get Negotiation", + "event": [ { - "name": "Site Output Search", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n \"string\"\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "startAfter", - "value": "", - "disabled": true - }, - { - "key": "limit", - "value": "10" - } - ] - } - }, - "response": [] + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } }, { - "name": "Address Output Search", - "request": { - "auth": { - "type": "apikey", - "apikey": [ - { - "key": "value", - "value": "{{TRANSFER_AUTH_KEY}}", - "type": "string" - }, - { - "key": "key", - "value": "Authorization", - "type": "string" - } - ] - }, - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "[\n \"string\"\n]", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/api/public?limit=10", - "host": [ - "{{SHARING_MEMBER_EDC_URL}}" - ], - "path": [ - "api", - "public" - ], - "query": [ - { - "key": "startAfter", - "value": "", - "disabled": true - }, - { - "key": "limit", - "value": "10" - } - ] - } - }, - "response": [] + "listen": "test", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } } - ] - }, - { - "name": "Asset Catalog", + ], "request": { "method": "GET", "header": [], "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/data/catalog?providerUrl={{GATE_EDC_URL}}/api/v1/ids/data&size=50", + "raw": "{{CONSUMER_MANAGEMENT_URL}}/contractnegotiations/{{NEGOTIATION_ID}}", "host": [ - "{{SHARING_MEMBER_EDC_URL}}" + "{{CONSUMER_MANAGEMENT_URL}}" ], "path": [ - "data", - "catalog" - ], - "query": [ - { - "key": "providerUrl", - "value": "{{GATE_EDC_URL}}/api/v1/ids/data" - }, - { - "key": "size", - "value": "50" - } + "contractnegotiations", + "{{NEGOTIATION_ID}}" ] } }, "response": [] }, { - "name": "Negotation", + "name": "Cancel Negotation by ID", "event": [ { - "listen": "test", + "listen": "prerequest", "script": { "exec": [ - "pm.test(\"Body matches string\", function () {", - " var jsonData = pm.response.json();", - " pm.collectionVariables.set(\"NEGOTIATION_ID\", jsonData.id);", - "", - "});" + "" ], "type": "text/javascript" } }, + { + "listen": "test", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [], + "url": { + "raw": "{{CONSUMER_MANAGEMENT_URL}}/contractnegotiations/{{NEGOTIATION_ID}}/cancel", + "host": [ + "{{CONSUMER_MANAGEMENT_URL}}" + ], + "path": [ + "contractnegotiations", + "{{NEGOTIATION_ID}}", + "cancel" + ] + } + }, + "response": [] + }, + { + "name": "Initiate Transfer", + "event": [ { "listen": "prerequest", "script": { "exec": [ - "var asset_id = pm.variables.get(\"ASSET_ID\");", - "pm.collectionVariables.set(\"CONTRACT_ID\", \"MEMBER_BPN_ACCESS_\" + asset_id);", "" ], "type": "text/javascript" } + }, + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Body matches string\", function () {", + " var jsonData = pm.response.json();", + " pm.collectionVariables.set(\"TRANSFER_PROCESS_ID\", jsonData.id);", + "});" + ], + "type": "text/javascript" + } } ], "request": { @@ -489,7 +181,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"connectorId\": \"foo\",\n \"connectorAddress\": \"{{GATE_EDC_URL}}/api/v1/ids/data\",\n \"offer\": {\n \"offerId\": \"{{CONTRACT_ID}}:foo\",\n \"assetId\": \"{{ASSET_ID}}\",\n \"policy\": {\n \"prohibitions\": [],\n \"obligations\": [],\n \"permissions\": [\n {\n \"edctype\": \"dataspaceconnector:permission\",\n \"action\": {\n \"type\": \"USE\"\n },\n \"target\": \"{{ASSET_ID}}\",\n \"constraints\": [\n {\n \"edctype\": \"AtomicConstraint\",\n \"leftExpression\": {\n \"edctype\": \"dataspaceconnector:literalexpression\",\n \"value\": \"BusinessPartnerNumber\"\n },\n \"rightExpression\": {\n \"edctype\": \"dataspaceconnector:literalexpression\",\n \"value\": \"{{SHARING_MEMBER_BPN}}\"\n },\n \"operator\": \"EQ\"\n }\n ]\n }\n ]\n }\n }\n}", + "raw": "{\n \"@context\": {\n \"odrl\": \"http://www.w3.org/ns/odrl/2/\"\n },\n \"assetId\": \"{{ASSET_ID}}\",\n \"connectorAddress\": \"{{PROVIDER_PROTOCOL_URL}}\",\n \"connectorId\": \"{{PROVIDER_ID}}\",\n \"contractId\": \"{{AGREEMENT_ID}}\",\n \"dataDestination\": {\n \"type\": \"HttpProxy\"\n },\n \"managedResources\": false,\n \"privateProperties\": {\n \"receiverHttpEndpoint\": \"{{BACKEND_SERVICE}}\"\n },\n \"protocol\": \"dataspace-protocol-http\",\n \"transferType\": {\n \"contentType\": \"application/octet-stream\",\n \"isFinite\": true\n }\n}", "options": { "raw": { "language": "json" @@ -497,20 +189,19 @@ } }, "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/data/contractnegotiations", + "raw": "{{CONSUMER_MANAGEMENT_URL}}/transferprocesses", "host": [ - "{{SHARING_MEMBER_EDC_URL}}" + "{{CONSUMER_MANAGEMENT_URL}}" ], "path": [ - "data", - "contractnegotiations" + "transferprocesses" ] } }, "response": [] }, { - "name": "Fetch Agreement", + "name": "Get Transfer by ID", "event": [ { "listen": "prerequest", @@ -525,11 +216,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Body matches string\", function () {", - " var jsonData = pm.response.json();", - " pm.collectionVariables.set(\"AGREEMENT_ID\", jsonData.contractAgreementId);", - "", - "});" + "" ], "type": "text/javascript" } @@ -539,38 +226,76 @@ "method": "GET", "header": [], "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/data/contractnegotiations/{{NEGOTIATION_ID}}", + "raw": "{{CONSUMER_MANAGEMENT_URL}}/transferprocesses/{{TRANSFER_PROCESS_ID}}", "host": [ - "{{SHARING_MEMBER_EDC_URL}}" + "{{CONSUMER_MANAGEMENT_URL}}" ], "path": [ - "data", - "contractnegotiations", - "{{NEGOTIATION_ID}}" + "transferprocesses", + "{{TRANSFER_PROCESS_ID}}" ] } }, "response": [] }, { - "name": "Transfer", + "name": "Get all Transfers", "event": [ { "listen": "prerequest", "script": { "exec": [ - "pm.collectionVariables.set(\"TRANSFER_ID\", Math.random());" + "" + ], + "type": "text/javascript" + } + }, + { + "listen": "test", + "script": { + "exec": [ + "" ], "type": "text/javascript" } + } + ], + "request": { + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "", + "options": { + "raw": { + "language": "json" + } + } }, + "url": { + "raw": "{{CONSUMER_MANAGEMENT_URL}}/transferprocesses/request", + "host": [ + "{{CONSUMER_MANAGEMENT_URL}}" + ], + "path": [ + "transferprocesses", + "request" + ] + } + }, + "response": [] + }, + { + "name": "Initiate EDR Negotation", + "event": [ { "listen": "test", "script": { "exec": [ "pm.test(\"Body matches string\", function () {", " var jsonData = pm.response.json();", - " pm.collectionVariables.set(\"TRANSFER_PROCESS_ID\", jsonData.id);", + " pm.collectionVariables.set(\"NEGOTIATION_ID\", jsonData.id);", + "", "});" ], "type": "text/javascript" @@ -582,7 +307,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"id\": \"{{TRANSFER_ID}}\",\n \"connectorId\": \"txdc-catalog\",\n \"connectorAddress\": \"{{GATE_EDC_URL}}/api/v1/ids/data\",\n \"contractId\": \"{{AGREEMENT_ID}}\",\n \"assetId\": \"{{ASSET_ID}}\",\n \"managedResources\": \"false\",\n \"dataDestination\": {\n \"type\": \"HttpProxy\"\n },\n \"properties\": {\n \"receiver.http.endpoint\": \"{{BACKEND_EDC_URL}}\"\n }\n}", + "raw": "{\n\t\"@context\": {\n\t\t\"odrl\": \"http://www.w3.org/ns/odrl/2/\"\n\t},\n\t\"@type\": \"NegotiationInitiateRequestDto\",\n\t\"connectorAddress\": \"{{PROVIDER_PROTOCOL_URL}}\",\n\t\"protocol\": \"dataspace-protocol-http\",\n\t\"connectorId\": \"{{PROVIDER_ID}}\",\n\t\"providerId\": \"{{PROVIDER_ID}}\",\n\t\"offer\": {\n\t\t\"offerId\": \"{{CONTRACT_DEFINITION_ID}}:{{ASSET_ID}}:ZDgyNTcwOGUtZGEyNy00MjEyLWE5M2UtMmVlYTI1ZjIyZjAz\",\n\t\t\"assetId\": \"{{ASSET_ID}}\",\n\t\t\"policy\": {\n\t\t\t\"@type\": \"odrl:Set\",\n\t\t\t\"odrl:permission\": {\n\t\t\t\t\"odrl:target\": \"{{ASSET_ID}}\",\n\t\t\t\t\"odrl:action\": {\n\t\t\t\t\t\"odrl:type\": \"USE\"\n\t\t\t\t},\n\t\t\t\t\"odrl:constraint\": {\n\t\t\t\t\t\"odrl:or\": {\n\t\t\t\t\t\t\"odrl:leftOperand\": \"BusinessPartnerNumber\",\n\t\t\t\t\t\t\"odrl:operator\": {\n \"@id\": \"odrl:eq\"\n },\n\t\t\t\t\t\t\"odrl:rightOperand\": \"{{POLICY_BPN}}\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"odrl:prohibition\": [],\n\t\t\t\"odrl:obligation\": [],\n\t\t\t\"odrl:target\": \"{{ASSET_ID}}\"\n\t\t}\n\t}\n}", "options": { "raw": { "language": "json" @@ -590,52 +315,136 @@ } }, "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/data/transferprocess", + "raw": "{{CONSUMER_ADAPTER_URL}}/edrs", "host": [ - "{{SHARING_MEMBER_EDC_URL}}" + "{{CONSUMER_ADAPTER_URL}}" ], "path": [ - "data", - "transferprocess" + "edrs" ] } }, "response": [] }, { - "name": "Fetch Transfer Status", + "name": "Query EDRs Cached", "event": [ { - "listen": "prerequest", + "listen": "test", "script": { "exec": [ - "" + "pm.test(\"Body matches string\", function () {", + " var jsonData = pm.response.json();", + " pm.collectionVariables.set(\"NEGOTIATION_ID\", jsonData.id);", + "", + "});" ], "type": "text/javascript" } + } + ], + "protocolProfileBehavior": { + "disableBodyPruning": true + }, + "request": { + "method": "GET", + "header": [], + "body": { + "mode": "raw", + "raw": "", + "options": { + "raw": { + "language": "json" + } + } }, + "url": { + "raw": "{{CONSUMER_ADAPTER_URL}}/edrs?assetId={{ASSET_ID}}", + "host": [ + "{{CONSUMER_ADAPTER_URL}}" + ], + "path": [ + "edrs" + ], + "query": [ + { + "key": "assetId", + "value": "{{ASSET_ID}}" + } + ] + } + }, + "response": [] + }, + { + "name": "Get EDR by tp ID", + "event": [ { "listen": "test", "script": { "exec": [ - "" + "pm.test(\"Body matches string\", function () {", + " var jsonData = pm.response.json();", + " pm.collectionVariables.set(\"NEGOTIATION_ID\", jsonData.id);", + "", + "});" ], "type": "text/javascript" } } ], + "protocolProfileBehavior": { + "disableBodyPruning": true + }, "request": { "method": "GET", "header": [], + "body": { + "mode": "raw", + "raw": "", + "options": { + "raw": { + "language": "json" + } + } + }, "url": { - "raw": "{{SHARING_MEMBER_EDC_URL}}/data/transferprocess/{{TRANSFER_PROCESS_ID}}", + "raw": "{{CONSUMER_ADAPTER_URL}}/edrs/{{EDR_ID}}", "host": [ - "{{SHARING_MEMBER_EDC_URL}}" + "{{CONSUMER_ADAPTER_URL}}" ], "path": [ - "data", - "transferprocess", - "{{TRANSFER_PROCESS_ID}}" + "edrs", + "{{EDR_ID}}" + ] + } + }, + "response": [] + }, + { + "name": "Public API GET", + "request": { + "auth": { + "type": "apikey", + "apikey": [ + { + "key": "value", + "value": "{{ASSET_ACCESS_API_KEY}}", + "type": "string" + }, + { + "key": "key", + "value": "Authorization", + "type": "string" + } + ] + }, + "method": "GET", + "header": [], + "url": { + "raw": "{{PROVIDER_PUBLIC_API}}", + "host": [ + "{{PROVIDER_PUBLIC_API}}" ] } }, @@ -646,13 +455,13 @@ "type": "apikey", "apikey": [ { - "key": "key", - "value": "X-Api-Key", + "key": "value", + "value": "{{API-KEY}}", "type": "string" }, { - "key": "value", - "value": "{{SHARING_MEMBER_EDC_API_KEY}}", + "key": "key", + "value": "X-Api-Key", "type": "string" } ] @@ -679,62 +488,96 @@ ], "variable": [ { - "key": "SHARING_MEMBER_EDC_URL", - "value": "", - "type": "string" + "key": "CONSUMER_MANAGEMENT_URL", + "value": "https://sharing-member-edc-host/management/v2" }, { - "key": "GATE_EDC_URL", - "value": "", - "type": "string" + "key": "PROVIDER_PROTOCOL_URL", + "value": "https://gate-edc-host/api/v1/dsp" }, { - "key": "CONTRACT_ID", - "value": "", - "type": "string" + "key": "ASSET_ID", + "value": "GET_BPL_INPUT_KEY", + "type": "default" }, { - "key": "ASSET_ID", - "value": "", - "type": "string" + "key": "POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" }, { - "key": "SHARING_MEMBER_BPN", - "value": "", + "key": "CONTRACT_POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" + }, + { + "key": "ACCESS_POLICY_ID", + "value": "HAS_MEMBER_BPN", + "type": "default" + }, + { + "key": "CONTRACT_DEFINITION_ID", + "value": "COMPANY_TEST_SHARING_MEMBER", + "type": "default" + }, + { + "key": "POLICY_BPN", + "value": "BPNL_SHARING_MEMBER", + "type": "default" + }, + { + "key": "NEGOTIATION_ID", + "value": "" + }, + { + "key": "AGREEMENT_ID", + "value": "" + }, + { + "key": "TRANSFER_ID", + "value": "" + }, + { + "key": "TRANSFER_PROCESS_ID", + "value": "" + }, + { + "key": "BACKEND_SERVICE", + "value": "https://backend-proxy", "type": "string" }, { - "key": "SHARING_MEMBER_EDC_API_KEY", - "value": "", + "key": "PROVIDER_ID", + "value": "BPNL_GATE_PROVIDER", "type": "string" }, { - "key": "TRANSFER_ID", - "value": "", + "key": "EDC_NAMESPACE", + "value": "https://w3id.org/edc/v0.0.1/ns/", "type": "string" }, { - "key": "NEGOTIATION_ID", - "value": "", + "key": "API-KEY", + "value": "api-key", "type": "string" }, { - "key": "AGREEMENT_ID", - "value": "", + "key": "PROVIDER_PUBLIC_API", + "value": "https://gate-edc-host/api/public", "type": "string" }, { - "key": "BACKEND_EDC_URL", + "key": "ASSET_ACCESS_API_KEY", "value": "", "type": "string" }, { - "key": "TRANSFER_PROCESS_ID", - "value": "", + "key": "CONSUMER_ADAPTER_URL", + "value": "https://sharing-member-edc-host/management", "type": "string" }, { - "key": "TRANSFER_AUTH_KEY", + "key": "EDR_ID", "value": "", "type": "string" } diff --git a/docs/edc/README.md b/docs/edc/README.md index c6a273fdd..68dda41f9 100644 --- a/docs/edc/README.md +++ b/docs/edc/README.md @@ -9,7 +9,7 @@ This section details how to configure an EDC that provides access to the BPDM AP assumes that you already have running BPDM and EDC deployments. How to deploy BPDM refer to the [INSTALL.md](../../INSTALL.md). For deploying an EDC please consult the documentation on the [EDC repository](https://github.com/eclipse-tractusx/tractusx-edc). -The geneneral idea for using the EDC as a provider for BPDM data is to expose the BPDM Gate Endpoints each as an EDC asset. A new asset needs to be created for +The general idea for using the EDC as a provider for BPDM data is to expose the BPDM Gate Endpoints each as an EDC asset. A new asset needs to be created for each company and endpoint. As an example you can refer to the provided [POSTMAN collection](EDC_BPDM_Setup.postman_collection.json). The collection shows examples on how to create endpoints as assets, a company policy and contract definition. @@ -17,83 +17,108 @@ examples on how to create endpoints as assets, a company policy and contract def ```json { - "asset": { - "properties": { - "asset:prop:id": "GET_BPL_INPUT_{{COMPANY_ID}}", - "asset:prop:description": "GET Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntities)", - "asset:prop:company": "{{COMPANY_ID}}" - } - }, - "dataAddress": { - "properties": { - "type": "HttpData", - "baseUrl": "{{BPDM_GATE_URL}}/api/catena/input/legal-entities", - "oauth2:tokenUrl": "{{ASSET_TOKEN_URL}}", - "oauth2:clientId": "{{ASSET_CLIENT_ID}}", - "oauth2:clientSecret": "{{ASSET_CLIENT_SECRET}}", - "proxyQueryParams": "true" - } - } + "@context": {}, + "asset": { + "@type": "Asset", + "@id": "{{ASSET_GET_BPL_INPUT}}", + "properties": { + "description": "GET Legal Entity Input ({{BPDM_GATE_URL}}/ui/swagger-ui/index.html#/legal-entity-controller/getLegalEntities)", + "company": "{{COMPANY_ID}}" + } + }, + "dataAddress": { + "@type": "DataAddress", + "type": "HttpData", + "baseUrl": "{{BPDM_GATE_URL}}/api/catena/input/legal-entities", + "oauth2:tokenUrl": "{{ASSET_TOKEN_URL}}", + "oauth2:clientId": "{{ASSET_CLIENT_ID}}", + "oauth2:clientSecretKey": "{{ASSET_CLIENT_SECRET}}", + "proxyQueryParams": "true" + } } ``` In the BPDM view an EDC asset is a company-scoped endpoint address. Next to the id and description, the asset should have a company id property which is - handy to bundle assets in a contract definition (see point 3). In addition to the address the asset should contain information on how the EDC can + handy to quickly identify bundles of assets in case your EDC wants to expose assets for several BPDM Gate APIs at once. In addition to the address the asset + should contain information on how the EDC can authenticate against the BPDM API. Finally, some endpoints may expect query parameters and/or bodies to be provided when accessing the asset. As a result, the assets should contain which of these additional resources are allowed as well as the actual method type of the endpoint. 2. Policy Creation: ```json - { - "id": "BPN_ACCESS_{{COMPANY_ID}}", + { + "@context": { + "odrl": "http://www.w3.org/ns/odrl/2/" + }, + "@type": "PolicyDefinitionRequestDto", + "@id": "{{POLICY_ID}}", "policy": { - "prohibitions": [], - "obligations": [], - "permissions": [ - { - "edctype": "dataspaceconnector:permission", - "action": { - "type": "USE" - }, - "constraints": [ - { - "edctype": "AtomicConstraint", - "leftExpression": { - "edctype": "dataspaceconnector:literalexpression", - "value": "BusinessPartnerNumber" - }, - "rightExpression": { - "edctype": "dataspaceconnector:literalexpression", - "value": "{{POLICY_BPN}}" - }, - "operator": "EQ" - } - ] + "@type": "Policy", + "odrl:permission" : [{ + "odrl:action" : "USE", + "odrl:constraint" : { + "@type": "LogicalConstraint", + "odrl:or" : [{ + "@type" : "Constraint", + "odrl:leftOperand" : "BusinessPartnerNumber", + "odrl:operator" : { + "@id": "odrl:eq" + }, + "odrl:rightOperand" : "{{POLICY_BPN}}" + }] } - ] + }] } - } + } ``` + For each company that should be allowed to access the BPDM Gate the EDC needs to contain a policy that requires a consuming EDC to have the company's BPN. 3. Contract Definition Creation: ```json { - "id": "BPN_ACCESS_{{COMPANY_ID}}", - "criteria": [ - { - "operandLeft": "asset:prop:company", - "operator": "=", - "operandRight": "{{COMPANY_ID}}" - } - ], - "accessPolicyId": "BPN_ACCESS_{{COMPANY_ID}}", - "contractPolicyId": "BPN_ACCESS_{{COMPANY_ID}}" + "@context": {}, + "@id": "COMPANY_TEST_SHARING_MEMBER", + "@type": "ContractDefinition", + "accessPolicyId": "{{ACCESS_POLICY_ID}}", + "contractPolicyId": "{{CONTRACT_POLICY_ID}}", + "assetsSelector": { + "@type": "CriterionDto", + "operandLeft": "{{EDC_NAMESPACE}}id", + "operator": "in", + "operandRight": [ + "{{ASSET_GET_SHARING_STATE}}", + "{{ASSET_GET_BPL_INPUT}}", + "{{ASSET_PUT_BPL_INPUT}}", + "{{ASSET_POST_BPL_INPUT_SEARCH}}", + "{{ASSET_GET_BPS_INPUT}}", + "{{ASSET_PUT_BPS_INPUT}}", + "{{ASSET_POST_BPS_INPUT_SEARCH}}", + "{{ASSET_GET_BPA_INPUT}}", + "{{ASSET_PUT_BPA_INPUT}}", + "{{ASSET_POST_BPA_INPUT_SEARCH}}", + "{{ASSET_POST_BPL_OUTPUT_SEARCH}}", + "{{ASSET_POST_BPS_OUTPUT_SEARCH}}", + "{{ASSET_POST_BPA_OUTPUT_SEARCH}}", + "{{ASSET_POST_INPUT_CHANGELOG_SEARCH}}", + "{{ASSET_POST_OUTPUT_CHANGELOG_SEARCH}}", + "{{ASSET_GET_LEGAL_FORMS}}", + "{{ASSET_GET_IDENTIFIER_TYPES}}", + "{{ASSET_GET_FIELD_QUALITY_RULES}}", + "{{ASSET_GET_BPL_POOL}}", + "{{ASSET_POST_BPL_POOL_SEARCH}}", + "{{ASSET_GET_BPS_POOL}}", + "{{ASSET_POST_BPS_POOL_SEARCH}}", + "{{ASSET_GET_BPA_POOL}}", + "{{ASSET_POST_BPA_POOL_SEARCH}}", + "{{ASSET_POST_CHANGELOG_POOL_SEARCH}}" + ] + } } ``` For each company the EDC should have a contract definition assigning the company's access policy to the company's assets. The company's assets are identified - by the 'company-id' property. The actual company id can be assigned freely but should be unique between company assets. + by the ids of the assets. After all assets, policies and contract definitions are configured a sharing company's EDC now can query its available assets and the contract under which they are exposed. @@ -108,88 +133,110 @@ asset and finally send that access token over your own EDC to the BPDM EDC in or 1. Retrieve asset information you want to access: - ```bash - curl {{SHARING_MEMBER_EDC_URL}}/data/catalog?providerUrl={{GATE_EDC_URL}}/api/v1/ids/data&size=50 + ```json + { + "@context": {}, + "protocol": "dataspace-protocol-http", + "providerUrl": "{{PROVIDER_PROTOCOL_URL}}", + "querySpec": { + "offset": 0, + "limit": 100, + "filter": "", + "range": { + "from": 0, + "to": 100 + }, + "criterion": "" + } + } ``` Your own EDC offers endpoints to query the BPDM EDC's catalogue of assets. There you can find a list of assets, their IDs and descriptions. Also, you find information under which contract this asset is offered to be made available to you. The following steps require the respective asset and contract ID to proceed. - 2. Start a negotiation for the asset: +2. Start a negotiation for the asset: - ```json - { - "connectorId": "foo", - "connectorAddress": "{{GATE_EDC_URL}}/api/v1/ids/data", - "offer": { - "offerId": "{{CONTRACT_ID}}:foo", - "assetId": "{{ASSET_ID}}", - "policy": { - "prohibitions": [], - "obligations": [], - "permissions": [ - { - "edctype": "dataspaceconnector:permission", - "action": { - "type": "USE" - }, - "target": "{{ASSET_ID}}", - "constraints": [ - { - "edctype": "AtomicConstraint", - "leftExpression": { - "edctype": "dataspaceconnector:literalexpression", - "value": "BusinessPartnerNumber" - }, - "rightExpression": { - "edctype": "dataspaceconnector:literalexpression", - "value": "{{SHARING_MEMBER_BPN}}" - }, - "operator": "EQ" - } - ] - } - ] - } + ```json + { + "@context": { + "odrl": "http://www.w3.org/ns/odrl/2/" + }, + "@type": "NegotiationInitiateRequestDto", + "connectorAddress": "{{PROVIDER_PROTOCOL_URL}}", + "protocol": "dataspace-protocol-http", + "connectorId": "{{PROVIDER_ID}}", + "providerId": "{{PROVIDER_ID}}", + "offer": { + "offerId": "{{CONTRACT_DEFINITION_ID}}:{{ASSET_ID}}:ZDM4Nzk3NmUtZjA0Ny00ZmNjLWFhNWItYjQwYmVkMDBhZGYy1", + "assetId": "{{ASSET_ID}}", + "policy": { + "@type": "odrl:Set", + "odrl:permission": { + "odrl:target": "{{ASSET_ID}}", + "odrl:action": { + "odrl:type": "USE" + }, + "odrl:constraint": { + "odrl:or": { + "odrl:leftOperand": "BusinessPartnerNumber", + "odrl:operator": { + "@id": "odrl:eq" + }, + "odrl:rightOperand": "{{POLICY_BPN}}" + } + } + }, + "odrl:prohibition": [], + "odrl:obligation": [], + "odrl:target": "{{ASSET_ID}}" } } - ``` - When you have selected an asset you need to accept its contract. You will typically access the asset over your BPN. This request is asynchronous. You can - check the request status over the respective GET method with the negotiation ID you received from starting the contract negotiation request. Once the - negotiation is done and accepted, you will receive an agreement ID in the GET response. You can use this agreement ID together with the asset ID to - request access tokens for future data transfers. Please be aware that the negotiation agreement is typically temporary and needs to be renewed - periodically. + } + ``` + When you have selected an asset you need to accept its contract. You will typically access the asset over your BPN. This request is asynchronous. You can + check the request status over the respective GET method with the negotiation ID you received from starting the contract negotiation request. Once the + negotiation is done and accepted, you will receive an agreement ID in the GET response. You can use this agreement ID together with the asset ID to + request access tokens for future data transfers. Please be aware that the negotiation agreement is typically temporary and needs to be renewed + periodically. 3. Start an access token transfer: ```json { - "id": "{{TRANSFER_ID}}", - "connectorId": "txdc-catalog", - "connectorAddress": "{{GATE_EDC_URL}}/api/v1/ids/data", - "contractId": "{{AGREEMENT_ID}}", - "assetId": "{{ASSET_ID}}", - "managedResources": "false", - "dataDestination": { - "type": "HttpProxy" - }, - "properties": { - "receiver.http.endpoint": "{{BACKEND_EDC_URL}}" - } + "@context": { + "odrl": "http://www.w3.org/ns/odrl/2/" + }, + "assetId": "{{ASSET_ID}}", + "connectorAddress": "{{PROVIDER_PROTOCOL_URL}}", + "connectorId": "{{PROVIDER_ID}}", + "contractId": "{{AGREEMENT_ID}}", + "dataDestination": { + "type": "HttpProxy" + }, + "managedResources": false, + "privateProperties": { + "receiverHttpEndpoint": "{{BACKEND_SERVICE}}" + }, + "protocol": "dataspace-protocol-http", + "transferType": { + "contentType": "application/octet-stream", + "isFinite": true + } } ``` Once you have an agreement ID for accessing one or more assets you can now request to receive data access tokens. When requesting a token you need to provide a URL to your service which should receive that token. Please be aware that the transfer request is asynchronous: The sharing member EDC will request a token - from the BPDM EDC and then send this token directly to the service whose URL you provided. You neither receive this token as a direct response to the request + from the BPDM EDC and then send this token directly to the backend service whose URL you provided. You neither receive this token as a direct response to the + request nor is there any way to inquire the token from the EDC after the fact. 4. Invoke the BPDM API endpoint: ```bash - curl {{SHARING_MEMBER_EDC_URL}}/api/public + curl https://gate-edc-host/api/public ``` - With the EDC's data access token you can now access the actual BPDM API endpoint. The sharing member EDC provides a URL that acts as a proxy for this + With the EDC's data access token you can now access the actual BPDM API endpoint. The gate EDC provides a URL that acts as a proxy for this purpose. You send a request to that URL with the data access token in the headers and attach query parameters as well as body in the same way you would - invoke BPDM API endpoint directly. The sharing member EDC's URL can be invoked with the method's GET, POST and PUT. Use the method that matches original BPDM + invoke BPDM API endpoint directly. The gate EDC's URL can be invoked with the method's GET, POST and PUT. Use the method that matches original BPDM API endpoint the accessed asset covers. The response equals the original BPDM API endpoint response.