Standalone Docker quickstart
Run Key0 as a standalone service in Docker. It handles agent discovery, payment verification, and credential issuance — your existing API only needs to expose a single token-issuing endpoint.- Setup UI
- Environment Variables
Option A: Setup UI (zero-config start)
Start the container with no configuration. The Setup UI walks you through everything visually.Start the container
The
full profile starts Key0 with managed Redis and Postgres — batteries included.Open the Setup UI
Navigate to http://localhost:3000. On first launch, you are redirected to
/setup.The Setup UI lets you configure:- Wallet address — the USDC-receiving address on Base
- Network — mainnet or Base Sepolia testnet
- Pricing plans — plan IDs, amounts, and descriptions
- Token issuance API — the URL Key0 calls after payment to fetch credentials
- Settlement and refund settings
Docker Compose profiles
Choose a profile based on what managed infrastructure you need:| Profile | What starts |
|---|---|
| (none) | Key0 only — bring your own Redis + Postgres via env vars |
--profile redis | Key0 + managed Redis |
--profile postgres | Key0 + managed Postgres (still needs Redis externally) |
--profile full | Key0 + managed Redis + managed Postgres (batteries included) |
ISSUE_TOKEN_API contract
After Key0 verifies an on-chain USDC payment, it POSTs to yourISSUE_TOKEN_API endpoint with the payment details:
Request body
If your
ISSUE_TOKEN_API endpoint returns an error or is unreachable, Key0 automatically initiates an on-chain refund to the paying agent. See Automatic Refunds for details.Test it
Once the container is running, verify the setup:Check the agent card
Request access to a plan
Docker image tags
| Tag | When to use |
|---|---|
latest | Latest stable release |
1.2.3 / 1.2 / 1 | Specific version pinning for production |
canary | Latest main branch build (for testing) |

