Authentication
Read-only endpoints are open. Paid analysis is settled one of three ways: from a funded account balance, through the x402 payment protocol, or — for quick experiments — the CLI's free tier.
Account balance billing
The web app and dashboard run on a prepaid USD balance. You sign in (email code, Google, or wallet signature), top up your balance, and each analysis is debited at a fixed price:
| Check type | Price |
|---|---|
| Quick check | $0.10 |
| Standard report | $1.00 |
| Deep dive | $5.00 |
| Batch | per-item price, −25% |
Top-ups are processed via OxaPay (crypto) or Stripe (card). Manage your balance from the dashboard. See Pricing for details.
x402 payment flow
For programmatic, account-less payments, CSDS supports x402 — pay per call in USDC on Base, no account needed (available when enabled on the deployment). The flow is:
- Send the request with no auth.
- Receive
402 Payment Requiredwith anx402block (the amount andpay_to). - Send that USDC amount on Base to
pay_tofrom any wallet. - Retry the request with the transaction hash in the
X-PAYMENTheader. - The API verifies the transfer on-chain and returns the result.
A 402 body looks like this:
{
"code": "payment_required",
"x402": {
"network": "base-mainnet",
"asset": "USDC",
"amount": "0.10",
"amount_units": "100000",
"pay_to": "0xRecipient…"
}
}
Each payment transaction is single-use. This is a transfer-and-verify flow (not EIP-3009), so send the USDC with any wallet — see the x402 guide and payment troubleshooting.
API keys
API keys are how you call the API programmatically. Each key belongs to your account, and every call is billed against your account balance — just like the web app.
- Create a key from your dashboard. It's shown once — store it securely.
- Send it on every request to a
/api/v1/*endpoint, using either header:
Authorization: Bearer csds_live_…
# or
X-API-Key: csds_live_…
Each call debits your balance at the listed price. A missing or invalid key returns 401; an empty balance returns 402. Revoke a key anytime from the dashboard.
401 — there is no un-billed access.CLI free tier
The csds CLI grants 3 free lifetime quick checks to unauthenticated users, tracked locally. Standard reports and deep dives always require funding. Configure a key with csds config set api-key … (or the CSDS_API_KEY env var). See the CLI reference.