Skip to main content
Recovery guide for polling, hosted flows, private proof reads, and verifier failures.

Common Failure Classes

Failure classWhere it appearsRecovery
Validation errorLocal SDK usageFix the request shape before retrying
Hosted interactive handoffInteractive verifier in a custom flowRedirect to hosted verify or use VerifyGate
Async processingProof not finished yetPoll status with backoff
Private proof auth requiredOwner-only readsRe-authenticate the owner and retry
Temporary errorsLogin / sessionRespect Retry-After and let the user retry

Polling Example

const final = await client.pollProofStatus(proofId, {
  interval: 3000,
  timeout: 60000
});

Private Proof Read Example

const privateData = await client.getPrivateProof(proofId, window.ethereum);

Recommendations

  • Do not spam verification creation on ambiguous failures.
  • Keep proof receipt IDs so you can resume polling or display the proof later.
  • Show interactive verifier requirements clearly; do not hide hosted handoffs behind generic error copy.