# Sandbox (/api/sandbox)

Keys that start with `taadtest_` work in your **sandbox**: a world of its own, with sample recordings, to-dos and calendar events, that never touches your real meetings. Nothing in it is ever charged.

## What's in it [#whats-in-it]

The first time you use a test key, your sandbox fills with six sample recordings: a meeting, a call in Persian, a one-to-one, a class, a stand-up and an interview, each with a transcript, notes, speakers, to-dos and an event. Read them, change them, search them, export them.

## Sending audio [#sending-audio]

Any file you send with a test key is "transcribed" in a couple of seconds, with a fixed transcript and notes, so your code can follow the whole flow, webhooks included, without waiting or paying.

To test what happens when things go wrong, send an `audio_url` of:

| `audio_url` | What happens |
| --- | --- |
| `sample:no-speech` | the recording fails: nothing was said |
| `sample:unreadable` | refused: `422 unreadable_audio` |
| `sample:too-long` | refused: `413 too_long` |
| `sample:insufficient-credits` | refused: `402 insufficient_balance` |
| `sample:slow` | ready after two minutes |

Questions and rewrites answer fixed text too, with citations into the sample recordings.

## Webhooks [#webhooks]

Endpoints added with a test key get the sandbox's events, marked `"livemode": false`. Live keys never see sandbox events, and test keys never see live ones.

## Going live [#going-live]

Make a live key (`taad_…`) in Settings › Developers and swap it in. Ids from the sandbox don't exist in your live workspace: a test id sent with a live key answers `404`.
