diff --git a/package.json b/package.json index c42c83ce..d57019d5 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", "scripts": { + "postinstall": "node postinstall/edc-openapi.js", "transpile": "tsc", "test": "jest --forceExit" }, diff --git a/postinstall/edc-openapi.js b/postinstall/edc-openapi.js new file mode 100644 index 00000000..cd14ceee --- /dev/null +++ b/postinstall/edc-openapi.js @@ -0,0 +1,26 @@ +const fs = require('fs/promises'); + +const folder = "node_modules"; + +fs.readFile("connector/gradle/libs.versions.toml") + .then(versions => { + const edcRow = versions.toString().split('\n').filter(row => row.startsWith("edc = "))[0]; + return edcRow.substring(7, edcRow.length - 1) + }) + .then(edcVersion => { + const context = "management-api"; + const resourceUrl = `https://eclipse-edc.github.io/Connector/openapi/${context}/${edcVersion}/${context}.yaml`; + + return fetch(resourceUrl) + .then(response => { + if (!response.ok) { + throw new Error(`Failed to download ${context} openapi spec`); + } + return response.text() + }) + .then(text => text.replaceAll("example: null", "")) + .then(text => fs.writeFile(`${folder}/${context}.yml`, text)); + }) + .catch(error => { + console.error('Error downloading openapi specs:', error); + }) diff --git a/tests/controllers/management-tests/edrs.test.ts b/tests/controllers/management-tests/edrs.test.ts index 8af4b215..390fdd72 100644 --- a/tests/controllers/management-tests/edrs.test.ts +++ b/tests/controllers/management-tests/edrs.test.ts @@ -7,7 +7,7 @@ describe("edrs", () => { beforeAll(async () => { startedContainer = await new GenericContainer("stoplight/prism:5.8.1") - .withCopyFilesToContainer([{ source: "tests/management-api.yaml", target: "/management-api.yml" }]) + .withCopyFilesToContainer([{ source: "node_modules/management-api.yml", target: "/management-api.yml" }]) .withCommand(["mock", "-h", "0.0.0.0", "/management-api.yml"]) .withExposedPorts(4010) .start(); diff --git a/tests/management-api.yaml b/tests/management-api.yaml deleted file mode 100644 index 152142ea..00000000 --- a/tests/management-api.yaml +++ /dev/null @@ -1,2625 +0,0 @@ -openapi: 3.0.1 -info: - title: management-api - description: REST API documentation for the management-api - version: 0.6.2 -servers: -- url: / -paths: - /callback/{processId}/deprovision: - post: - tags: - - HTTP Provisioner Webhook - operationId: callDeprovisionWebhook - parameters: - - name: processId - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DeprovisionedResource" - responses: - default: - description: default response - content: - application/json: {} - /callback/{processId}/provision: - post: - tags: - - HTTP Provisioner Webhook - operationId: callProvisionWebhook - parameters: - - name: processId - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ProvisionerWebhookRequest" - responses: - default: - description: default response - content: - application/json: {} - /v1/edrs/request: - post: - tags: - - EDR Cache - description: Request all Edr entries according to a particular query - operationId: requestEdrEntries - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The edr entries matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/EndpointDataReferenceEntry" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v1/edrs/{transferProcessId}: - delete: - tags: - - EDR Cache - description: Removes an EDR entry given the transfer process ID - operationId: removeEdrEntry - parameters: - - name: transferProcessId - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: EDR entry was deleted successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An EDR entry with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v1/edrs/{transferProcessId}/dataaddress: - get: - tags: - - EDR Cache - description: Gets the EDR data address with the given transfer process ID - operationId: getEdrEntryDataAddress - parameters: - - name: transferProcessId - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The data address - content: - application/json: - schema: - $ref: "#/components/schemas/DataAddress" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An EDR data address with the given transfer process ID does - not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/catalog/dataset/request: - post: - tags: - - Catalog - operationId: getDataset - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DatasetRequest" - responses: - default: - description: Gets single dataset from a connector - content: - application/json: - schema: - $ref: "#/components/schemas/Dataset" - /v2/catalog/request: - post: - tags: - - Catalog - operationId: requestCatalog - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/CatalogRequest" - responses: - default: - description: Gets contract offers (=catalog) of a single connector - content: - application/json: - schema: - $ref: "#/components/schemas/Catalog" - /v2/contractagreements/request: - post: - tags: - - Contract Agreement - description: Gets all contract agreements according to a particular query - operationId: queryAgreements - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The contract agreements matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ContractAgreement" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractagreements/{id}: - get: - tags: - - Contract Agreement - description: Gets an contract agreement with the given ID - operationId: getAgreementById - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The contract agreement - content: - application/json: - schema: - $ref: "#/components/schemas/ContractAgreement" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract agreement with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractagreements/{id}/negotiation: - get: - tags: - - Contract Agreement - description: Gets a contract negotiation with the given contract agreement ID - operationId: getNegotiationByAgreementId - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The contract negotiation - content: - application/json: - schema: - $ref: "#/components/schemas/ContractNegotiation" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract agreement with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractdefinitions: - put: - tags: - - Contract Definition - description: Updated a contract definition with the given ID. The supplied JSON - structure must be a valid JSON-LD object - operationId: updateContractDefinition - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ContractDefinitionInput" - responses: - "204": - description: Contract definition was updated successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A contract definition with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - post: - tags: - - Contract Definition - description: Creates a new contract definition - operationId: createContractDefinition - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ContractDefinitionInput" - responses: - "200": - description: contract definition was created successfully. Returns the Contract - Definition Id and created timestamp - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "Could not create contract definition, because a contract definition\ - \ with that ID already exists" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractdefinitions/request: - post: - tags: - - Contract Definition - description: Returns all contract definitions according to a query - operationId: queryContractDefinitions - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The contract definitions matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ContractDefinitionOutput" - "400": - description: Request was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractdefinitions/{id}: - get: - tags: - - Contract Definition - description: Gets an contract definition with the given ID - operationId: getContractDefinition - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The contract definition - content: - application/json: - schema: - $ref: "#/components/schemas/ContractDefinitionOutput" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract agreement with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - delete: - tags: - - Contract Definition - description: "Removes a contract definition with the given ID if possible. DANGER\ - \ ZONE: Note that deleting contract definitions can have unexpected results,\ - \ especially for contract offers that have been sent out or ongoing or contract\ - \ negotiations." - operationId: deleteContractDefinition - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: Contract definition was deleted successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A contract definition with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations: - post: - tags: - - Contract Negotiation - description: "Initiates a contract negotiation for a given offer and with the\ - \ given counter part. Please note that successfully invoking this endpoint\ - \ only means that the negotiation was initiated. Clients must poll the /{id}/state\ - \ endpoint to track the state" - operationId: initiateContractNegotiation - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ContractRequest" - responses: - "200": - description: The negotiation was successfully initiated. Returns the contract - negotiation ID and created timestamp - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - links: - poll-state: - operationId: getNegotiationState - parameters: - id: $response.body#/id - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations/request: - post: - tags: - - Contract Negotiation - description: Returns all contract negotiations according to a query - operationId: queryNegotiations - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The contract negotiations that match the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ContractNegotiation" - "400": - description: Request was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations/{id}: - get: - tags: - - Contract Negotiation - description: Gets a contract negotiation with the given ID - operationId: getNegotiation - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The contract negotiation - content: - application/json: - schema: - $ref: "#/components/schemas/ContractNegotiation" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract negotiation with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations/{id}/agreement: - get: - tags: - - Contract Negotiation - description: Gets a contract agreement for a contract negotiation with the given - ID - operationId: getAgreementForNegotiation - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: "The contract agreement that is attached to the negotiation,\ - \ or null" - content: - application/json: - schema: - $ref: "#/components/schemas/ContractAgreement" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract negotiation with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations/{id}/state: - get: - tags: - - Contract Negotiation - description: Gets the state of a contract negotiation with the given ID - operationId: getNegotiationState - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The contract negotiation's state - content: - application/json: - schema: - $ref: "#/components/schemas/NegotiationState" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An contract negotiation with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/contractnegotiations/{id}/terminate: - post: - tags: - - Contract Negotiation - description: Terminates the contract negotiation. - operationId: terminateNegotiation - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/TerminateNegotiationSchema" - responses: - "200": - description: ContractNegotiation is terminating - links: - poll-state: - operationId: getNegotiationState - "400": - description: Request was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A contract negotiation with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/dataplanes: - get: - tags: - - Dataplane Selector - description: Returns a list of all currently registered data plane instances - operationId: getAllDataPlaneInstances - responses: - "200": - description: A (potentially empty) list of currently registered data plane - instances - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/DataPlaneInstanceSchema" - post: - tags: - - Dataplane Selector - description: Adds one dataplane instance to the internal database of the selector - operationId: addDataPlaneInstance - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DataPlaneInstanceSchema" - responses: - "200": - description: Entry was added successfully to the database - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/dataplanes/select: - post: - tags: - - Dataplane Selector - description: Finds the best fitting data plane instance for a particular query - operationId: selectDataPlaneInstance - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SelectionRequestSchema" - responses: - "200": - description: The DataPlane instance that fits best for the given selection - request - content: - application/json: - schema: - $ref: "#/components/schemas/DataPlaneInstanceSchema" - "204": - description: No suitable DataPlane instance was found - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/policydefinitions: - post: - tags: - - Policy Definition - description: Creates a new policy definition - operationId: createPolicyDefinition - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/PolicyDefinitionInput" - responses: - "200": - description: policy definition was created successfully. Returns the Policy - Definition Id and created timestamp - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "Could not create policy definition, because a contract definition\ - \ with that ID already exists" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/policydefinitions/request: - post: - tags: - - Policy Definition - description: Returns all policy definitions according to a query - operationId: queryPolicyDefinitions - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The policy definitions matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/PolicyDefinitionOutput" - "400": - description: Request was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/policydefinitions/{id}: - get: - tags: - - Policy Definition - description: Gets a policy definition with the given ID - operationId: getPolicyDefinition - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The policy definition - content: - application/json: - schema: - $ref: "#/components/schemas/PolicyDefinitionOutput" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An policy definition with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - put: - tags: - - Policy Definition - description: "Updates an existing Policy, If the Policy is not found, an error\ - \ is reported" - operationId: updatePolicyDefinition - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/PolicyDefinitionInput" - responses: - "204": - description: policy definition was updated successfully. - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: "policy definition could not be updated, because it does not\ - \ exists" - content: - application/json: - schema: - $ref: "#/components/schemas/ApiErrorDetail" - delete: - tags: - - Policy Definition - description: "Removes a policy definition with the given ID if possible. Deleting\ - \ a policy definition is only possible if that policy definition is not yet\ - \ referenced by a contract definition, in which case an error is returned.\ - \ DANGER ZONE: Note that deleting policy definitions can have unexpected results,\ - \ do this at your own risk!" - operationId: deletePolicyDefinition - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: Policy definition was deleted successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An policy definition with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "The policy definition cannot be deleted, because it is referenced\ - \ by a contract definition" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses: - post: - tags: - - Transfer Process - description: "Initiates a data transfer with the given parameters. Due to the\ - \ asynchronous nature of transfers, a successful response only indicates that\ - \ the request was successfully received. This may take a long time, so clients\ - \ must poll the /{id}/state endpoint to track the state." - operationId: initiateTransferProcess - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/TransferRequest" - responses: - "200": - description: The transfer was successfully initiated. Returns the transfer - process ID and created timestamp - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - links: - poll-state: - operationId: getTransferProcessState - parameters: - id: $response.body#/id - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/request: - post: - tags: - - Transfer Process - description: Returns all transfer process according to a query - operationId: queryTransferProcesses - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The transfer processes matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/TransferProcess" - "400": - description: Request was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}: - get: - tags: - - Transfer Process - description: Gets an transfer process with the given ID - operationId: getTransferProcess - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The transfer process - content: - application/json: - schema: - $ref: "#/components/schemas/TransferProcess" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}/deprovision: - post: - tags: - - Transfer Process - description: "Requests the deprovisioning of resources associated with a transfer\ - \ process. Due to the asynchronous nature of transfers, a successful response\ - \ only indicates that the request was successfully received. This may take\ - \ a long time, so clients must poll the /{id}/state endpoint to track the\ - \ state." - operationId: deprovisionTransferProcess - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: Request to deprovision the transfer process was successfully - received - links: - poll-state: - operationId: deprovisionTransferProcess - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}/resume: - post: - tags: - - Transfer Process - description: "Requests the resumption of a suspended transfer process. Due to\ - \ the asynchronous nature of transfers, a successful response only indicates\ - \ that the request was successfully received. This may take a long time, so\ - \ clients must poll the /{id}/state endpoint to track the state." - operationId: resumeTransferProcess - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: Request to resume the transfer process was successfully received - links: - poll-state: - operationId: resumeTransferProcess - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}/state: - get: - tags: - - Transfer Process - description: Gets the state of a transfer process with the given ID - operationId: getTransferProcessState - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The transfer process's state - content: - application/json: - schema: - $ref: "#/components/schemas/TransferState" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}/suspend: - post: - tags: - - Transfer Process - description: "Requests the suspension of a transfer process. Due to the asynchronous\ - \ nature of transfers, a successful response only indicates that the request\ - \ was successfully received. This may take a long time, so clients must poll\ - \ the /{id}/state endpoint to track the state." - operationId: suspendTransferProcess - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SuspendTransfer" - responses: - "204": - description: Request to suspend the transfer process was successfully received - links: - poll-state: - operationId: suspendTransferProcess - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "Could not suspend the transfer process, because it is already\ - \ completed or terminated." - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v2/transferprocesses/{id}/terminate: - post: - tags: - - Transfer Process - description: "Requests the termination of a transfer process. Due to the asynchronous\ - \ nature of transfers, a successful response only indicates that the request\ - \ was successfully received. This may take a long time, so clients must poll\ - \ the /{id}/state endpoint to track the state." - operationId: terminateTransferProcess - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/TerminateTransfer" - responses: - "204": - description: Request to terminate the transfer process was successfully - received - links: - poll-state: - operationId: terminateTransferProcess - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: A transfer process with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "Could not terminate transfer process, because it is already\ - \ completed or terminated." - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v3/assets: - put: - tags: - - Asset - description: "Updates an asset with the given ID if it exists. If the asset\ - \ is not found, no further action is taken. DANGER ZONE: Note that updating\ - \ assets can have unexpected results, especially for contract offers that\ - \ have been sent out or are ongoing in contract negotiations." - operationId: updateAsset - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/AssetInput" - responses: - "204": - description: Asset was updated successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: "Asset could not be updated, because it does not exist." - post: - tags: - - Asset - description: Creates a new asset together with a data address - operationId: createAsset - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/AssetInput" - responses: - "200": - description: Asset was created successfully. Returns the asset Id and created - timestamp - content: - application/json: - schema: - $ref: "#/components/schemas/IdResponse" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "Could not create asset, because an asset with that ID already\ - \ exists" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v3/assets/request: - post: - tags: - - Asset - description: Request all assets according to a particular query - operationId: requestAssets - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/QuerySpec" - responses: - "200": - description: The assets matching the query - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/AssetOutput" - "400": - description: Request body was malformed - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - /v3/assets/{id}: - get: - tags: - - Asset - description: Gets an asset with the given ID - operationId: getAsset - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "200": - description: The asset - content: - application/json: - schema: - $ref: "#/components/schemas/AssetOutput" - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An asset with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - delete: - tags: - - Asset - description: "Removes an asset with the given ID if possible. Deleting an asset\ - \ is only possible if that asset is not yet referenced by a contract agreement,\ - \ in which case an error is returned. DANGER ZONE: Note that deleting assets\ - \ can have unexpected results, especially for contract offers that have been\ - \ sent out or ongoing or contract negotiations." - operationId: removeAsset - parameters: - - name: id - in: path - required: true - style: simple - explode: false - schema: - type: string - - responses: - "204": - description: Asset was deleted successfully - "400": - description: "Request was malformed, e.g. id was null" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "404": - description: An asset with the given ID does not exist - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" - "409": - description: "The asset cannot be deleted, because it is referenced by a\ - \ contract agreement" - content: - application/json: - schema: - type: array - - items: - $ref: "#/components/schemas/ApiErrorDetail" -components: - schemas: - ApiErrorDetail: - type: object - properties: - invalidValue: - type: string - - message: - type: string - - path: - type: string - - type: - type: string - - example: - message: error message - type: ErrorType - path: object.error.path - invalidValue: this value is not valid - AssetInput: - required: - - '@context' - - dataAddress - - properties - type: object - properties: - '@context': - type: object - - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/Asset - dataAddress: - $ref: "#/components/schemas/DataAddress" - privateProperties: - $ref: "#/components/schemas/Properties" - properties: - $ref: "#/components/schemas/Properties" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': asset-id - properties: - key: value - privateProperties: - privateKey: privateValue - dataAddress: - type: HttpData - baseUrl: https://jsonplaceholder.typicode.com/todos - AssetOutput: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/Asset - createdAt: - type: integer - format: int64 - - dataAddress: - $ref: "#/components/schemas/DataAddress" - privateProperties: - $ref: "#/components/schemas/Properties" - properties: - $ref: "#/components/schemas/Properties" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': asset-id - properties: - key: value - privateProperties: - privateKey: privateValue - dataAddress: - type: HttpData - baseUrl: https://jsonplaceholder.typicode.com/todos - createdAt: 1688465655 - CallbackAddress: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/CallbackAddress - authCodeId: - type: string - - authKey: - type: string - - events: - uniqueItems: true - type: array - - items: - type: string - - transactional: - type: boolean - - uri: - type: string - - - Catalog: - type: object - description: DCAT catalog - example: - '@id': 7df65569-8c59-4013-b1c0-fa14f6641bf2 - '@type': dcat:Catalog - dcat:dataset: - '@id': bcca61be-e82e-4da6-bfec-9716a56cef35 - '@type': dcat:Dataset - odrl:hasPolicy: - '@id': OGU0ZTMzMGMtODQ2ZS00ZWMxLThmOGQtNWQxNWM0NmI2NmY4:YmNjYTYxYmUtZTgyZS00ZGE2LWJmZWMtOTcxNmE1NmNlZjM1:NDY2ZTZhMmEtNjQ1Yy00ZGQ0LWFlZDktMjdjNGJkZTU4MDNj - '@type': odrl:Set - odrl:permission: - odrl:target: bcca61be-e82e-4da6-bfec-9716a56cef35 - odrl:action: - odrl:type: http://www.w3.org/ns/odrl/2/use - odrl:constraint: - odrl:and: - - odrl:leftOperand: https://w3id.org/edc/v0.0.1/ns/inForceDate - odrl:operator: - '@id': odrl:gteq - odrl:rightOperand: 2023-07-07T07:19:58.585601395Z - - odrl:leftOperand: https://w3id.org/edc/v0.0.1/ns/inForceDate - odrl:operator: - '@id': odrl:lteq - odrl:rightOperand: 2023-07-12T07:19:58.585601395Z - odrl:prohibition: [] - odrl:obligation: [] - dcat:distribution: - - '@type': dcat:Distribution - dct:format: - '@id': HttpData - dcat:accessService: 5e839777-d93e-4785-8972-1005f51cf367 - description: description - id: bcca61be-e82e-4da6-bfec-9716a56cef35 - dcat:service: - '@id': 5e839777-d93e-4785-8972-1005f51cf367 - '@type': dcat:DataService - dct:terms: connector - dct:endpointUrl: http://localhost:16806/protocol - dspace:participantId: urn:connector:provider - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - dct: http://purl.org/dc/terms/ - edc: https://w3id.org/edc/v0.0.1/ns/ - dcat: http://www.w3.org/ns/dcat# - odrl: http://www.w3.org/ns/odrl/2/ - dspace: https://w3id.org/dspace/v0.8/ - CatalogRequest: - required: - - '@context' - - counterPartyAddress - - protocol - type: object - properties: - '@context': - type: object - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/CatalogRequest - counterPartyAddress: - type: string - - counterPartyId: - type: string - - protocol: - type: string - - providerUrl: - type: string - description: please use counterPartyAddress instead - - deprecated: true - querySpec: - $ref: "#/components/schemas/QuerySpec" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': CatalogRequest - counterPartyAddress: http://provider-address - counterPartyId: providerId - protocol: dataspace-protocol-http - querySpec: - offset: 0 - limit: 50 - sortOrder: DESC - sortField: fieldName - filterExpression: [] - ContractAgreement: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractAgreement - assetId: - type: string - - consumerId: - type: string - - contractSigningDate: - type: integer - format: int64 - - policy: - $ref: "#/components/schemas/Policy" - providerId: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/ContractAgreement - '@id': negotiation-id - providerId: provider-id - consumerId: consumer-id - assetId: asset-id - contractSigningDate: 1688465655 - policy: - '@context': http://www.w3.org/ns/odrl.jsonld - '@type': Set - '@id': offer-id - permission: - - target: asset-id - action: display - ContractDefinitionInput: - required: - - '@context' - - accessPolicyId - - assetsSelector - - contractPolicyId - type: object - properties: - '@context': - type: object - - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractDefinition - accessPolicyId: - type: string - - assetsSelector: - type: array - - items: - $ref: "#/components/schemas/Criterion" - contractPolicyId: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': definition-id - accessPolicyId: asset-policy-id - contractPolicyId: contract-policy-id - assetsSelector: [] - ContractDefinitionOutput: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractDefinition - accessPolicyId: - type: string - - assetsSelector: - type: array - - items: - $ref: "#/components/schemas/Criterion" - contractPolicyId: - type: string - - createdAt: - type: integer - format: int64 - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': definition-id - accessPolicyId: asset-policy-id - contractPolicyId: contract-policy-id - assetsSelector: [] - createdAt: 1688465655 - ContractNegotiation: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractNegotiation - callbackAddresses: - type: array - - items: - $ref: "#/components/schemas/CallbackAddress" - contractAgreementId: - type: string - - counterPartyAddress: - type: string - - counterPartyId: - type: string - - errorDetail: - type: string - - protocol: - type: string - - state: - type: string - - type: - type: string - - enum: - - CONSUMER - - PROVIDER - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/ContractNegotiation - '@id': negotiation-id - type: PROVIDER - protocol: dataspace-protocol-http - counterPartyId: counter-party-id - counterPartyAddress: http://counter/party/address - state: VERIFIED - contractAgreementId: contract:agreement:id - errorDetail: eventual-error-detail - createdAt: 1688465655 - callbackAddresses: - - transactional: false - uri: http://callback/url - events: - - contract.negotiation - - transfer.process - authKey: auth-key - authCodeId: auth-code-id - ContractOfferDescription: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractOfferDescription - assetId: - type: string - - offerId: - type: string - - policy: - $ref: "#/components/schemas/Policy" - description: please use policy instead of offer - - deprecated: true - ContractRequest: - required: - - '@context' - - counterPartyAddress - - policy - - protocol - type: object - properties: - '@context': - type: object - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/ContractRequest - callbackAddresses: - type: array - - items: - $ref: "#/components/schemas/CallbackAddress" - connectorAddress: - type: string - description: please use counterPartyAddress instead - - deprecated: true - counterPartyAddress: - type: string - - offer: - $ref: "#/components/schemas/ContractOfferDescription" - policy: - $ref: "#/components/schemas/Offer" - protocol: - type: string - - providerId: - type: string - description: please use policy.assigner instead - - deprecated: true - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/ContractRequest - counterPartyAddress: http://provider-address - protocol: dataspace-protocol-http - policy: - '@context': http://www.w3.org/ns/odrl.jsonld - '@type': odrl:Offer - '@id': offer-id - assigner: providerId - permission: [] - prohibition: [] - obligation: [] - target: assetId - callbackAddresses: - - transactional: false - uri: http://callback/url - events: - - contract.negotiation - - transfer.process - authKey: auth-key - authCodeId: auth-code-id - Criterion: - required: - - operandLeft - - operandRight - - operator - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/Criterion - operandLeft: - type: object - - operandRight: - type: object - - operator: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': Criterion - operandLeft: fieldName - operator: = - operandRight: some value - DataAddress: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/DataAddress - type: - type: string - - - DataPlaneInstanceSchema: - required: - - '@context' - - allowedDestTypes - - allowedSourceTypes - - url - type: object - properties: - '@context': - type: object - - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/DataPlaneInstance - allowedDestTypes: - uniqueItems: true - type: array - - items: - type: string - - allowedSourceTypes: - uniqueItems: true - type: array - - items: - type: string - - lastActive: - type: integer - format: int64 - - turnCount: - type: integer - format: int32 - - url: - type: string - format: url - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': your-dataplane-id - url: http://somewhere.com:1234/api/v1 - allowedSourceTypes: - - source-type1 - - source-type2 - allowedDestTypes: - - your-dest-type - allowedTransferTypes: - - transfer-type - Dataset: - type: object - description: DCAT dataset - example: - '@id': bcca61be-e82e-4da6-bfec-9716a56cef35 - '@type': dcat:Dataset - odrl:hasPolicy: - '@id': OGU0ZTMzMGMtODQ2ZS00ZWMxLThmOGQtNWQxNWM0NmI2NmY4:YmNjYTYxYmUtZTgyZS00ZGE2LWJmZWMtOTcxNmE1NmNlZjM1:NDY2ZTZhMmEtNjQ1Yy00ZGQ0LWFlZDktMjdjNGJkZTU4MDNj - '@type': odrl:Set - odrl:permission: - odrl:target: bcca61be-e82e-4da6-bfec-9716a56cef35 - odrl:action: - odrl:type: http://www.w3.org/ns/odrl/2/use - odrl:constraint: - odrl:and: - - odrl:leftOperand: https://w3id.org/edc/v0.0.1/ns/inForceDate - odrl:operator: - '@id': odrl:gteq - odrl:rightOperand: 2023-07-07T07:19:58.585601395Z - - odrl:leftOperand: https://w3id.org/edc/v0.0.1/ns/inForceDate - odrl:operator: - '@id': odrl:lteq - odrl:rightOperand: 2023-07-12T07:19:58.585601395Z - odrl:prohibition: [] - odrl:obligation: [] - odrl:target: bcca61be-e82e-4da6-bfec-9716a56cef35 - dcat:distribution: - - '@type': dcat:Distribution - dct:format: - '@id': HttpData - dcat:accessService: 5e839777-d93e-4785-8972-1005f51cf367 - description: description - id: bcca61be-e82e-4da6-bfec-9716a56cef35 - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - dct: http://purl.org/dc/terms/ - edc: https://w3id.org/edc/v0.0.1/ns/ - dcat: http://www.w3.org/ns/dcat# - odrl: http://www.w3.org/ns/odrl/2/ - dspace: https://w3id.org/dspace/v0.8/ - DatasetRequest: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/CatalogRequest - counterPartyAddress: - type: string - - counterPartyId: - type: string - - protocol: - type: string - - querySpec: - $ref: "#/components/schemas/QuerySpec" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': DatasetRequest - '@id': dataset-id - counterPartyAddress: http://counter-party-address - counterPartyId: counter-party-id - protocol: dataspace-protocol-http - DeprovisionedResource: - type: object - properties: - error: - type: boolean - - errorMessage: - type: string - - inProcess: - type: boolean - - provisionedResourceId: - type: string - - - EndpointDataReferenceEntry: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/EndpointDataReferenceEntry - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': transfer-process-id - transferProcessId: transfer-process-id - agreementId: agreement-id - contractNegotiationId: contract-negotiation-id - assetId: asset-id - providerId: provider-id - createdAt: 1688465655 - IdResponse: - type: object - properties: - '@id': - type: string - - createdAt: - type: integer - format: int64 - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': id-value - createdAt: 1688465655 - JsonArray: - type: array - properties: - empty: - type: boolean - - valueType: - type: string - - enum: - - ARRAY - - OBJECT - - STRING - - NUMBER - - "TRUE" - - "FALSE" - - "NULL" - - items: - $ref: "#/components/schemas/JsonValue" - JsonObject: - type: object - properties: - empty: - type: boolean - - valueType: - type: string - - enum: - - ARRAY - - OBJECT - - STRING - - NUMBER - - "TRUE" - - "FALSE" - - "NULL" - additionalProperties: - $ref: "#/components/schemas/JsonValue" - - JsonValue: - type: object - properties: - valueType: - type: string - - enum: - - ARRAY - - OBJECT - - STRING - - NUMBER - - "TRUE" - - "FALSE" - - "NULL" - - NegotiationState: - type: object - properties: - state: - type: string - - - Offer: - required: - - '@id' - - assigner - - target - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: http://www.w3.org/ns/odrl/2/Offer - assigner: - type: string - - target: - type: string - - description: ODRL offer - example: - '@context': http://www.w3.org/ns/odrl.jsonld - '@type': odrl:Offer - '@id': offer-id - assigner: providerId - target: assetId - permission: [] - prohibition: [] - obligation: [] - Policy: - type: object - description: ODRL policy - example: - '@context': http://www.w3.org/ns/odrl.jsonld - '@id': 0949ba30-680c-44e6-bc7d-1688cbe1847e - '@type': odrl:Set - permission: - target: http://example.com/asset:9898.movie - action: - type: http://www.w3.org/ns/odrl/2/use - constraint: - leftOperand: https://w3id.org/edc/v0.0.1/ns/left - operator: eq - rightOperand: value - prohibition: [] - obligation: [] - PolicyDefinitionInput: - required: - - '@context' - - policy - type: object - properties: - '@context': - type: object - - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/PolicyDefinition - policy: - $ref: "#/components/schemas/Policy" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': definition-id - policy: - '@context': http://www.w3.org/ns/odrl.jsonld - '@type': Set - uid: http://example.com/policy:1010 - permission: - - target: http://example.com/asset:9898.movie - action: display - constraint: - - leftOperand: spatial - operator: eq - rightOperand: https://www.wikidata.org/wiki/Q183 - comment: i.e Germany - PolicyDefinitionOutput: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/PolicyDefinition - policy: - $ref: "#/components/schemas/Policy" - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@id': definition-id - policy: - '@context': http://www.w3.org/ns/odrl.jsonld - '@type': Set - uid: http://example.com/policy:1010 - permission: - - target: http://example.com/asset:9898.movie - action: display - constraint: - - leftOperand: spatial - operator: eq - rightOperand: https://www.wikidata.org/wiki/Q183 - comment: i.e Germany - createdAt: 1688465655 - Properties: - type: object - - ProvisionerWebhookRequest: - type: object - properties: - apiKeyJwt: - type: string - - assetId: - type: string - - contentDataAddress: - $ref: "#/components/schemas/DataAddress" - hasToken: - type: boolean - - resourceDefinitionId: - type: string - - resourceName: - type: string - - - QuerySpec: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/QuerySpec - filterExpression: - type: array - - items: - $ref: "#/components/schemas/Criterion" - limit: - type: integer - format: int32 - - offset: - type: integer - format: int32 - - sortField: - type: string - - sortOrder: - type: string - - enum: - - ASC - - DESC - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': QuerySpec - offset: 5 - limit: 10 - sortOrder: DESC - sortField: fieldName - filterExpression: [] - SelectionRequestSchema: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/SelectionRequest - destination: - $ref: "#/components/schemas/DataAddress" - source: - $ref: "#/components/schemas/DataAddress" - strategy: - type: string - - transferType: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - source: - '@type': https://w3id.org/edc/v0.0.1/ns/DataAddress - type: test-src1 - destination: - '@type': https://w3id.org/edc/v0.0.1/ns/DataAddress - type: test-dst2 - strategy: you_custom_strategy - transferType: you_custom_transfer_type - SuspendTransfer: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/SuspendTransfer - state: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/SuspendTransfer - reason: a reason to suspend - TerminateNegotiationSchema: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/TerminateNegotiation - reason: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/TerminateNegotiation - '@id': negotiation-id - reason: a reason to terminate - TerminateTransfer: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/TerminateTransfer - state: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/TerminateTransfer - reason: a reason to terminate - TransferProcess: - type: object - properties: - '@id': - type: string - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/TransferProcess - callbackAddresses: - type: array - - items: - $ref: "#/components/schemas/CallbackAddress" - contractAgreementId: - type: string - - counterPartyAddress: - type: string - - counterPartyId: - type: string - - dataDestination: - $ref: "#/components/schemas/DataAddress" - errorDetail: - type: string - - privateProperties: - $ref: "#/components/schemas/Properties" - properties: - $ref: "#/components/schemas/Properties" - protocol: - type: string - - state: - type: string - - type: - type: string - - enum: - - CONSUMER - - PROVIDER - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/TransferProcess - '@id': process-id - correlationId: correlation-id - type: PROVIDER - state: STARTED - stateTimestamp: 1688465655 - assetId: asset-id - contractId: contractId - dataDestination: - type: data-destination-type - privateProperties: - private-key: private-value - errorDetail: eventual-error-detail - createdAt: 1688465655 - callbackAddresses: - - transactional: false - uri: http://callback/url - events: - - contract.negotiation - - transfer.process - authKey: auth-key - authCodeId: auth-code-id - TransferRequest: - required: - - '@context' - - assetId - - contractId - - counterPartyAddress - - dataDestination - - protocol - type: object - properties: - '@context': - type: object - - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/TransferRequest - assetId: - type: string - - callbackAddresses: - type: array - - items: - $ref: "#/components/schemas/CallbackAddress" - connectorAddress: - type: string - description: please use counterPartyAddress instead - - deprecated: true - connectorId: - type: string - description: Provider connector id is stored in the contract agreement - - deprecated: true - contractId: - type: string - - counterPartyAddress: - type: string - - dataDestination: - $ref: "#/components/schemas/DataAddress" - privateProperties: - $ref: "#/components/schemas/Properties" - properties: - $ref: "#/components/schemas/Properties" - protocol: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/TransferRequest - protocol: dataspace-protocol-http - counterPartyAddress: http://provider-address - contractId: contract-id - assetId: asset-id - dataDestination: - type: data-destination-type - privateProperties: - private-key: private-value - callbackAddresses: - - transactional: false - uri: http://callback/url - events: - - contract.negotiation - - transfer.process - authKey: auth-key - authCodeId: auth-code-id - TransferState: - type: object - properties: - '@type': - type: string - example: https://w3id.org/edc/v0.0.1/ns/TransferState - state: - type: string - - example: - '@context': - '@vocab': https://w3id.org/edc/v0.0.1/ns/ - '@type': https://w3id.org/edc/v0.0.1/ns/TransferState - state: STARTED diff --git a/yarn.lock b/yarn.lock index 0f3e537d..3932df41 100644 --- a/yarn.lock +++ b/yarn.lock @@ -298,7 +298,7 @@ "@commitlint/cli@^19.3.0": version "19.3.0" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-19.3.0.tgz#44e6da9823a01f0cdcc43054bbefdd2c6c5ddf39" + resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-19.3.0.tgz" integrity sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g== dependencies: "@commitlint/format" "^19.3.0" @@ -311,7 +311,7 @@ "@commitlint/config-conventional@^19.0.3": version "19.2.2" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-19.2.2.tgz#1f4e6975d428985deacf2b3ff6547e02c9302054" + resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.2.2.tgz" integrity sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw== dependencies: "@commitlint/types" "^19.0.3" @@ -344,7 +344,7 @@ "@commitlint/format@^19.3.0": version "19.3.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-19.3.0.tgz#48dd9e6930d41eb0ca19f36159ee940c5b25d857" + resolved "https://registry.npmjs.org/@commitlint/format/-/format-19.3.0.tgz" integrity sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg== dependencies: "@commitlint/types" "^19.0.3" @@ -352,7 +352,7 @@ "@commitlint/is-ignored@^19.2.2": version "19.2.2" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-19.2.2.tgz#503ddcf908ac6b2bc4586a49cb53893a1856f5b2" + resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-19.2.2.tgz" integrity sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g== dependencies: "@commitlint/types" "^19.0.3" @@ -360,7 +360,7 @@ "@commitlint/lint@^19.2.2": version "19.2.2" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-19.2.2.tgz#57f69e24bd832a7dcce8ebf82d11e3bf03ccc2a9" + resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-19.2.2.tgz" integrity sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA== dependencies: "@commitlint/is-ignored" "^19.2.2" @@ -864,7 +864,7 @@ "@types/node@*", "@types/node@^20.4.7": version "20.12.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.7.tgz#04080362fa3dd6c5822061aa3124f5c152cff384" + resolved "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz" integrity sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg== dependencies: undici-types "~5.26.4" @@ -1428,7 +1428,7 @@ commander@11.1.0: commitlint@^19.0.3: version "19.3.0" - resolved "https://registry.yarnpkg.com/commitlint/-/commitlint-19.3.0.tgz#c3e5132b8c8e2d3ecba8f5e1754f753285c8cf64" + resolved "https://registry.npmjs.org/commitlint/-/commitlint-19.3.0.tgz" integrity sha512-B8eUVQCjz+1ZAjR3LC3+vzKg7c4/qN4QhSxkjp0u0v7Pi79t9CsnGAluvveKmFh56e885zgToPL5ax+l8BHTPg== dependencies: "@commitlint/cli" "^19.3.0" @@ -3448,7 +3448,7 @@ test-exclude@^6.0.0: testcontainers@^10.9.0: version "10.9.0" - resolved "https://registry.yarnpkg.com/testcontainers/-/testcontainers-10.9.0.tgz#9d5b2ef189ed32a0be376d013017ba8593a09e93" + resolved "https://registry.npmjs.org/testcontainers/-/testcontainers-10.9.0.tgz" integrity sha512-LN+cKAOd61Up9SVMJW+3VFVGeVQG8JBqZhEQo2U0HBfIsAynyAXcsLBSo+KZrOfy9SBz7pGHctWN/KabLDbNFA== dependencies: "@balena/dockerignore" "^1.0.2" @@ -3554,7 +3554,7 @@ type-fest@^0.21.3: typescript@^5.1.6: version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz" integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== undici-types@~5.26.4: