Proof Random Free developer demo

Randomness an agent can inspect.

Get the latest drand quicknet beacon as JSON: its round, randomness and signature, with your request nonce. Build and test against a real public source before you pay for anything.

Current status: This is a free relay prototype. It does not verify the BLS signature, derive a nonce-bound random value, offer commit-reveal, or accept x402 payments yet. Don't use it for prizes, money, security decisions or audited draws.

Try the live JSON endpoint ↗
Live now

One GET request

Send a nonce. The response echoes your nonce and the latest public beacon. The nonce does not change the beacon randomness.

curl -sS 'https://proof-random-api.pn-26f.workers.dev/v1/random?nonce=your-unique-id'

Response shape:

{
  "round": 32500975,
  "randomness": "...64 hex digits...",
  "signature": "...hex...",
  "nonce": "your-unique-id",
  "verified": false,
  "x402": false
}

Round above is illustrative; live round changes every few seconds.

JavaScript
const endpoint = 'https://proof-random-api.pn-26f.workers.dev/v1/random';
const url = endpoint + '?nonce=' + encodeURIComponent(crypto.randomUUID());
const beacon = await (await fetch(url)).json();
console.log(beacon.round, beacon.signature, beacon.verified);
Python
import uuid, requests
url = 'https://proof-random-api.pn-26f.workers.dev/v1/random'
data = requests.get(url, params={'nonce': str(uuid.uuid4())}, timeout=10).json()
print(data['round'], data['verified'])
Trust boundary

A signature is not verification

The endpoint relays an HTTPS response from Cloudflare's public drand relay for quicknet chain 52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971. It currently does not check the BLS signature against the pinned public key. For independent verification, use an official drand client with chain verification parameters. An HTTPS response alone is not a cryptographic proof.

Quicknet beacons are shared public inputs. For adversarial fairness you need an agreed future round and a fixed derivation rule before that round is known. Those protections are not implemented here.

For agent builders

Where this goes next

01 Add server-side verification, explicit derivation and repeatable test vectors.
02 Add a paid x402 endpoint on Base, test a real payment, and publish a machine-readable call schema. No paid endpoint exists today.
03 Validate Bazaar discovery and distribution only after a successful settled payment. A listing is not a customer.

No signup, no wallet connection, no user deposits, no stakes. This prototype is separate from any money games.