Lifecycle Stages
| Stage | Meaning | Where |
|---|---|---|
| Flow starts | Verification is launched | Hosted verify, SDK, or API |
| Request accepted | NEUS accepts the verification | SDK or POST /api/v1/verification |
| Processing | An async verifier is still running | Status endpoint or SDK polling |
| Complete | The proof receipt is ready | SDK result, widget callback, or status endpoint |
| Reused | Another product check uses the saved proof receipt | Proof page, gate check, policy, MCP |
| Revoked or stale | The proof no longer meets the target policy | Revocation route or freshness rule |
Reuse Strategy
| Strategy | What it does | Use when |
|---|---|---|
reuse-or-create | Reuse an existing eligible proof, otherwise create one | Default in most hosted and SDK flows |
reuse | Only check existing proofs | Read-only access checks |
fresh | Always force new verification | High-stakes actions |
Freshness Guidance
- Use a recency window for point-in-time verifiers such as balances, risk, and ownership.
- Treat status checks as cheap reads; only create new proofs when policy actually demands a fresh assertion.
- Prefer
sinceorsinceDaysin gate checks instead of re-verifying on every request.
Revocation
If a user needs to invalidate a proof they own, use the self-revocation flow:proofId in SDK responses.
In the JavaScript SDK:
Related
How Verification Works
Requests, signer strings, and hosted interaction.
Receipts & Results
Proof receipt structure and field semantics.
Verifier Catalog
Verifier pages and use cases.
API Overview
HTTP endpoints.