Skip to main content
GET
Get an agent's latest flow test

Authorizations

Authorization
string
header
required

Your workspace secret key, sk_live_ followed by 32 hex characters. Create one in the console under Developers.

Path Parameters

agent_id
string
required

The agent's id (agt_…).

Response

The latest test

agent_id
string | null
required

The agent the request named, or null.

calls
object[]
required

The test calls the job was given, tidied to one AGENT:/CALLER: turn per line as they were tested; tests[].source.index (kind call) points into this list. Kept with the job (24 hours), readable only by its workspace; never logged.

Maximum array length: 5
cost
object
required

What the job costs: every simulated turn on the live-call model at the text channel's LLM rates (₹14.38 / ₹57.52 per million input / output tokens), every hosted call (the callers, a fallback, the reviews and revisions) at the provider's reported cost × ₹88 × 1.2 (its per-token rates when none is reported), rounded up once to a paisa. So far while running; once finished (succeeded, failed or canceled), the amount charged to the wallet in one flow_generation transaction described "Flow test · · … tokens".

created_at
string<date-time>
required
examples
object[]
required

The example calls the job was given, as it used them, in order: a replay's tests[].source.index (kind example) points into this list, so a client can show each replay beside its original, and resending them with the current flow tests the same calls again. Kept with the job (24 hours), readable only by its workspace; never logged.

Maximum array length: 10
finished_at
string<date-time> | null
required
found
object[]
required

What the first review found in the graph sent.

id
string
required

The job id (GET /v2/agents/flow/refine/{id}) and the reference of its wallet transaction (kind flow_generation). Quote it in a support request.

Pattern: ^frf_[0-9A-Z]{26}$
input_flow_revision
string
required

The flow revision of the graph the job was given (the graph under test).

model
enum<string>
required

The model that reviews and revises.

Available options:
gemini-3.8-flash,
claude-opus-5.5,
gpt-6-sol
object
any
required
progress
object
required

round: the test round under way (1-based); rounds: the most there can be (1, plus 1 per revision when verify is true: 2 by default); tests_done of tests_total: this round's tests.

remaining
object[]
required

What the last review found: with verify, in the final graph; without, in the graph sent.

rounds
object[]
required

The test rounds finished so far, in order.

Maximum array length: 4
simulation_model
string
required

The model simulated calls run on: the LLM your tier's live calls run on, as that stack names it (for example voice-agent), or gemini-3.8-flash when that model was unavailable, switched off or failed during the job (the job then falls back for good; each test names its model).

stage
enum<string>
required

What a running job is doing; done once it succeeded; where it stopped once it failed or was canceled.

Available options:
writing_scenarios,
simulating,
reviewing,
revising,
verifying,
done
status
enum<string>
required

canceled: stopped with POST /v2/agents/flow/refine/{id}/cancel; what had answered is charged and the rounds that finished are kept.

Available options:
running,
succeeded,
failed,
canceled
updated_at
string<date-time>
required
usage
object
required

Every model call's tokens, simulated turns included, summed. So far while running.

changed
boolean

Once succeeded: whether flow differs from the graph sent.

error
object

Why a failed job failed.

flow
object

Once succeeded: the final graph — the last valid revision, or the graph sent when nothing was changed (changed false). It passes every rule PUT /v2/agents/{id}/flow applies. Not saved.

flow_revision
string

Once succeeded: the final graph's flow revision.

input_schema
object

Once succeeded: the variables as an agent input_schema, ready to save beside the flow.

variables
object[]

Once succeeded: the call variables the final graph reads as {{name}}. When nothing changed, every one is typed string.

Maximum array length: 32