Utilities
Check if the endpoint is healthy and well
Successful response
Authorization not provided
Insufficient access
Internal server error
GET /api/health-check HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
textIssues and verifies a test credential + presentation with the service keypair, proving the full DIDKit crypto path (plugin load, signing, and the runtime delegation inside the native plugin) works. Reports which DIDKit engine loaded. Added after the 2026-07-02 incidents, where shallow health checks stayed green while DIDKit paths were broken.
Successful response
Authorization not provided
Insufficient access
Internal server error
GET /api/health-check/deep HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"healthy": true,
"version": "text",
"didkitEngine": "native",
"did": "text",
"vpVerified": true,
"verificationErrors": [
"text"
],
"ms": 1
}Returns the account's saved BCP-47 locale preference for this email, or null when no preference is set or no account exists. Returning null (rather than defaulting to 'en') lets the caller fall back to its own signal (e.g. the client UI locale) before English. Never reveals whether an account exists — a missing account and an account with no saved locale both return null — so it is safe to call before authentication (e.g. to localize a login-code email). Rate limited to 10 lookups per email per hour (plus a broad per-IP circuit breaker); callers should treat any error as an unresolved locale and fall back, never as a failure.
^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$Successful response
Invalid input data
Authorization not provided
Insufficient access
Internal server error
POST /api/utilities/resolve-email-locale HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 26
{
"email": "name@gmail.com"
}{
"locale": "text"
}Generates an arbitrary number of valid challenges for a did, then returns them
100Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
GET /api/challenges HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
"text"
]Gets the did:web for the LCN itself
Successful response
Authorization not provided
Insufficient access
Internal server error
GET /api/did HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
textLast updated
Was this helpful?