๐ŸŽฒ RANDOM ORACLE

On-Chain Verifiable RNG โ€” Base Chain โ€” x402 Payments

// CONTRACT

Every random number is backed by an on-chain transaction you can verify.

Address
0x4d2f471ae67b129bAda9cfC6224f0343c5C8fB5D
Chain
Base (8453)
Verified
Sourcify โœ…
Access
onlyOwner (locked to API server)
Entropy
blockhash + prevrandao + sender + nonce

// PRICING

Pay-per-call via x402 micropayments โ€” USDC on Base. No API keys. No accounts.

Basic
$0.05
per call ยท USDC
/random/number
/random/coin
/random/dice
Premium
$0.25
per call ยท USDC
/random/sequence
/random/shuffle

// HOW IT WORKS

From request to verifiable randomness in seconds.

01
Request โ€” Your agent or client sends a GET request to any endpoint. No API keys needed.
02
Pay โ€” Server responds with HTTP 402. Your x402 client automatically pays in USDC on Base.
03
Generate โ€” We call random() on-chain. We sponsor the gas โ€” you just pay the API fee.
04
Verify โ€” Response includes the tx hash. Check it on Basescan โ€” the randomness is real.

// THE THESIS

Why on-chain randomness matters โ€” and how ours actually works.

// API REFERENCE

Five endpoints. All return verifiable proofs.

GET ยท BASIC $0.05
/random/number?min=1&max=100
Generate a bounded random integer.
ParamDefaultRange
min1-1B to 1B
max10-1B to 1B
GET ยท BASIC $0.05
/random/coin
Flip a coin. Returns "heads" or "tails".
GET ยท BASIC $0.05
/random/dice?sides=20&count=3
Roll dice with configurable sides and count.
ParamDefaultRange
sides62โ€“1,000
count21โ€“100
GET ยท PREMIUM $0.25
/random/sequence?count=6&min=1&max=49
Generate multiple random numbers from a single on-chain seed.
ParamDefaultRange
count51โ€“100
min1-1B to 1B
max50-1B to 1B
GET ยท PREMIUM $0.25
/random/shuffle?items=alice,bob,carol,dave
Shuffle a comma-separated list using on-chain randomness.
ParamRequiredDescription
itemsYesComma-separated list (min 2)
GET ยท FREE
/health
Health check โ€” returns contract status, block number, and pricing info.

// RESPONSE FORMAT

Every response includes verifiable on-chain proof.

{
  "result": 7,
  "proof": {
    "txHash": "0x76c38fbb...",
    "blockNumber": 12345678,
    "contract": "0x4d2f471a...",
    "chain": "base",
    "chainId": 8453
  },
  "timestamp": "2026-03-03T22:00:00.000Z"
}

// FEATURES

Why use Random Oracle.

On-chain verifiable entropy
x402 micropayments (no API keys)
Gas sponsored (you just pay the fee)
Proof in every response
Base chain (fast, cheap)
Agent-native REST API
Multiple output formats
100 req/min rate limit

// OPENCLAW SKILL

Drop this into your OpenClaw agent and it can use the Random Oracle natively.

โฌ‡ DOWNLOAD .skill FILE

Install: drop into ~/.openclaw/skills/random-oracle/SKILL.md