Skip to content

Verification SDK

The verification SDK provides server-side credential verification for Node.js applications, using the same Rust core via native bindings.

Terminal window
npm install @baseid/verify
import { createVerifier } from '@baseid/verify';
const verifier = createVerifier();
const result = await verifier.verifyJwt(jwtString);
console.log('Valid:', result.valid);
console.log('Issuer:', result.issuer);
console.log('Claims:', result.claims);

Resolve the issuer’s DID to obtain the public key automatically:

const result = await verifier.verifyWithDidResolution(jwtString);
// Automatically fetches the issuer's DID document
// and extracts the public key for verification
const result = await verifier.verifySdJwt(sdJwtString, nonce);
console.log('Disclosed claims:', result.disclosedClaims);
import express from 'express';
import { verifyMiddleware } from '@baseid/verify';
const app = express();
app.post('/present',
verifyMiddleware({ requiredType: 'UniversityDegree' }),
(req, res) => {
const { claims } = req.verifiedCredential;
res.json({ accepted: true, claims });
}
);
const verifier = createVerifier({
trustedIssuers: ['did:web:university.example.com'],
maxClockSkew: 60, // seconds
checkRevocation: true,
});