This document goes through the json objects (VerifiablePresentations and VerifiableCredentials) that are being generated by this agent. For a more detailed description of cli commands, you can see the README file of gx-client-cli module. We have described the following objects/methods for just one version v1.2.8. Support for previous versions such as v2210 and v2206 has been removed in this version because they are no longer supported by gaia-x development branch. In each section you'll get the complete flow from a creating an unsigned credential to onboarding a ServiceOffering.
You can create v1.2.8 examples by passing -v v1.2.8
(currently we only support v1.2.8) to both participant and service-offering example creation methods (since this is supported by default you can create these objects without passing the version). But for the service-offerings you also need a type parameter (-t
). You can choose this type param from a various types that gx suggests:
- DcatDataService
- DcatDataset You can create the examples via the agent with following commands:
gx-agent participant sd example
gx-dev so sd example
after this creating a participant example (and changing the content of the json file according to your own info) you can submit it. If you want a more detailed view of the objects created you can use -s
flag.
First we wrap the Participant SD into a VerifiablePresentation object:
{
"id": "urn:uuid:0646c9c1-1aeb-47a8-ae50-964f4f4a2c49",
"type": [
"VerifiablePresentation"
],
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"verifiableCredential": [
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "urn:uuid:554db947-e001-431c-ae55-22a781e1f928",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T18:03:00.887Z",
"credentialSubject": {
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"type": "gx:LegalParticipant",
"gx:legalName": "Gaia-X European Association for Data and Cloud AISBL",
"gx:legalRegistrationNumber": {
"gx:vatID": "BE0762747721"
},
"gx:headquarterAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx:legalAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx-terms-and-conditions:gaiaxTermsAndConditions": "70c1d713215f95191a11d38fe2341faed27d19e083917bc8732ca4fea4976700"
},
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:05:10Z",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..fqGrFQqR2LrwQ3j2IC5QPZAHsTNIcfDDe8AjgGOzvY5yOKCj4VDE0rSpb70dQIwoGKJEDEQFUQnEXXlKDZSD79EmSDdJJTpTJJ4xlAS8kXHc6jEgq0gYKkKY7eTUQUhuHrCGFEJ-I-KTJLut3czcdzsRsBITqDbazrEoFOvgKv_C6XzOYIMWxxcczRtGFkKm8c-lIHayABnfHV9ES6PsfwNBuGC5HcsCY0lUZ9h4PMMYC60p-sspCxKLzpILfpcGLV-D73JGrvLycdW7zYNW_M5IQ0gOhaebw_oNSfSdaX08QZ9fAQhXLg3QzX4qIvLzsQVVmn1XFbXdiye574x89w"
}
}
],
"holder": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:11:18Z",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..ajIrnlKpK8e6OK6Sdno5FO1Ui0tO8Kv2vE8n-fmTuWr4EXoz-kclg8PgWOtps660hYdoFNk9CyXgbyzZKZop6rRtT176N8FbyMXj7ZhrVVNmw1laNAzof3R09_DHDBpS-6IERIAd1UnOXu3srny8162OFUcy0sJZ6qmOQvkDhmOB9R1dtj7nZ_IOI2Ty2D2BDLGysmOuiWBWigq1E9LvEY2bRNVvqpn6zFXMyf8C6IosojmfeZtNQPrGTQyrnfVH5FGfRszYxZObM4VK-mJhqffB8fy4YZQ_i8_YEqGCtlLvnjGHO8Eq4tnhLRnMVzj_F8L7iKCQ9UZ6TUaGWpzDdA"
}
}
then we're sending the VerifiablePresentation to the gx-compliance to get a compliance credential (with type ParticipantCredential):
{
"verifiableCredential": {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu//development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app/credential-offers/fdbda79b-1762-48d6-86d7-b733df86c6d0",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T16:11:20.751Z",
"expirationDate": "2023-08-27T16:11:20.751Z",
"credentialSubject": [
{
"type": "gx:compliance",
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"integrity": "sha256-5499025b7129f5be6d703dd996dcd104b496752b1009d37203a061303534cf07"
}
],
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:11:21.308Z",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..EzXGJ24dY-y9MVFwxRsIFRpRuNvIyUVQ_PJ160W-QvOVK5xNddqMfjhdir4CQa-sRrzLK6gPigVTLMguSImjMcrcAVW6i-SODzOQU3GWVVPoT_HcTw-KGaYErdfDx4y79Pk_F1u4rQquul3cpfJENlqrsolyBrUQ4RsS53Jq6AiNUJyuoC0FqG6sRbREQT5hCYblvu16UyOBc_tnVPuIM9-F0jQhgY3jwKdBIfbYUF-PvfZRRQP2Pml1KNFFHVcbRZ9oeG9I4It3muY3FeBRtWwYeq7Ok_ZLwFnoLjKvKM0QarQbI6RIdi2iTYwS24oKxyjfzv9MLtU_db8l1Sp16g",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA"
}
},
"hash": "def4eee90d7941c16f59f01abfbfa5d327e20f2c8d0542e2aaa1c6b7b07ff1d48c1ac8a486ae2777dca56e5b5ff5dcd6ec8060311dda9daf95b26af9ef03646b"
}
this VerifiableCredential is saved in your agent and you can access it with the hash value that you can see in the bottom of previous json. then we can onboard this Participant on an ecosystem. For this to happen we need to wrap both our VerifiableCredentials inside a VerifiablePresentation object. This step can be added up with service-offering onboarding step into an ecosystem:
{
"id": "urn:uuid:663b5cfd-0f3c-422c-af06-930c4b7dffb5",
"type": [
"VerifiablePresentation"
],
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"verifiableCredential": [
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://gaia-x.eu/.well-known/service1.json",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T18:25:13.934Z",
"credentialSubject": {
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"type": "gx:ServiceOffering",
"gx:providedBy": {
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app"
},
"gx:policy": "",
"gx:termsAndConditions": {
"gx:URL": "http://termsandconds.com",
"gx:hash": "d8402a23de560f5ab34b22d1a142feb9e13b3143"
},
"gx:dataAccountExport": {
"gx:requestType": "API",
"gx:accessType": "digital",
"gx:formatType": "application/json"
}
},
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:41:27Z",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..mxbytXXVBjB1Ic0zgPq9MeG1Ir7RR53j7d_y5axjQEUqJyoflVP4ZLR636nahy1OtBbKJYfeLnklqw998hKHgxf0aOa1ZLUAt8crH60R_oDJ2Xd-hLMqgKaWlFqYYt3yy0sNMCEwNLkV_fZ--cmR6Se0DUM_Gvlzu2UTH20LKpxyGeIhLkP7SrLDtljqA79xUZJXiaXUnd2SGu7fwy96DrRU4jqh_Zwz6Y_4OxGHWNmxBzY1lzEjb9Q2gYW_5_7-X7L6xJuN54-UG0YzqJTHFakP_R8K3bmPSNnSkKOqFsdynj_7pNCzIGKn4UhO4F2nIki6Ul0eKBwNQX4cFTwofQ"
}
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu//development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app/credential-offers/f6888e32-e2d0-4271-b347-cf25aa0547a4",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T16:23:22.381Z",
"expirationDate": "2023-08-27T16:23:22.381Z",
"credentialSubject": [
{
"type": "gx:compliance",
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"integrity": "sha256-5499025b7129f5be6d703dd996dcd104b496752b1009d37203a061303534cf07"
}
],
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:23:23.023Z",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..k7b91HkES_rns90MbFJHng8lSiiSslAQaHcSgiOLDIW-02bPt9vz4dX-_UvaZHuUEMYZR-SFV3K1KQsvvCm4sTYiugDbnVjJk_6uctf5ALCw_OyU_RRXlImQf3rnJn-P8wPBZlHoGHxS8cFArbJBBZuRuDcTVrJ7I_hNt5anIv3acXaUwRdGSceb9akdW8uCCQhTGr1eL1GhUSCiDyS-_1YCNzA66VuK40cjH_AB2KerQ7g-igscpKaOd044TFHkBaYiITRU-t5pmRvLobWpH-zVmJoVgEMnHcruIXnTV4DWWkiWsviUOoDy2fRPr6M6uWUPTFF8Fb17wmKK1wJ0bw",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA"
}
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "urn:uuid:554db947-e001-431c-ae55-22a781e1f928",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T18:03:00.887Z",
"credentialSubject": {
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"type": "gx:LegalParticipant",
"gx:legalName": "Gaia-X European Association for Data and Cloud AISBL",
"gx:legalRegistrationNumber": {
"gx:vatID": "BE0762747721"
},
"gx:headquarterAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx:legalAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx-terms-and-conditions:gaiaxTermsAndConditions": "70c1d713215f95191a11d38fe2341faed27d19e083917bc8732ca4fea4976700"
},
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:05:10Z",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..fqGrFQqR2LrwQ3j2IC5QPZAHsTNIcfDDe8AjgGOzvY5yOKCj4VDE0rSpb70dQIwoGKJEDEQFUQnEXXlKDZSD79EmSDdJJTpTJJ4xlAS8kXHc6jEgq0gYKkKY7eTUQUhuHrCGFEJ-I-KTJLut3czcdzsRsBITqDbazrEoFOvgKv_C6XzOYIMWxxcczRtGFkKm8c-lIHayABnfHV9ES6PsfwNBuGC5HcsCY0lUZ9h4PMMYC60p-sspCxKLzpILfpcGLV-D73JGrvLycdW7zYNW_M5IQ0gOhaebw_oNSfSdaX08QZ9fAQhXLg3QzX4qIvLzsQVVmn1XFbXdiye574x89w"
}
}
],
"holder": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:41:28Z",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..XJfE3snB8O42kPs8JlO2lHnLddg-sCCrhy47FWjCh8W36LZobfwq-WMbA4WAM-XgAAd-Ih6HRPEULA09bw5y_th1aYFYmk9m6rpPh4qFu4GgSBxOtPE5upx_VHy1P7Zt4zFTHhCJ-jhAJhqKt237qm3vf983z2t_g9cHvZg-_Mmpr5eHUxRH3wcw96KeEN66myaWN50D1rcNNZulKf0oh3f0lXnT2IvCwi_5nOD6x8AEAPhJZRGdKtPS2NHmx6XNVqYZ9_wjmJr-d7X13a4gSPPCkXhyZuK1fCN0677tb7Rv6uC_5HXrymOOxNY8pUSjXjAWXQnDc2MxgXGs4vlcog"
}
}
After this step, you will get a compliance credential from your selected ecosystem with one credentialSubject per VerifiableCredential in your presented VerifiablePresentation:
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu//development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app/credential-offers/9d3fff80-77aa-4fb2-bb89-e3087dad6e8d",
"issuer": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"issuanceDate": "2023-05-29T16:41:31.249Z",
"expirationDate": "2023-08-27T16:41:31.249Z",
"credentialSubject": [
{
"type": "gx:compliance",
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"integrity": "sha256-63654ebabb07e0b7e3cb35cb5541ab23694902d605f1074710529232c34cb40b"
},
{
"type": "gx:compliance",
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"integrity": "sha256-50f03169e6bd5995bddf50291b64e46e82dac34e44144dc0b936475d36852d9e"
},
{
"type": "gx:compliance",
"id": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app",
"integrity": "sha256-5499025b7129f5be6d703dd996dcd104b496752b1009d37203a061303534cf07"
}
],
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-29T16:41:31.790Z",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..aALKm_ZcN_yKAdd0Q6wPXKWKCSmsILsavTBswzkndRWOZVPMjOFu9gs7Tr_tCsiuy_ssZt7YmkPtyzoxbKk79WfWoWD8WJe1wWmjeS3Tbb6nfvkCDlm36yfZ18yXL-YPz7NFdbyKi3a5MKhzuxiXQf20mkHXOiMywgeO15K_YtKXA_74E17tJEyC3binyLDifzo6AnRSmAfGkmZEW3393d1KKtgcN9dHav0i4hOOH5DwCpNbFhz0hRxxt2OZCRBUWSnUQoD7_F_nMsX4kOMYPzQRG4wFRvfriOU38EIpX6XaxzyCj1Jehd8ra3WdMYJPVlEBDKoDc4OrBSGGQ34tXw",
"verificationMethod": "did:web:164e-2001-1c04-2b10-ee00-e375-2d7a-ffc3-9904.ngrok-free.app#JWK2020-RSA"
}
}
Later on, you can create a VerifiablePresentation with all the Credentials you have and present it to other parties: (Complete ServiceOffering VerifiablePresentation example):
{
"id": "urn:uuid:4ebf3897-4987-4de7-8d99-59d1faf2a846",
"type": [
"VerifiablePresentation"
],
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"verifiableCredential": [
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "urn:uuid:554db947-e001-431c-ae55-22a781e1f928",
"issuer": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"issuanceDate": "2023-05-26T14:12:00.887Z",
"credentialSubject": {
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"type": "gx:LegalParticipant",
"gx:legalName": "Gaia-X European Association for Data and Cloud AISBL",
"gx:legalRegistrationNumber": {
"gx:vatID": "BE0762747721"
},
"gx:headquarterAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx:legalAddress": {
"gx:countrySubdivisionCode": "BE-BRU"
},
"gx-terms-and-conditions:gaiaxTermsAndConditions": "70c1d713215f95191a11d38fe2341faed27d19e083917bc8732ca4fea4976700"
},
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-31T13:44:01Z",
"verificationMethod": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..NDJXn8BeObxuDQ8q_3jztdqKm2RCQMUdyVAx4cv1GN3hREr9KIKprQPV3enfhHsMxDeTo80O3UNLblTYNlj36NIsI-7QDeYb72wU5xi-NsJuKIQKBqc2XcptLWYZEInunu8R6E8LwYLa0i9Pxzcs-oYxaoOjSTm3F4XcAuWGD5mH8i1P9NywZ3bl7no62eIM7X0TcJ1k43K-mJdxGbClro4JXrlgSbYzJSBViK9SrbzIOYVvMS1fjDuxTmgR9A6ZzAfRZBciIB3e-GYAv8gT2U5qxTKPpGCnFBIPL4bt8oQQcQYJT92JoKbD2sJQa2BiHKtMflCEfZrcBx3fswFzdw"
}
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu/development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://gaia-x.eu/.well-known/service1.json",
"issuer": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"issuanceDate": "2023-05-27T22:25:13.934Z",
"credentialSubject": {
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"type": "gx:ServiceOffering",
"gx:providedBy": {
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app"
},
"gx:policy": "",
"gx:termsAndConditions": {
"gx:URL": "http://termsandconds.com",
"gx:hash": "d8402a23de560f5ab34b22d1a142feb9e13b3143"
},
"gx:dataAccountExport": {
"gx:requestType": "API",
"gx:accessType": "digital",
"gx:formatType": "application/json"
}
},
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-31T14:09:57Z",
"verificationMethod": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..s2WeweImLTXxPMwcz4zmMEh2op8aG6L9KEDrc6XJsApX9ahifGOM7pCfYVT5cjUTk1a8Lq6Sjw01_BaCVkIaupCt6flmNA2gSgvGwsBuxFXMT9Z54XO2qfiti9mR_3PqR_CfeImG_8EaE3qqm1V5vWCx75mrKPg74TUsLacWr2hs1sc-7IXRnHVgSETkuH7L6dM_g2IdGSDoI3c6otR_QkJZ79v87e7ultw8QgohSUjfPHRXWlK6cFxxlMRSnUBCYOGBHRph5V3SAgu_tCkNiYM4nWRSlCzeLE9iQGWTvS_9OfI7iTmOlqEZUIvIktNsvUt6hsXJERphp76AMtkK1w"
}
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu//development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app/credential-offers/2f6e7133-a791-4f36-8660-186c5f3ad23f",
"issuer": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"issuanceDate": "2023-05-31T14:07:34.999Z",
"expirationDate": "2023-08-29T14:07:34.999Z",
"credentialSubject": [
{
"type": "gx:compliance",
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"integrity": "sha256-11fb3ded1ce29b06c5ad15f2bcc8bf1eac41973e70289bf41600aeb1dffe5356"
}
],
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-31T14:07:35.629Z",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..Vd0183MVQAjghTPMn0qeCdXwv9VlqV0Rk61vgY53kMeRYsU8x_NdvXuBTp2vms3Ema7w_5vE07yISfhPdWtIqiY7vAU-ZjnNF-X6k9DnSZGR909yufhurj-Cdrn8mPLPrGYMokztebO3X6xbMyYN7x-vxOqtCM4is99nzQ5A10NCamasB7jKcrgQg623DrRHHxiudytihEuyksYQdywV3Qf6TE13a1uL-8TigoPzs6UlOQoULVZ3Ybkv6b1WRKh8DWDPi-XWBP2zHBJfr62R4s7Xk91_QW8okQQ-aRXFTJqj1GjaYGA3kTTLtNlSc_M-n8IbOn6KUzD59DEUBuyCHQ",
"verificationMethod": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app#JWK2020-RSA"
}
},
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://registry.lab.gaia-x.eu//development/api/trusted-shape-registry/v1/shapes/jsonld/trustframework#"
],
"type": [
"VerifiableCredential"
],
"id": "https://4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app/credential-offers/67645d91-6bb5-4661-a6d1-2d36dce30172",
"issuer": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"issuanceDate": "2023-05-31T14:10:01.794Z",
"expirationDate": "2023-08-29T14:10:01.794Z",
"credentialSubject": [
{
"type": "gx:compliance",
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"integrity": "sha256-d03feb54fedcb3ed0411f723bdd8b19e928d742a49f4c7ca109979e08ac83974"
},
{
"type": "gx:compliance",
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"integrity": "sha256-198332fad39100e726dcc94bd1c68dfbee2db02befc12c92e35e7648b4399336"
},
{
"type": "gx:compliance",
"id": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"integrity": "sha256-11fb3ded1ce29b06c5ad15f2bcc8bf1eac41973e70289bf41600aeb1dffe5356"
}
],
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-05-31T14:10:02.314Z",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..AbRrpo2qbgaCS6HAykU6PACi37iFxlviyu2hxrfhhjhvmz7sItIPFMQc_fj-qGyXD6Zr_LoA2aR5kFE2w4zgu0oEP8Mmudf4fTKzl-3vPNY9lfEUf9tLg_LxLzivs24C2Vz4y2--r2BkNeeXTJ7_pnlBWuDoVPNm3gcrfcT69VcLWmZpErOqhbHTmqafoklr4iGOs7ehU9TGxXS7JptGglAZ_caBVfHvIQQi1MP31mQeIJk7U_t7KohW4Y5ZQKjBL36OL2OqPprZhBEcouOGqI82fRKxAdq22AIjFkgarg9QavwLlq1F_F0qxshpR_QGBE55LV9uU6NJ877Is2sa_w",
"verificationMethod": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app#JWK2020-RSA"
}
}
],
"holder": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app",
"proof": {
"type": "JsonWebSignature2020",
"created": "2023-06-01T08:47:10Z",
"verificationMethod": "did:web:4c30-2001-1c04-2b10-ee00-e7d5-abed-7e72-9d92.ngrok-free.app#JWK2020-RSA",
"proofPurpose": "assertionMethod",
"jws": "eyJhbGciOiJQUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..h-rEB7ZPqRCh4Pb9eXK7iX4PEtwF9GdHlrrMR6JSnybVMsxnKcN5tBgqJx33dSIXyPtPSciA2rcp2d7qyQ_tr60oD2dMwu2xnYqgRL67iIkGfg8jIRpunjrZG2PQXPK61ziZvGo4HwuVztY5bwZAqtGTKRs7dWona3U7q2uGsELHojFoHIHfR_j0RPSxLWh8ek_8ZNE13aNVR9QvPwUcxEJ9OGhifhO6XVwwFUDtNtgbGqIU4mwdSC6DU2h6yUsYSK2pu7SRj7qrq4cDbp70OAuLwV8Sywg5IqxuJKKlJZq5YJy_7hgBSvr3RcqeY8BSFr7-H2QGg2n9HuWRIKuwNg"
}
}