A demo application which serves as both and Issuer and Verifier. It is an interactive technical walkthrough that explains how the Unum ID platform works.
Information about the Unum ID demo ecosystem can be found in our documentation.
- represents a Customer that has already been created in the SaaS
- Create a Company by posting to
/company
{
name: string; // customer/company name
unumIdApiKey: string; // the customer Api Key
unumIdCustomerUuid: string; // customer uuid
}
POST /holderApp
calls the SaaS api to create a HolderApp
{
uriScheme: string;
apiKey: string; // the Holder Api Key to create the HolderApp
name: string;
companyUuid: string; // company corresponding to the Customer the HolderApp belongs to
}
POST /credenial
calls the Issuer Server App to issue a Credential
{
userUuid: string; // user corresponding to the Subject of the Credential
issuerUuid: string; // issuer to issue the Credential as
claims: { [key: string]: any }; // Credential data
type: string; // Credential type
}
POST /issuer
calls the Issuer Server App to register an Issuer
{
name: string;
issuerApiKey: string; // Issuer Api Key to register the Issuer
companyUuid: string; // company corresponding to the Customer to create the Issuer as
}
POST /presentationRequest
calls the Verifier Server App to send a PresentationRequest
{
verifierUuid: string; // verifier to send the request as
issuerUuid: string; // issuer to request credentials from
credentialTypes: string[]; // credential types to request
holderAppUuid: string; // HolderApp to send request to
}
POST /presentation
verifies a Presentation or NoPresentation
Presentation
{
'@context': ['https://www.w3.org/2018/credentials/v1'],
verifiableCredential: Credential[];
uuid: string;
type: ['VerifiablePresentation'];
proof: Proof;
presentationRequestUuid: string;
}
NoPresentation
{
presentationRequestUuid: string;
holder: string;
proof: Proof;
type: ['NoPresentation']
}
- Represents a Subject that has already been created in the SaaS
- create a User by POSTing to
/user
{
did: string; // the Subject did
name: string; // whatever name you want
companyUuid: string; // Company corresponding to the Customer the Subject belongs to
}
POST /verifier
calls the Verifier Server App to register a Verifier
{
name: string;
companyUuid: string; // Company corresponding to the Customer registering the Verifier
verifierApiKey: string; // Verifier Api Key to register the Verifier
url: string; // url to post Presentations to for this Verifier (/presentation endpoint)
}
Just merging changes to main
will trigger automated deployments to dev.
To release version of this project to sandbox push a tag with a preceding v
. This will trigger an automated deployment to sandbox.