R

Random Choice · Random Choice

by Random Choice

POSTBase

$0.001

per call · USD Coin on Base

Choose one item from a list using cryptographically secure server-side randomness. Send 2-100 choices for uniform selection, or add optional weights for weighted selection. Intended for one-off agent tie-breaking and sampling.

Endpoint

POST https://random.preflightstack.com/random-choice

5

Calls / 30d

4

Unique payers / 30d

Aug 30

Last called

exact

Payment scheme

Call this service

TypeScript · @x402/fetch
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.PRIVATE_KEY);
const fetchWithPay = wrapFetchWithPayment(fetch, account);

const res = await fetchWithPay("https://random.preflightstack.com/random-choice", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    "choices": [
      "alpha",
      "beta",
      "gamma"
    ],
    "weights": [
      7,
      2,
      1
    ]
  }),
});
const data = await res.json();
cURL
curl -X POST \
  "https://random.preflightstack.com/random-choice" \
  -H "Content-Type: application/json" \
  -d '{"choices":["alpha","beta","gamma"],"weights":[7,2,1]}' \
  -H "X-PAYMENT: <signed x402 payment>"

Example response

{
  "choice_count": 3,
  "index": 0,
  "request_id": "rc_example",
  "selected": "alpha",
  "selected_weight": 7,
  "service_hint": {
    "id": "random-choice",
    "suitable_for": [
      "random_selection",
      "weighted_selection",
      "tie_breaking",
      "sampling"
    ]
  },
  "total_weight": 10,
  "weighted": true
}

Payment details

Pay to0x9acdadcec881a63508c0f2cd3a4ae61149cc2500
AssetUSD Coin · 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913
NetworksBase
Schemesexact

Is this your API?

Pin it to the top of Games & Fun and the homepage with a featured placement.

Get featured →

More from Random Choice & similar services