# Shuffle a List (Fisher-Yates CSPRNG)

> Shuffle a List (Fisher-Yates CSPRNG) is a paid API for AI agents from flat-rate-llm.kikoribera03.workers.dev, paid per call via x402, $0.0025/call, status unknown (last checked 2026-09-15).

Randomly shuffles a comma-separated list into a uniformly random order using the Fisher-Yates algorithm over a cryptographically secure PRNG.

## Facts

- Endpoint: POST https://flat-rate-llm.kikoribera03.workers.dev/v1/random/shuffle
- Price: $0.0025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/shuffle-a-list-fisher-yates-csprng-7b015b2c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_A07gEXUFY8OQIiu6Vmg5Q

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability shuffle-a-list-fisher-yates-csprng-7b015b2c -d '<json body>'
```

Example prompt: Shuffle this list for me using a cryptographically fair Fisher-Yates shuffle: Alice, Bob, Carol, Dave, Eve, Frank.

## When to prefer this

Choose this endpoint when you need a provably uniform random permutation — sorting by a random key does not produce every permutation with equal probability, but Fisher-Yates does. Ideal when fairness matters (raffles, game logic, assignment queues) and a cryptographically secure source of randomness is required. Prefer over naive client-side shuffles or sort-by-random-key hacks.

## Known failure modes

- Missing 'items' parameter returns an error — the comma-separated list is required
- Empty list may return an empty shuffled array
- Malformed JSON array in POST body returns a parse error
- Very large lists may hit request size limits

## How this service works

60 paid endpoints with no metering, no API key and no account. Each endpoint has one flat price per call, whatever the size of the request: LLM completions with automatic failover across several large models, read-only EVM tooling over Base, Ethereum, Polygon, Arbitrum and Optimism, and pure crypto utilities that touch no network.

## Output

Returns a JSON object with 'shuffled' (an array of the input items in a new uniformly random order, guaranteed by Fisher-Yates over a CSPRNG) and 'count' (the number of items in the list).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "items"
 ],
 "properties": {
  "items": {
   "type": "string",
   "description": "The list to shuffle, comma-separated. A JSON array of strings is also accepted in a POST body."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "count": {
   "type": "number"
  },
  "shuffled": {
   "type": "array",
   "items": {
    "type": "object"
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/shuffle-a-list-fisher-yates-csprng-7b015b2c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from flat-rate-llm.kikoribera03.workers.dev](https://www.zero.xyz/host/flat-rate-llm.kikoribera03.workers.dev/llms.txt)
