Axiom Stack

Axiom Stack · Getting started

Five minutes from zero to verified attestation

The end-to-end agent integration arc — Bearer key path → first attestation → wallet claim → x402 flow → AP2 envelope. Each step is independently useful; the full path takes about 5 minutes if you already have a Solana wallet.

Step 1

Get an API key

Self-serve signup is closed during the private beta. Request access and we'll provision your axm_live_… key directly. Treat it like a password and set it as an env var:

export AXIOM_API_KEY="axm_live_…"

Existing customers manage keys in the dashboard. Free tier: 10 attestations/month; higher quota + audit-tier access on upgrade.

Step 2

Smoke-test the API

No auth needed for /health. Confirms DNS, certificates, and the routing layer:

curl https://api.axiomstack.dev/v1/health

Step 3

First attestation (Bearer)

Ask for an equity instant attestation. Returns {data, meta} with attestation_pda (the on-chain record) and write_tx_sig in under 2 seconds.

curl -X POST https://api.axiomstack.dev/v1/attestation/instant \
  -H "Authorization: Bearer $AXIOM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"asset_class": 2, "asset_id": "AAPL"}'

Verify the PDA independently: Solana Explorer (devnet).

Step 4

x402 — wallet-claim path

Skip the API key entirely. Agents with a Solana wallet can pay per call in USDC; the facilitator covers gas. Useful when an agent is roaming or you don't want to provision Bearer credentials per agent.

# Same endpoint, no API key — the server responds 402 with the
# accepts list. Sign a Solana transferChecked with the facilitator as
# fee payer, base64-encode the payload, resend with the header.

curl -X POST https://api.axiomstack.dev/v1/attestation/instant \
  -H "Content-Type: application/json" \
  -H "PAYMENT-SIGNATURE: <base64(PaymentPayload)>" \
  -d '{"asset_class": 6, "asset_id": "BTC"}'

Full protocol details: Payment Factory → x402.

Step 5

AP2 — mandate passthrough

For agent-commerce flows that need authorization trail + audit. Capture an AP2 mandate envelope on the same call; charge happens via Bearer quota.

curl -X POST https://api.axiomstack.dev/v1/attestation/instant \
  -H "Authorization: Bearer $AXIOM_API_KEY" \
  -H "X-AP2-Mandate: <base64(MandateEnvelope)>" \
  -H "Content-Type: application/json" \
  -d '{"asset_class": 2, "asset_id": "AAPL"}'

Captured mandates appear in the dashboard with full envelope provenance.

Where to next