Skip to main content

Errors

All errors follow a consistent structure.

Error Response

{
  "success": false,
  "error": {
    "code": "ERROR_CODE",
    "message": "Human-readable message",
    "type": "error_type"
  },
  "requestId": "req_..."
}

Common Error Codes

CodeTypeDescription
INVALID_SIGNATUREauthSignature verification failed
EXPIRED_SIGNATUREauthSignature timestamp outside freshness window
INVALID_WALLETvalidationWallet address format invalid
VERIFIER_NOT_FOUNDvalidationRequested verifier does not exist
VERIFICATION_FAILEDverificationVerification check failed
PROOF_NOT_FOUNDnot_foundProof ID does not exist
UNAUTHORIZEDauthNot authorized for this action
RATE_LIMITEDrate_limitToo many requests

HTTP Status Codes

StatusMeaning
200Success
202Accepted (async processing)
400Bad request
401Unauthorized
403Forbidden
404Not found
429Rate limited
500Server error

Handling Errors

try {
  const result = await client.verify({ ... });
} catch (error) {
  if (error.code === 'VERIFICATION_FAILED') {
    // Handle verification failure
  }
  console.error(error.message);
}