Best-effort cancel. If the worker has not yet claimed the run, it transitions
to cancelled immediately and is never executed. If the worker already claimed
it, the cancellation is signalled and the run terminates at the next turn boundary
with termination_reason='cancelled'. Cancelled runs are still billed for any
turns already produced. Required scope agent_eval:run.
Best-effort. If the worker hasn’t claimed the run yet, it transitions toDocumentation Index
Fetch the complete documentation index at: https://docs.goyappr.com/llms.txt
Use this file to discover all available pages before exploring further.
cancelled immediately. If a worker already started executing it, the cancellation signal is delivered at the next turn boundary — the run terminates with termination_reason='cancelled' and is billed for whatever turns it produced before the signal landed.Your Yappr API key (e.g. ypr_live_...). Generate one in the dashboard under Settings → API Keys.
Cancellation accepted
One execution of a case. Append-only after creation except for status/billing/lifecycle fields.
User-facing run status. Flips to completed/failed as soon as the conversation ends — BEFORE the worker scores assertions and bills. Do not treat score / pass_fail / total_cost_cents as final until queue_status === "done".
queued, running, completed, failed, cancelled Always text in v1. voice is reserved for the future loopback mode.
text, voice FK; nullable because cases can be deleted while runs are kept as history.
A specific eval scenario — persona + target agent + scenario + success criteria.
Groups runs spawned by a single POST /agent-eval/suites/{id}/run call.
Pass to GET /agent-eval/suites/{id}/runs/{suite_run_id} for the aggregate.
Internal worker pipeline state. pending = waiting in queue, claimed = the cron worker has dispatched it to pipecat, done = the worker has finished scoring + billing. Always poll for queue_status === "done" before reading the scoring / billing fields. The transient window between status === "completed" and queue_status === "done" is typically < 5 seconds but can be longer under contention.
pending, claimed, done Denormalized snapshot — same as case.agent_id at the moment the run was created.
Model identifier the agent ran on. Surfaced for cost auditing.
0 <= x <= 100Why the run stopped.
persona_goodbye, agent_ended, max_turns, timeout, error, cancelled Populated when status is completed or failed.
Total amount debited from the company's credit balance for this run.
Populated when status='failed'.
Snapshot of the case's agent_overrides plus any per-run overrides supplied at create time.