Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
5f30bc6
Make `title` of AuthenticationRequestItem mandatory (#304)
britsta Mar 5, 2025
c1e1cd0
Update data model (#306)
jkoenig134 Mar 5, 2025
5914bd7
Use `templateId` instead of `template` for Relationships (#308)
britsta Mar 5, 2025
1000532
Merge branch 'main' into release/v7
mergify[bot] Mar 6, 2025
ccf83af
Remove validity dates from Attributes (#310)
britsta Mar 6, 2025
80af9eb
Merge branch 'main' into release/v7
jkoenig134 Mar 20, 2025
e38fa58
Merge branch 'main' into release/v7
mergify[bot] Mar 25, 2025
70bdecc
Merge branch 'main' into release/v7
mergify[bot] Mar 25, 2025
0da3b03
Merge branch 'main' into release/v7
mergify[bot] Apr 2, 2025
e9656ae
Merge branch 'main' into release/v7
mergify[bot] Apr 2, 2025
149d105
Merge branch 'main' into release/v7
mergify[bot] Apr 8, 2025
1adf2d6
Merge branch 'main' into release/v7
mergify[bot] Apr 8, 2025
32b86c5
Merge branch 'main' into release/v7
mergify[bot] Apr 17, 2025
82700bb
Merge branch 'main' into release/v7
mergify[bot] Apr 22, 2025
67a28e2
Merge branch 'main' into release/v7
mergify[bot] Apr 24, 2025
645231a
Merge branch 'main' into release/v7
mergify[bot] Apr 24, 2025
37c32a7
Merge branch 'main' into release/v7
mergify[bot] Apr 25, 2025
d1ad315
Document the removal of the FreeTextRequestItem and the RequestItem t…
jkoenig134 Apr 29, 2025
ba58580
Merge branch 'main' into release/v7
mergify[bot] May 5, 2025
09118da
Merge branch 'main' into release/v7
mergify[bot] May 6, 2025
95dad1c
Merge branch 'main' into release/v7
mergify[bot] May 6, 2025
909185c
Merge branch 'main' into release/v7
mergify[bot] May 6, 2025
fa7ee20
Merge branch 'main' into release/v7
mergify[bot] May 8, 2025
20af7cd
Merge branch 'main' into release/v7
mergify[bot] May 8, 2025
950e241
Merge branch 'main' into release/v7
mergify[bot] May 9, 2025
c69fd48
Merge branch 'main' into release/v7
mergify[bot] May 9, 2025
e321574
Add validation for IdentityAttribute `tags` (#331)
britsta May 9, 2025
c2ebb44
Remove deprecated use cases (#334)
britsta May 9, 2025
0f6051f
Merge branch 'main' into release/v7
mergify[bot] May 9, 2025
e284436
Merge branch 'main' into release/v7
mergify[bot] May 12, 2025
829771e
Mention validation of IdentityAttribute `tags` in use cases (#338)
britsta May 13, 2025
6213495
Update docs for changed validation of IdentityAttribute `tags` (#339)
britsta May 13, 2025
68e90d4
Add migration guide for v7 (#325)
britsta May 14, 2025
31ee3c6
Mention removed `GET /api/v2/Attributes/Valid` Connector route (#340)
britsta May 14, 2025
c297f24
Mention optional File `title` in v7 migration guide (#341)
britsta May 15, 2025
9963129
Merge branch 'main' into release/v7
mergify[bot] May 16, 2025
fdc95e4
Merge branch 'main' into release/v7
mergify[bot] May 16, 2025
8c73558
Merge branch 'main' into release/v7
britsta May 19, 2025
20e62b3
fix: prettier error
britsta May 19, 2025
b03663b
Remove deprecated `truncatedReference` property of objects (#345)
britsta May 19, 2025
d8af578
Merge branch 'main' into release/v7
mergify[bot] May 23, 2025
147e137
Merge branch 'main' into release/v7
Milena-Czierlinski Jun 13, 2025
4f4af01
Make `ownershipToken` of TransferFileOwnershipRequestItem mandatory (…
Milena-Czierlinski Jun 13, 2025
e41a45d
Merge branch 'main' into release/v7
mergify[bot] Jun 25, 2025
8b35f2a
Merge branch 'main' into release/v7
Milena-Czierlinski Jul 2, 2025
9097620
Add `forbiddenCharactersInAttribute` error (#357)
Milena-Czierlinski Jul 2, 2025
fa5a7dc
Remove db name prefix from the connector config (#358)
jkoenig134 Jul 2, 2025
a2155d0
Remove attribute listeners (#360)
jkoenig134 Jul 4, 2025
0e77e3d
Update SDK API key usage (#363)
jkoenig134 Jul 9, 2025
c6b88e9
Merge branch 'main' into release/v7
jkoenig134 Jul 15, 2025
6af0008
Add docs for the new authentication methods and breaking changes (#364)
jkoenig134 Jul 17, 2025
8e72981
Restrict characters used in attribute value texts (#309)
Magnus-Kuhn Jul 17, 2025
9518827
Merge branch 'main' into release/v7
mergify[bot] Jul 17, 2025
fab1fe5
Merge branch 'main' into release/v7
mergify[bot] Jul 22, 2025
e9cec83
Do not talk about caching (#367)
jkoenig134 Jul 22, 2025
fd18b38
Remove `requireManualDecision` of RequestItems (#368)
britsta Jul 25, 2025
70e7bb0
Merge branch 'main' into release/v7
mergify[bot] Jul 25, 2025
12fe4a1
Add `requiresInteraction` to ConsentRequestItem (#369)
britsta Jul 25, 2025
9b015f4
Merge branch 'main' into release/v7
mergify[bot] Aug 6, 2025
e088e84
Use v7 Connector for API doc snippets (#371)
jkoenig134 Aug 13, 2025
5516ec0
Introduce wildcard authorization (#372)
britsta Aug 18, 2025
c9d3853
Changed prefix of Connector routes (#373)
britsta Aug 19, 2025
4ec6da2
Specify requirements for valid API keys (#374)
britsta Aug 25, 2025
ebb149b
Add documentation for JWT Bearer authorization (#375)
britsta Sep 4, 2025
c2bd1ce
Merge branch 'main' into release/v7
mergify[bot] Sep 15, 2025
b8f954d
Merge branch 'main' into release/v7
mergify[bot] Sep 17, 2025
c822c76
Remove deprecated Device methods (#377)
britsta Sep 17, 2025
b7bc69d
Merge branch 'main' into release/v7
mergify[bot] Sep 18, 2025
c62e8cb
Switch to Backbone API v2 (#381)
britsta Oct 24, 2025
dea9082
Rework error codes (#380)
britsta Oct 24, 2025
2822347
Rework data model overview for new LocalAttribute concept (#382)
britsta Nov 3, 2025
9ca777a
Merge branch 'main' into release/v7
mergify[bot] Nov 3, 2025
43f3ec5
Start each sentence of integration scenarios in new line (#383)
britsta Nov 3, 2025
da2dade
Use proper URL for the doc connector (#385)
jkoenig134 Nov 4, 2025
a78be87
Rename `thirdPartyAddress` property to `initialAttributePeer` (#386)
britsta Nov 6, 2025
c45fb5a
Rework use cases for new LocalAttribute concept (#387)
britsta Nov 18, 2025
4a21a52
Rework scenarios for new LocalAttribute concept (#388)
britsta Nov 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,8 @@ docs_integrate:
url: /integrate/migration-from-v4-to-v5
- title: "Migration From v5 to v6"
url: /integrate/migration-from-v5-to-v6
- title: "Migration From v6 to v7"
url: /integrate/migration-from-v6-to-v7
- title: Troubleshooting
children:
- title: "Error codes"
Expand Down
7 changes: 2 additions & 5 deletions _docs_explore/42-transport-layer.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The transport layer is located between the Backbone layer and the consumption la

## Data Handling

The transport layer introduces a local storage based on a document database. In this database all relevant data is persisted or cached. In addition to the database, the transport layer takes care of serializing and deserializing data structures.
The transport layer introduces a local storage based on a document database. In this database all relevant data is persisted. In addition to the database, the transport layer takes care of serializing and deserializing data structures.

## Syntactical validation of plaintext data

Expand Down Expand Up @@ -121,7 +121,6 @@ The actual file is then shared by a file reference to a recipient. Files can be
- expiresAt: ISO String when the file expires
- mimetype: Mimetype of the file's payload
- isOwn: Whether or not the file was uploaded by the current Identity
- truncatedReference: The truncated reference of the file
- reference: The reference of the file
- deletedAt: ISO String when the file has been deleted
- deletedBy: Address of the Identity which deleted the file
Expand Down Expand Up @@ -163,7 +162,7 @@ Relationships are usually used as the technical term, whereas contact is used as
### Relationship Structure

- id
- RelationshipTemplate
- templateId
- status
- peer
- peerIdentity
Expand Down Expand Up @@ -264,7 +263,6 @@ A company has no customer system where customers can log in but would still like
- content
- forIdentity
- passwordProtection
- truncatedReference
- reference

## Tokens
Expand All @@ -290,5 +288,4 @@ The token id and the generated secret key are then the only two properties which
- content
- forIdentity
- passwordProtection
- truncatedReference
- reference
2 changes: 1 addition & 1 deletion _docs_explore/61-runtime.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ The Decider Module can be configured to automatically decide incoming Requests.
For this to work, each RequestItem must match a form that was previously configured.
The configuration also states how the RequestItem is processed, i.e. if it is rejected or accepted and in the latter case which parameters are used to do so.

If there is no suitable configuration for every [RequestItem]({% link _docs_integrate/data-model-overview.md %}#requestitem) of a Request or at least one RequestItem has `requireManualDecision` set, the Decider Module will not be able to automatically decide the Request.
If there is no suitable configuration for every [RequestItem]({% link _docs_integrate/data-model-overview.md %}#requestitem) of a Request or at least one RequestItem is an [AuthenticationRequestItem]({% link _docs_integrate/data-model-overview.md %}#authenticationrequestitem) or a [ConsentRequestItem]({% link _docs_integrate/data-model-overview.md %}#consentrequestitem), the Decider Module will not be able to automatically decide the Request.
In this case, the `status` of the [Request]({% link _docs_integrate/data-model-overview.md %}#request) is moved from `DecisionRequired` to `ManualDecisionRequired` and the user must manually decide the Request.

### Message Module
Expand Down
30 changes: 22 additions & 8 deletions _docs_integrate/01-integrate-scenarios.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,39 +7,53 @@ sidebar:
nav: "docs_integrate"
---

You want to seamlessly use enmeshed with your processes, solutions and software components? No worries, you are good to go!
You want to seamlessly use enmeshed with your processes, solutions and software components?
No worries, you are good to go!

We've built the enmeshed Connector exactly for this scenario: to integrate existing systems with the enmeshed approach with as little effort as possible.

Here you'll find everything you need to seamlessly dive into the world of enmeshed and integrate it into your applications and systems. Whether you're just starting out or are already familiar with enmeshed, our comprehensive guide and resources are at your disposal.
Here you'll find everything you need to seamlessly dive into the world of enmeshed and integrate it into your applications and systems.
Whether you're just starting out or are already familiar with enmeshed, our comprehensive guide and resources are at your disposal.

## Getting Started

Begin your integration journey by familiarizing yourself with the [Connector REST API]({% link _docs_integrate/access-the-connector.md %}) and exploring the fundamental steps for integration. Gain insights into effectively utilizing the [Connector SDKs]({% link _docs_integrate/access-the-connector.md %}#accessing-the-connector-by-software-development-kits-sdk) to streamline and optimize your integration. To get a first impression of certain integration processes, take a look at our [Integration example]({% link _docs_integrate/integration-example.md %}). Discover how events work and how you can leverage them in your application in the [Event introduction]({% link _docs_integrate/event-introduction.md %}).
Begin your integration journey by familiarizing yourself with the [Connector REST API]({% link _docs_integrate/access-the-connector.md %}) and exploring the fundamental steps for integration.
Gain insights into effectively utilizing the [Connector SDKs]({% link _docs_integrate/access-the-connector.md %}#accessing-the-connector-by-software-development-kits-sdk) to streamline and optimize your integration.
To get a first impression of certain integration processes, take a look at our [Integration example]({% link _docs_integrate/integration-example.md %}).
Discover how events work and how you can leverage them in your application in the [Event introduction]({% link _docs_integrate/event-introduction.md %}).

## Identities and Relationships

Learn how to [establish a Relationship]({% link _docs_integrate/establish-relationships.md %}) to another Identity in order to be able to communicate and exchange information with it. Explore how to [exchange Messages]({% link _docs_integrate/exchange-messages.md %}) using enmeshed to communicate simply and securely with your peers. Furthermore, discover how to [terminate Relationships]({% link _docs_integrate/terminate-relationships.md %}), [delete Identities]({% link _docs_integrate/delete-identities.md %}) and [manage IdentityMetadata]({% link _docs_integrate/manage-identitymetadata.md %}).
Learn how to [establish a Relationship]({% link _docs_integrate/establish-relationships.md %}) to another Identity in order to be able to communicate and exchange information with it.
Explore how to [exchange Messages]({% link _docs_integrate/exchange-messages.md %}) using enmeshed to communicate simply and securely with your peers.
Furthermore, discover how to [terminate Relationships]({% link _docs_integrate/terminate-relationships.md %}), [delete Identities]({% link _docs_integrate/delete-identities.md %}) and [manage IdentityMetadata]({% link _docs_integrate/manage-identitymetadata.md %}).

## Working With Requests

Learn how to create and manage Requests. Check out the [Request and Response introduction]({% link _docs_integrate/request-and-response-introduction.md %}) and the [Requests via RelationshipTemplates]({% link _docs_integrate/requests-via-relationshiptemplates.md %}) and [Requests via Messages]({% link _docs_integrate/requests-via-messages.md %}) guides.
Learn how to create and manage Requests.
Check out the [Request and Response introduction]({% link _docs_integrate/request-and-response-introduction.md %}) and the [Requests via RelationshipTemplates]({% link _docs_integrate/requests-via-relationshiptemplates.md %}) and [Requests via Messages]({% link _docs_integrate/requests-via-messages.md %}) guides.

## Manage Attributes

The [Attribute introduction]({% link _docs_integrate/attribute-introduction.md %}) provides an overview of the different kinds of Attributes and the Attribute management options. Next, explore how to [create Attributes for yourself]({% link _docs_integrate/create-attributes-for-yourself.md %}) and how to [share Attributes]({% link _docs_integrate/share-attributes-with-peer.md %}) with a peer. Also, discover how to [read Attributes]({% link _docs_integrate/read-attributes-from-peer.md %}) from a peer and how to store Attributes in a peer's Wallet for them. The latter can be realized by [creating Attributes]({% link _docs_integrate/create-attributes-for-peer.md %}) for them or by [proposing Attributes]({% link _docs_integrate/propose-attributes-to-peer.md %}) to them. The peer must give you their permission for this. Furthermore, learn how to [update Attributes by succession]({% link _docs_integrate/update-attributes-by-succession.md %}) or how to [delete Attributes]({% link _docs_integrate/delete-attributes.md %}).
The [Attribute introduction]({% link _docs_integrate/attribute-introduction.md %}) provides an overview of the different kinds of Attributes and the Attribute management options.
Next, explore how to [create Attributes for yourself]({% link _docs_integrate/create-attributes-for-yourself.md %}) and how to [share Attributes]({% link _docs_integrate/share-attributes-with-peer.md %}) with a peer.
Also, discover how to [read Attributes]({% link _docs_integrate/read-attributes-from-peer.md %}) from a peer and how to store Attributes in a peer's Wallet for them.
The latter can be realized by [creating Attributes]({% link _docs_integrate/create-attributes-for-peer.md %}) for them or by [proposing Attributes]({% link _docs_integrate/propose-attributes-to-peer.md %}) to them.
The peer must give you their permission for this.
Furthermore, learn how to [update Attributes by succession]({% link _docs_integrate/update-attributes-by-succession.md %}) or how to [delete Attributes]({% link _docs_integrate/delete-attributes.md %}).

## Request Consent

Discover how to request [persistent consent]({% link _docs_integrate/request-persistent-consent-of-peer.md %}) and [one-time consent]({% link _docs_integrate/request-one-time-consent-of-peer.md %}) of a peer.

## Data Model

Understand the [Data Model]({% link _docs_integrate/data-model-overview.md %}) of enmeshed and how it fits into your integration. Also get an overview of the [Attribute Values]({% link _docs_integrate/attribute-values.md %}), the [Connector Events]({% link _docs_integrate/connector-events.md %}) and our [Use Cases]({% link _docs_integrate/use-cases.md %}).
Understand the [Data Model]({% link _docs_integrate/data-model-overview.md %}) of enmeshed and how it fits into your integration.
Also get an overview of the [Attribute Values]({% link _docs_integrate/attribute-values.md %}), the [Connector Events]({% link _docs_integrate/connector-events.md %}) and our [Use Cases]({% link _docs_integrate/use-cases.md %}).

## Migration Guides

Get support for the migration of an existing system to a new version, for example when [migrating from version 4 to version 5]({% link _docs_integrate/migration-from-v4-to-v5.md %}) or [from version 5 to version 6]({% link _docs_integrate/migration-from-v5-to-v6.md %}) of the enmeshed Runtime and Connector, respectively.
Get support for the migration of an existing system to a new version, for example when [migrating from version 5 to version 6]({% link _docs_integrate/migration-from-v5-to-v6.md %}) or [from version 6 to version 7]({% link _docs_integrate/migration-from-v6-to-v7.md %}) of the enmeshed Runtime and Connector, respectively.

## Troubleshooting

Expand Down
16 changes: 11 additions & 5 deletions _docs_integrate/access-the-connector.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,17 @@ required_by:
# End automatic generation
---

The primary integration capability of the Connector is the REST API. In order to use it, you should have received an API-Key for the respective Connector. An API-Key so far has all authorizations for accessing the API.
The primary integration capability of the Connector is the REST API.
In order to use it, you should have received an API-Key for the respective Connector.
An API-Key so far has all authorizations for accessing the API.

# Hosted API tooling by the (development) Connector

In order to use the hosted api tooling, it must be activated in the [Connector configuration]({% link _docs_operate/setup-with-docker-compose.md %}#hosted-api-tooling-by-the-development-connector).
{: .notice--warning}

You can access the REST API documentation through the Connector's designated HTTP endpoints. Swagger and Rapidoc serve as interactive platforms hosted on the Connector, enabling you to explore and experiment with the various APIs interactively.
You can access the REST API documentation through the Connector's designated HTTP endpoints.
Swagger and Rapidoc serve as interactive platforms hosted on the Connector, enabling you to explore and experiment with the various APIs interactively.

## Swagger

Expand All @@ -57,11 +60,14 @@ You can view these files with the [Swagger Editor](https://editor.swagger.io/) o

# Accessing the Connector by Software Development Kits (SDK)

To achieve a better developer experience and type safety, preferably a Software Development Kit (SDK) should be used. The following SDKs are available for this purpose:
To achieve a better developer experience and type safety, preferably a Software Development Kit (SDK) should be used.
The following SDKs are available for this purpose:

We work on keeping this list as updated as possible. Please let us know, if some SDKs are outdated or new SDKs are available for the community.
We work on keeping this list as updated as possible.
Please let us know, if some SDKs are outdated or new SDKs are available for the community.
{: .notice--info}

## TypeScript SDK

We offer an SDK developed in TypeScript that facilitates communication with your Connector from your TypeScript or JavaScript application. You can find it readily available on [npmjs](https://www.npmjs.com/package/@nmshd/connector-sdk).
We offer an SDK developed in TypeScript that facilitates communication with your Connector from your TypeScript or JavaScript application.
You can find it readily available on [npmjs](https://www.npmjs.com/package/@nmshd/connector-sdk).
Loading