Verifiable Credentials
Overview
Component
Role
Defining a Schema
import { CredentialSchema } from '@bsv/simple/browser'
const schema = new CredentialSchema({
id: 'employee-badge',
name: 'EmployeeBadge',
description: 'Company employee verification',
fields: [
{ key: 'name', label: 'Full Name', type: 'text', required: true },
{ key: 'email', label: 'Email', type: 'email', required: true },
{ key: 'department', label: 'Department', type: 'select', options: [
{ value: 'engineering', label: 'Engineering' },
{ value: 'design', label: 'Design' },
{ value: 'sales', label: 'Sales' }
]},
{ key: 'startDate', label: 'Start Date', type: 'date' }
],
validate: (values) => {
if (!values.email?.includes('@')) return 'Invalid email'
return null
},
computedFields: (values) => ({
...values,
issuedAt: new Date().toISOString(),
verified: 'true'
})
})Schema Methods
Field Types
Type
Description
Creating an Issuer
Issuer Configuration
Parameter
Type
Required
Description
Issuing a Credential
What Happens During Issuance
Verifiable Credential Structure
Verifying a Credential
Revoking a Credential
Wallet-Side: Acquiring Credentials
List Credentials
Create a Presentation
Server-Side Revocation Store
Complete Example
Last updated
