# SDK_IDEMPOTENCY_KEY_UNAVAILABLE

- Surface: SDK

## Cause

`evaluateAll` was called without an `idempotencyKey` in a runtime where `crypto.randomUUID` does not exist. It is secure-context-only, so a page served over plain `http://` reaches this.

## Fix

Pass your own `idempotencyKey` on the context, or serve the page from a secure context (`https://` or `localhost`). The SDK refuses to substitute a weaker random source: this key is the batch's billing replay identity, and a colliding one would let a repeated fetch be charged twice.

## Related

- [SDK_RETRIES_INVALID](https://splitch.dev/docs/error/SDK_RETRIES_INVALID)

Source: https://splitch.dev/docs/error/SDK_IDEMPOTENCY_KEY_UNAVAILABLE