Management-API
Our CaaS is mostly controlled by our users via the UI, i.e., assets are created, policies, contract definitions, and contracts are negotiated, and data transfers are initiated. In addition to the UI, there are also APIs that can be used to operate the connector.
Endpoints
The {{Management-API}}
specifies the URL of the Management-API, and the prefixes v2
and v3
indicate that the endpoints are currently versioned independently of each other.
Resource | Endpoint |
---|---|
Asset |
|
Policy Definition |
|
Contract Definition |
|
Catalog |
|
Contract Negotiation |
|
Contract Agreement |
|
Transfer Process |
|
Brief JSON-LD Introduction
The EDC implements the Dataspace Protocol (DSP), as specified by the IDSA. As the DSP uses JSON-LD for all payloads, the Management-API reflects this as well, even though it is not a part of the DSP. JSON-LD (JSON for Linked Data) is an extension of JSON that introduces a set of principles and mechanisms to serialize RDF-graphs, thus opening new opportunities for interoperability. As such, there is a clear separation into identifiable resources (IRIs) and literals holding primitive data like strings or integers. For developers used to working with JSON, JSON-LD can behave in unexpected ways; for example, a list with one entry will always unwrap to an object, which may cause schema validation to fail on the client side.
Keywords
JSON-LD includes several important keywords that play a crucial role in defining the structure, semantics, and relationships within a JSON-LD document. Since some keys required in requests for the new management API aren't self-explanatory when you first see them, here are some of the most commonly used and important keywords in JSON-LD. These keys are generally part of the JSON-LD spec and serve as identification on a larger scope.
Key | Description |
---|---|
@context | Specifies the context for interpreting the meaning of terms and properties within a JSON-LD document. It associates terms with namespaces, vocabularies, or URLs. |
@vocab | Sets a default namespace or vocabulary for expanding terms within a JSON-LD document. It allows for a more concise representation of properties by omitting the namespace prefix for commonly used terms. |
@id | Represents the unique identifier (URI or IRI) for a node or resource within a JSON-LD document. It allows for linking and referencing resources. |
@type | Indicates the type(s) of a node or resource. It is used to specify the class or classes that the resource belongs to, typically using terms from a vocabulary or ontology. |
Namespaces
A namespace is defined by associating a prefix with a URI or IRI in the @context of a JSON-LD document. The prefix is typically a short string, while the URI or IRI represents a namespace or vocabulary where the terms or properties are defined. Some namespaces are known to the EDC internally. This means the EDC will resolve all resources to non-prefixed IRIs unless they are part of the following list:
Key | Description |
---|---|
dct | Defines the prefix "dct" and associates it with the URI |
edc | Defines the prefix "edc" and associates it with the URI |
dcat | Defines the prefix "dcat" and associates it with the URI |
odrl | Defines the prefix "odrl" and associates it with the URI |
dspace | Defines the prefix "dspace" and associates it with the URI |
Notice
Original source of documentation: Management API Walkthrough, the original documentation is licensed under Creative Commons License (CC BY 4.0). Minor adjustments to the text have been made.
Last updated