Request errors
Every error comes back as{ "errors": [{ "code", "message", "field" }] }: branch on
code, read message, and field names the input on validation errors. See
Errors.
Why a bot failed
A bot that ends without a result hasstatus: "failed", a reason to branch on, and a
failure_message for your logs. It arrives on bot.failed and on GET /bots/{id}.
The bot also leaves on its own: after 15 minutes in a waiting room, 10 seconds after
everyone else left, or after 20 minutes of silence. A bot that recorded something before
leaving goes on to
completed; one that recorded nothing fails with no_recording.