From ce1df1bd97a977492ac17e60ec774fc7ce257760 Mon Sep 17 00:00:00 2001 From: Milena-Czierlinski Date: Tue, 2 Jun 2026 15:57:28 +0000 Subject: [PATCH 1/2] feat: add VerifiableCredential Attribute value type --- _docs_integrate/attribute-values.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/_docs_integrate/attribute-values.md b/_docs_integrate/attribute-values.md index c76b15f5c..fe2fd8c48 100644 --- a/_docs_integrate/attribute-values.md +++ b/_docs_integrate/attribute-values.md @@ -415,6 +415,19 @@ The Surname, also called family name or last name, is the portion of the persona | `@type` | `"Surname"` | ✓ | | | `value` | `string` | ✓ | max. length: 100 | +## VerifiableCredential + +A VerifiableCredential is a set of information about an identity that follows the [W3C standard](https://www.w3.org/TR/vc-data-model-2.0/). + +**Properties** + +| Name | Type | Required | Validation | +| -------------------- | --------------------------------- | :------: | ------------------------------------------------- | +| `@type` | `"VerifiableCredential"` | ✓ | | +| `value` | `string` \| `Record` | ✓ | max. size: 50MB
must be a valid string or JSON | +| `type` | `string` | ✗ | | +| `displayInformation` | `Record` | ✗ | | + ## Website The website of the person which can be used to get more information about the person. From 9b908edf17570fc094365cc94785b92b5ad5747c Mon Sep 17 00:00:00 2001 From: Milena-Czierlinski Date: Tue, 2 Jun 2026 16:24:28 +0000 Subject: [PATCH 2/2] feat: add ShareCredentialOfferRequestItem and ShareAuthorizationRequestRequestItem to data model overview and request and response introduction --- _docs_integrate/data-model-overview.md | 35 +++++++++++++++++++ .../request-and-response-introduction.md | 32 +++++++++++++++++ 2 files changed, 67 insertions(+) diff --git a/_docs_integrate/data-model-overview.md b/_docs_integrate/data-model-overview.md index 1709bd1ff..e30247585 100644 --- a/_docs_integrate/data-model-overview.md +++ b/_docs_integrate/data-model-overview.md @@ -768,6 +768,32 @@ Furthermore, all details on how to use the ShareAttributeRequestItem and example | metadata | `object` \| `undefined` | The metadata property can be used to provide arbitrary JSON content by the sender of the Request. The metadata is not processed by enmeshed. It is a great way to use your own process descriptors at the time of sending the Request which helps you identify the correct internal process at the time of receiving the Response. | | mustBeAccepted | `boolean` | The mandatory `mustBeAccepted` property is used to differentiate between required and optional RequestItems within the Request.
{::nomarkdown}
  • If mustBeAccepted is set to true, the peer cannot accept the Request without accepting this RequestItem.
  • If mustBeAccepted is set to false, the peer can accept the Request even though the RequestItem is rejected.
{:/} | +#### ShareAuthorizationRequestRequestItem + +For more information you should check out the section [ShareAuthorizationRequestRequestItem of the Request and Response introduction]({% link _docs_integrate/request-and-response-introduction.md %}#shareauthorizationrequestrequestitem). +Furthermore, all details on how to use the ShareAttributeRequestItem and examples of use cases for it can be found in the [Share Attributes with peer]({% link _docs_integrate/share-attributes-with-peer.md %}) guide. + +| Name | Type | Description | +| ----------------------- | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| @type | `"ShareAuthorizationRequestRequestItem"` | Specifies the type of the RequestItem for internal processing. | +| authorizationRequestUrl | `string` | The url that provides the authorization request. | +| description | `string` \| `undefined` | An optional, human readable description for the RequestItem. | +| metadata | `object` \| `undefined` | The metadata property can be used to provide arbitrary JSON content by the sender of the Request. The metadata is not processed by enmeshed. It is a great way to use your own process descriptors at the time of sending the Request which helps you identify the correct internal process at the time of receiving the Response. | +| mustBeAccepted | `boolean` | The mandatory `mustBeAccepted` property is used to differentiate between required and optional RequestItems within the Request.
{::nomarkdown}
  • If mustBeAccepted is set to true, the peer cannot accept the Request without accepting this RequestItem.
  • If mustBeAccepted is set to false, the peer can accept the Request even though the RequestItem is rejected.
{:/} | + +#### ShareCredentialOfferRequestItem + +For more information you should check out the section [ShareCredentialOfferRequestItem of the Request and Response introduction]({% link _docs_integrate/request-and-response-introduction.md %}#sharecredentialofferrequestitem). +Furthermore, all details on how to use the ShareAttributeRequestItem and examples of use cases for it can be found in the [Share Attributes with peer]({% link _docs_integrate/share-attributes-with-peer.md %}) guide. + +| Name | Type | Description | +| ------------------ | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| @type | `"ShareCredentialOfferRequestItem"` | Specifies the type of the RequestItem for internal processing. | +| credentialOfferUrl | `string` | The url that provides the credential offer. | +| description | `string` \| `undefined` | An optional, human readable description for the RequestItem. | +| metadata | `object` \| `undefined` | The metadata property can be used to provide arbitrary JSON content by the sender of the Request. The metadata is not processed by enmeshed. It is a great way to use your own process descriptors at the time of sending the Request which helps you identify the correct internal process at the time of receiving the Response. | +| mustBeAccepted | `boolean` | The mandatory `mustBeAccepted` property is used to differentiate between required and optional RequestItems within the Request.
{::nomarkdown}
  • If mustBeAccepted is set to true, the peer cannot accept the Request without accepting this RequestItem.
  • If mustBeAccepted is set to false, the peer can accept the Request even though the RequestItem is rejected.
{:/} | + #### TransferFileOwnershipRequestItem For more information you should check out the section [TransferFileOwnershipRequestItem of the Request and Response introduction]({% link _docs_integrate/request-and-response-introduction.md %}#transferfileownershiprequestitem). @@ -1284,6 +1310,15 @@ The parameters to accept a ReadAttributeRequestItem with a new Attribute. | accept | `"true"` | The only possible value here is the string "true". | | newAttribute | `IdentityAttribute` \| `RelationshipAttribute` | The new Attribute. | +#### AcceptShareAuthorizationRequestRequestItemParameters + +The parameters to accept a ShareAuthorizationRequestRequestItem. + +| Name | Type | Description | +| ----------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| accept | `"true"` | The only possible value here is the string "true". | +| attributeId | `string` | The `id` of the LocalAttribute with content IdentityAttribute and value type [VerifiableCredential]({% link _docs_integrate/attribute-values.md %}#verifiablecredential). | + ## IdentityMetadata An Integrator of a Connector should be able to store arbitrary auxiliary metadata related to an [Identity](#identity) within the Connector and to [manage such IdentityMetadata]({% link _docs_integrate/manage-identitymetadata.md %}). diff --git a/_docs_integrate/request-and-response-introduction.md b/_docs_integrate/request-and-response-introduction.md index f7b4a42da..f9e37db4b 100644 --- a/_docs_integrate/request-and-response-introduction.md +++ b/_docs_integrate/request-and-response-introduction.md @@ -193,6 +193,38 @@ After the Recipient has responded to the ShareAttributeRequestItem, a suitable [ - After rejecting this RequestItem, a [RejectResponseItem]({% link _docs_integrate/data-model-overview.md %}#rejectresponseitem) will be transferred. - In case of an error, an [ErrorResponseItem]({% link _docs_integrate/data-model-overview.md %}#errorresponseitem) will be transferred. +#### ShareAuthorizationRequestRequestItem + +If you want to authorize a [VerifiableCredential]({% link _docs_integrate/attribute-values.md %}#verifiablecredential) or certain claims of it via a Request, this is done with the [ShareAuthorizationRequestRequestItem]({% link _docs_integrate/data-model-overview.md %}#shareauthorizationrequestrequestitem). +All details on how to use the ShareAttributeRequestItem and examples of use cases for it can be found in the [Share Attributes with peer]({% link _docs_integrate/share-attributes-with-peer.md %}) guide. + +Depending on whether the ShareAuthorizationRequestRequestItem is to be accepted or rejected, its Recipient has different parameters to choose from for responding to it: + +- To accept this RequestItem, the [AcceptShareAuthorizationRequestRequestItemParameters]({% link _docs_integrate/data-model-overview.md %}#acceptshareauthorizationrequestrequestitemparameters) can be utilized. +- To reject this RequestItem, the [RejectRequestItemParameters]({% link _docs_integrate/data-model-overview.md %}#rejectrequestitemparameters) can be utilized. + +After the Recipient has responded to the ShareAuthorizationRequestRequestItem, a suitable [ResponseItem]({% link _docs_integrate/data-model-overview.md %}#responseitems) is generated and transferred to the Sender of the Request: + +- After accepting this RequestItem, an [AcceptResponseItem]({% link _docs_integrate/data-model-overview.md %}#acceptresponseitem) will be transferred. +- After rejecting this RequestItem, a [RejectResponseItem]({% link _docs_integrate/data-model-overview.md %}#rejectresponseitem) will be transferred. +- In case of an error, an [ErrorResponseItem]({% link _docs_integrate/data-model-overview.md %}#errorresponseitem) will be transferred. + +#### ShareCredentialOfferRequestItem + +If you want to issue a [VerifiableCredential]({% link _docs_integrate/attribute-values.md %}#verifiablecredential) via a Request, this is done with the [ShareCredentialOfferRequestItem]({% link _docs_integrate/data-model-overview.md %}#sharecredentialofferrequestitem). +All details on how to use the ShareAttributeRequestItem and examples of use cases for it can be found in the [Share Attributes with peer]({% link _docs_integrate/share-attributes-with-peer.md %}) guide. + +Depending on whether the ShareCredentialOfferRequestItem is to be accepted or rejected, its Recipient has different parameters to choose from for responding to it: + +- To accept this RequestItem, the [AcceptRequestItemParameters]({% link _docs_integrate/data-model-overview.md %}#acceptrequestitemparameters) can be utilized. +- To reject this RequestItem, the [RejectRequestItemParameters]({% link _docs_integrate/data-model-overview.md %}#rejectrequestitemparameters) can be utilized. + +After the Recipient has responded to the ShareCredentialOfferRequestItem, a suitable [ResponseItem]({% link _docs_integrate/data-model-overview.md %}#responseitems) is generated and transferred to the Sender of the Request: + +- After accepting this RequestItem, an [AcceptResponseItem]({% link _docs_integrate/data-model-overview.md %}#acceptresponseitem) will be transferred. +- After rejecting this RequestItem, a [RejectResponseItem]({% link _docs_integrate/data-model-overview.md %}#rejectresponseitem) will be transferred. +- In case of an error, an [ErrorResponseItem]({% link _docs_integrate/data-model-overview.md %}#errorresponseitem) will be transferred. + #### TransferFileOwnershipRequestItem If you want to transfer the ownership of a [File]({% link _docs_integrate/data-model-overview.md %}#file), this is done with the [TransferFileOwnershipRequestItem]({% link _docs_integrate/data-model-overview.md %}#transferfileownershiprequestitem).