AccessVerdict

QUICKSTART

First verification in under 3 minutes.

Create a policy, issue a test key, then ask AccessVerdict whether a wallet should receive an entitlement.

01

Create a project

Open the Console, create a workspace and project, then open that project. Policies and API keys are isolated to the project boundary.

02

Create a policy

For the fastest test choose Wallet allowlist, add one wallet, and give the policy an entitlement such as premium.

ERC-20 minimum balance uses raw smallest-unit values from balanceOf. ERC-721 and ERC-1155 minimums are integer token balances.

03

Issue a test API key

Create a Test key. The plaintext av_test_... value is shown once. Store it in a server-side environment variable; never ship it in browser code.

04

Call /api/v1/verify

curl -X POST https://accessverdict.dev/api/v1/verify \
  -H "Authorization: Bearer av_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "policyId": "pol_YOUR_POLICY_ID",
    "wallet": "0x0000000000000000000000000000000000000001"
  }'

The API key can only verify policies that belong to its own project.

05

Handle allowed, denied, and error separately

Allowed

{
  "status": "allowed",
  "allowed": true,
  "entitlements": ["premium"]
}

Denied

{
  "status": "denied",
  "allowed": false,
  "entitlements": []
}

Verification unavailable

{
  "status": "error",
  "allowed": false,
  "entitlements": [],
  "rules": [{ "outcome": "error", "reason": "verification_error" }]
}

A denied result is a normal policy decision. Infrastructure or invalid-contract verification failures return status: "error", so applications can fail closed without confusing an outage with a denial.

06

Private beta limits

Test: 60 requests/minute and 1,000/day. Live: 300 requests/minute and 25,000/day.

HTTP/1.1 429 Too Many Requests
Retry-After: 21
X-AccessVerdict-RateLimit-Limit: 60
X-AccessVerdict-RateLimit-Remaining: 0
X-AccessVerdict-DailyLimit-Limit: 1000

NEXT

Prove both sides, then integrate.

Run one wallet for allowed and another for denied, then move the same policy into real server code.