Store

Create URIs

Description

The Store Control Plane is the interface responsible for storing a Verifiable Credential and returning a URI that resolves to it.

If the LearnCard also implements the Cache Plane, then this Plane will automatically be cached!

Note: In order to use this plane, you will have to choose where to store the Verifiable Credential!

You can get a list of available storage providers using the providers field:

console.log(learnCard.store.providers);
// {
//     Ceramic: {
//       name: 'Ceramic',
//       displayName: 'Ceramic',
//       description: 'Uploads/resolves credentials using the Ceramic Network (https://ceramic.network/)'
//     },
//     LearnCloud: {
//         name: 'LearnCloud',
//         displayName: 'LearnCloud',
//         description: 'LearnCloud Integration'
//     }
// }

The Store Plane implements three methods: upload, (optionally) uploadEncrypted, and (optionally) uploadMany

store.upload

The upload method takes in a Verifiable Credential, stores the credential, and converts it into a resolvable URI.

store.uploadEncrypted

Note: This method is optional

The uploadEncrypted method allows you to encrypt a credential before uploading it, optionally specifying recipients who are allowed to decrypt the resolved credential. This is generally going to be safer, and it is heavily encouraged for Providers to implement this method!

store.uploadMany

Note: This method is optional

The uploadMany method takes in an array of Verifiable Credentials, stores the credentials, and converts them into an array of resolvable URIs.

Example plugins that implement the Store Plane

CeramicLearnCloud

Last updated