atteq API
  • Guides
  • Recipes
  • Cookbook
  • API Reference
Information
agents
    List AgentsgetCreate AgentpostDocument AttachmentsgetGet VersiongetEdit DraftpatchReplace Draft GraphputPublish VersionpostGet AgentgetDelete AgentdeleteCopy AgentpostGet DraftgetGet Agent MapgetPending ChangesgetList PlacementsgetRestore VersionpostList VersionsgetGet Mapget
voice_agent
    Open Browser CallpostEnd Browser CalldeleteGet Agent Test LinkgetGet Bridge CeilinggetSet Bridge Ceilingpatch
ai_profiles
    Get Ai Profile CapabilitiesgetList Live SettingsgetCreate Live SettingspostDelete Live SettingsdeleteUpdate Live SettingspatchList Llm SettingsgetCreate Llm SettingspostDelete Llm SettingsdeleteUpdate Llm SettingspatchList ProfilesgetCreate ProfilepostGet ProfilegetDelete ProfiledeleteUpdate ProfilepatchCopy ProfilepostSet Text SectionputSet Voice SectionputList Stt SettingsgetCreate Stt SettingspostDelete Stt SettingsdeleteUpdate Stt SettingspatchList Tts SettingsgetCreate Tts SettingspostDelete Tts SettingsdeleteUpdate Tts SettingspatchList Vad SettingsgetCreate Vad SettingspostDelete Vad SettingsdeleteUpdate Vad Settingspatch
analyst
    List Agent FindingsgetCall Back FindingpostDismiss FindingpostUndo Finding DismissaldeleteTeach FindingpostWatch FindingpostList Question ChartsgetList Tracked QuestionsgetCreate Tracked QuestionpostGet Question Search CostgetSearch For Tracked QuestionpostPropose Tracked QuestionpostDelete Tracked QuestiondeleteUpdate Tracked QuestionpatchGet Reading SwitchgetSet Reading SwitchputGet Agent Summaryget
analytics
    List ChartsgetCreate ChartpostPreview ChartpostGet ChartgetDelete ChartdeleteUpdate ChartpatchRun ChartpostList DatasetsgetList BoardsgetCreate BoardpostGet TraversalgetGet BoardgetDelete BoarddeleteUpdate Boardpatch
authentication
    List InvitationsgetInvite MemberpostRevoke InvitationdeleteResend InvitationpostList MembersgetRemove MemberdeleteGet Member Conversation AccessgetSet Member Conversation AccesspatchSet Member FlagspatchSet Member RolepatchGet OrganizationgetUpdate OrganizationpatchGet Role FlagsgetSet Role Flagspatch
automations
    List AutomationsgetCreate AutomationpostGet AutomationgetDelete AutomationdeleteUpdate AutomationpatchSet Automation EnabledputGet Automation MapgetRun AutomationpostList Automation RunsgetGet Automation Runget
billable-metrics
    List MetricsgetUsage SummarygetGet Metricget
outbound_calls
    Place CallpostList CampaignsgetCreate CampaignpostGet CampaigngetDelete CampaigndeleteUpdate CampaignpatchActivate CampaignpostLink CollectionpostAdd ContactspostAdd Contacts From CollectionpostRemove Contacts From CollectionpostSet Campaign HoursputPreview Campaign HourspostPause CampaignpostGet Campaign SummarygetExclude ContactpostInclude Contactpost
channels
    List ChannelsgetCreate ChannelpostList Thread SubjectsgetClose Channel ThreadpostList Thread DecisionsgetGet Thread Contact FilegetHand Thread To AgentpostList Thread MailgetGet Prepared ReplygetAsk Again For Prepared ReplypostDiscard Prepared ReplypostSend Prepared ReplypostReply On Channel ThreadpostGet ChannelgetDelete ChanneldeleteUpdate ChannelpatchSend On ChannelpostList Channel ThreadsgetList RostergetCreate Roster EntrypostGet Own Roster EntrygetGet Roster EntrygetDelete Roster EntrydeleteUpdate Roster EntrypatchAdd Roster AddresspostChange Roster AddressputRemove Roster Addressdelete
custom-data
    List CollectionsgetCreate CollectionpostList Collection NamesgetGet CollectiongetDelete CollectiondeleteUpdate CollectionpatchAdd FieldpostDelete FielddeleteUpdate FieldpatchImport RecordspostPlan ImportpostPropose ImportpostGet ImportgetList RecordsgetCreate RecordpostBulk Delete RecordspostBulk Set FieldpostCount RecordsgetList Records Of ContactgetDelete Records Of ContactdeleteGet RecordgetDelete RecorddeleteUpdate Recordpatch
connections
    List ConnectionsgetCreate ConnectionpostCreate Forwarded AddresspostCreate Mail ServerpostDiscover Mail ServerpostAuthorize Microsoft MailboxpostList ProvidersgetGet ConnectiongetDelete ConnectiondeleteUpdate ConnectionpatchGet Forwarded AddressgetCheck Forwarded AddresspostList Person GrantsgetSet Person GrantputRemove Person GrantdeleteGet Mail ServergetUpdate Mail ServerpatchList Mail Server FoldersgetEnter Mail Server PasswordputChange Mail Server ServersputTest Mail Server AgainpostGet Microsoft MailboxgetUpdate Microsoft MailboxpatchList Microsoft Mailbox FoldersgetConsent To Microsoft Mailbox WritespostWithdraw Microsoft Mailbox Writesdelete
custom-tools
    List Custom ToolsgetCreate Custom ToolpostGet Custom ToolgetDelete Custom TooldeleteGet Custom Tool DraftgetEdit Custom Tool DraftpatchPublish Custom ToolpostRestore Custom Tool VersionpostTry Custom ToolpostList Custom Tool Versionsget
rag
    List DocumentsgetUpload DocumentpostSearch DocumentspostGet DocumentgetDelete DocumentdeleteDownload DocumentgetReingest Documentpost
flows
    List FlowsgetCreate FlowpostGet FlowgetDelete FlowdeleteRename FlowpatchAdd Flow EdgepostDelete Flow EdgedeleteSet Entry SteppatchAdd SteppostDelete StepdeleteUpdate SteppatchTest FlowpostList Flow Testsget
dynamic_context
    Create GraphpostGet GraphgetDelete GraphdeleteAdd EdgepostDelete EdgedeleteAdd NodepostDelete NodedeleteUpdate NodepatchSet Rootput
inbox
    Get Inbox Open CountgetSet Inbox PreferencespatchGet Inbox RailgetCreate Inbox ViewpostDelete Inbox ViewdeleteUpdate Inbox Viewpatch
handoff
    Assign Threadpost
interactions
    List InteractionsgetCount InteractionsgetGet InteractiongetSet Conversation LabelspostGet TracegetGet TranscriptgetList LabelsgetCreate LabelpostDelete LabeldeleteUpdate Labelpatch
legal
    Agree To Processing AgreementpostAgree To TermspostLegal BoxesgetList Legal DocumentsgetRead Legal DocumentgetList Legal VersionsgetRead Legal VersiongetDownload Legal VersiongetOrganization Legal HistorygetOwn Legal HistorygetObject To SubprocessorspostWithdraw ObjectionpostLegal Pendingget
not-a-tool
    Agree To Processing AgreementpostAgree To TermspostObject To SubprocessorspostWithdraw Objectionpost
memory
    List MemoriesgetList Memory LinesgetCreate Memory LinepostDelete Memory LinedeleteUpdate Memory LinepatchList Memory PeoplegetGet Memory PersongetForget PersondeleteGet Memory SwitchgetSet Memory SwitchputWipe ContactdeleteGet Conversation MemorygetRecall MemoriespostGet MemorygetDelete MemorydeletePatch Memorypatch
notifications
    List InboxgetGet Unread CountgetMark ReadpostMark Unreaddelete
recipes
    List RecipesgetList Installed RecipesgetGet Installed RecipegetUninstall RecipedeleteSet Recipe EnabledputUpdate Recipe ParameterspatchUpdate RecipepostInstall Recipepost
data-retention
    Get RetentiongetSet Retentionpatch
text
    Open ConversationpostClose ConversationpostAnswer ConfirmationpostGet Sent FilegetSend MessagepostSet Modepatch
tools
    List ToolsgetCreate ToolpostList BuiltinsgetImport Mcp ServerpostImport OpenapipostPreview Openapi ImportpostSuggest Tool ExamplespostGet ToolgetDelete TooldeleteUpdate ToolpatchTest ToolpostList Tool Testsget
trunks
    List Transfer DirectorygetCreate Transfer Directory EntrypostGet Transfer Directory EntrygetDelete Transfer Directory EntrydeleteUpdate Transfer Directory EntrypatchList TrunksgetCreate TrunkpostGet TrunkgetDelete TrunkdeleteUpdate TrunkpatchList Forward Recordsget
Schemas
powered by Zudoku
attek API
attek API

flows


List Flows

GET
/api/v1/flows

List this organization's flows, oldest first: id, name and entry step. Read one with get_flow to see its steps and edges.

List Flows › Responses

200

Successful Response

​FlowOut[]
FlowOut
​required
id
​string · uuid · required
name
​string · required
org_id
​string · uuid · required
​
GET/api/v1/flows
curl /api/v1/flows \ --header 'Authorization: Bearer <token>'
Example Responses
[ { "entry_step_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "name": "name", "org_id": "00000000-0000-0000-0000-000000000000", "owner": { "id": "00000000-0000-0000-0000-000000000000", "kind": "kind" } } ]
json
application/json

Create Flow

POST
/api/v1/flows

Create a flow: a deterministic graph of steps, each step a tool, each edge a condition on what earlier steps returned. Use as soon as a job needs more than one tool or a branch; a prompt is not a place to describe a procedure. The steps are ordinary tool instances (add_step), the branches are edges (add_flow_edge), and the first step added is the entry. A flow becomes a tool the agent can call by registering it with create_tool and config.flow_id, or the work an automation runs with create_automation. It is not for a decision the model should make from what the person says; that is the node graph.

Create Flow › Request Body

FlowCreate
name
​string · required

Create Flow › Responses

Successful Response

FlowOut
​required
id
​string · uuid · required
name
​string · required
org_id
​string · uuid · required
​
POST/api/v1/flows
curl /api/v1/flows \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "name": "name" }'
Example Request Body
{ "name": "name" }
json
Example Responses
{ "entry_step_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "name": "name", "org_id": "00000000-0000-0000-0000-000000000000", "owner": { "id": "00000000-0000-0000-0000-000000000000", "kind": "kind" } }
json
application/json

Get Flow

GET
/api/v1/flows/{flow_id}

Read a flow whole: its entry step, every step (the tool it runs and the parameters it fixes) and every edge with the condition on earlier results that sends the run along it.

Get Flow › path Parameters

flow_id
​string · uuid · required

Get Flow › Responses

Successful Response

A whole flow: its steps, its edges, and which step is the entry point.
FlowGraphOut
​FlowEdgeOut[] · required
​required
id
​string · uuid · required
name
​string · required
org_id
​string · uuid · required
​FlowStepOut[] · required
​
GET/api/v1/flows/{flow_id}
curl /api/v1/flows/:flow_id \ --header 'Authorization: Bearer <token>'
Example Responses
{ "edges": [ { "condition": { "field": "field", "op": "===", "value": {} }, "id": "00000000-0000-0000-0000-000000000000", "source_step_id": "00000000-0000-0000-0000-000000000000", "target_step_id": "00000000-0000-0000-0000-000000000000" } ], "entry_step_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "name": "name", "org_id": "00000000-0000-0000-0000-000000000000", "owner": { "id": "00000000-0000-0000-0000-000000000000", "kind": "kind" }, "steps": [ { "id": "00000000-0000-0000-0000-000000000000", "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" } ] }
json
application/json

Delete Flow

DELETE
/api/v1/flows/{flow_id}

Delete a flow with all its steps and edges, permanently. Use when the flow should no longer exist.

Delete Flow › path Parameters

flow_id
​string · uuid · required

Delete Flow › Responses

Successful Response

No data returned
DELETE/api/v1/flows/{flow_id}
curl /api/v1/flows/:flow_id \ --request DELETE \ --header 'Authorization: Bearer <token>'
Example Responses
No example specified for this content type

Rename Flow

PATCH
/api/v1/flows/{flow_id}

Rename a flow. Use only to change its name; it changes nothing about what the flow does.

Rename Flow › path Parameters

flow_id
​string · uuid · required

Rename Flow › Request Body

FlowCreate
name
​string · required

Rename Flow › Responses

Successful Response

FlowOut
​required
id
​string · uuid · required
name
​string · required
org_id
​string · uuid · required
​
PATCH/api/v1/flows/{flow_id}
curl /api/v1/flows/:flow_id \ --request PATCH \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "name": "name" }'
Example Request Body
{ "name": "name" }
json
Example Responses
{ "entry_step_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "name": "name", "org_id": "00000000-0000-0000-0000-000000000000", "owner": { "id": "00000000-0000-0000-0000-000000000000", "kind": "kind" } }
json
application/json

Add Flow Edge

POST
/api/v1/flows/{flow_id}/edges

Connect two steps of a flow, so one runs after the other. Without a condition the target always follows; with one, only when the test holds: condition is {field: "<step_id>.<path>", op, value}, field reading an earlier step's output (or trigger.<key>, what the run was started with) and op one of ===, !==, >, <, includes, exists. Use it for every branch a job has — "if the slot is free, book it, otherwise stop" is an edge here, not a branch in a tool's code and not a sentence in a prompt. A step with several outgoing edges takes the first whose condition holds; a step with none ends the run, and its output is the flow's result.

This is a flow. To connect nodes of an agent's conversation graph, where the model decides, use add_edge.

Add Flow Edge › path Parameters

flow_id
​string · uuid · required

Add Flow Edge › Request Body

FlowEdgeIn
source_step_id
​string · uuid · required
target_step_id
​string · uuid · required
​

Add Flow Edge › Responses

Successful Response

FlowEdgeOut
​required
id
​string · uuid · required
source_step_id
​string · uuid · required
target_step_id
​string · uuid · required
POST/api/v1/flows/{flow_id}/edges
curl /api/v1/flows/:flow_id/edges \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "condition": { "field": "field", "op": "===", "value": {} }, "source_step_id": "00000000-0000-0000-0000-000000000000", "target_step_id": "00000000-0000-0000-0000-000000000000" }'
Example Request Body
{ "condition": { "field": "field", "op": "===", "value": {} }, "source_step_id": "00000000-0000-0000-0000-000000000000", "target_step_id": "00000000-0000-0000-0000-000000000000" }
json
Example Responses
{ "condition": { "field": "field", "op": "===", "value": {} }, "id": "00000000-0000-0000-0000-000000000000", "source_step_id": "00000000-0000-0000-0000-000000000000", "target_step_id": "00000000-0000-0000-0000-000000000000" }
json
application/json

Delete Flow Edge

DELETE
/api/v1/flows/{flow_id}/edges/{edge_id}

Remove an edge from a flow. Use when one path between two steps should no longer exist.

This is a flow; for an agent's conversation graph, use delete_edge.

Delete Flow Edge › path Parameters

flow_id
​string · uuid · required
edge_id
​string · uuid · required

Delete Flow Edge › Responses

Successful Response

No data returned
DELETE/api/v1/flows/{flow_id}/edges/{edge_id}
curl /api/v1/flows/:flow_id/edges/:edge_id \ --request DELETE \ --header 'Authorization: Bearer <token>'
Example Responses
No example specified for this content type

Set Entry Step

PATCH
/api/v1/flows/{flow_id}/entry-step

Set the step the flow starts at. Use only when the flow should start somewhere other than the first step added, which is the entry already: after a restructure, or before deleting the entry step, which is refused while other steps remain. The step must already belong to this flow. Every run begins here and follows the edges out of it, so a step no edge leads to never runs.

Set Entry Step › path Parameters

flow_id
​string · uuid · required

Set Entry Step › Request Body

Names the step `run_flow` starts from. `step_id` must already be a step of this flow.
FlowEntryStepIn
step_id
​string · uuid · required

Set Entry Step › Responses

Successful Response

FlowOut
​required
id
​string · uuid · required
name
​string · required
org_id
​string · uuid · required
​
PATCH/api/v1/flows/{flow_id}/entry-step
curl /api/v1/flows/:flow_id/entry-step \ --request PATCH \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "step_id": "00000000-0000-0000-0000-000000000000" }'
Example Request Body
{ "step_id": "00000000-0000-0000-0000-000000000000" }
json
Example Responses
{ "entry_step_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "name": "name", "org_id": "00000000-0000-0000-0000-000000000000", "owner": { "id": "00000000-0000-0000-0000-000000000000", "kind": "kind" } }
json
application/json

Add Step

POST
/api/v1/flows/{flow_id}/steps

Add a step to a flow: one tool instance, run when the flow reaches it. Use once per action the job takes — a tool that fetches, one that computes, one that writes are three steps, never one instance that does all of it. param_overrides fixes the arguments the tool is called with; a value "$ref:<step_id>.<path>" reads an earlier step's output and "$ref:trigger.<key>" reads what the run was started with, so data moves between steps with no code. The first step added becomes the entry; add_flow_edge says what runs after it and on which condition. A step between a fetch and a write that needs a calculation no tool provides is a published custom tool's tool_id.

Add Step › path Parameters

flow_id
​string · uuid · required

Add Step › Request Body

FlowStepIn
tool_id
​string · uuid · required
​object

Add Step › Responses

Successful Response

FlowStepOut
id
​string · uuid · required
​object · required
tool_id
​string · uuid · required
POST/api/v1/flows/{flow_id}/steps
curl /api/v1/flows/:flow_id/steps \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }'
Example Request Body
{ "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }
json
Example Responses
{ "id": "00000000-0000-0000-0000-000000000000", "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }
json
application/json

Delete Step

DELETE
/api/v1/flows/{flow_id}/steps/{step_id}

Delete a step and every edge touching it, permanently. Use when one action should be removed from the flow.

Delete Step › path Parameters

flow_id
​string · uuid · required
step_id
​string · uuid · required

Delete Step › Responses

Successful Response

No data returned
DELETE/api/v1/flows/{flow_id}/steps/{step_id}
curl /api/v1/flows/:flow_id/steps/:step_id \ --request DELETE \ --header 'Authorization: Bearer <token>'
Example Responses
No example specified for this content type

Update Step

PATCH
/api/v1/flows/{flow_id}/steps/{step_id}

Change what a step does or how it decides where to go next. Use when adjusting one existing step's tool or arguments, not adding a new action.

Update Step › path Parameters

flow_id
​string · uuid · required
step_id
​string · uuid · required

Update Step › Request Body

Partial edit — only the provided fields change.
FlowStepUpdate
​
​

Update Step › Responses

Successful Response

FlowStepOut
id
​string · uuid · required
​object · required
tool_id
​string · uuid · required
PATCH/api/v1/flows/{flow_id}/steps/{step_id}
curl /api/v1/flows/:flow_id/steps/:step_id \ --request PATCH \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }'
Example Request Body
{ "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }
json
Example Responses
{ "id": "00000000-0000-0000-0000-000000000000", "param_overrides": {}, "tool_id": "00000000-0000-0000-0000-000000000000" }
json
application/json

Test Flow

POST
/api/v1/flows/{flow_id}/test

Testing a flow runs it. Starts at the entry step with inputs (read as $ref:trigger.<key>) and runs every step it reaches for real: a message really sends, a record really writes. Answers what each step was handed, returned or failed with, and which edge it took, and how the test ended: succeeded, failed (a step failed; not an HTTP error), stopped or did_not_terminate.

stop_after_step_id stops right after that step, before what follows runs. run_step_id runs one step: the steps before it reuse what the flow's latest test recorded them returning (marked reused, not run again; stale when the step or what it reads changed since), only those with nothing recorded, and those on a loop, run, then it stops; leaving inputs out then means the latest test's (inputs_inherited), and {} means none. Give one of the two at most. Each step that runs counts as a tool execution, and a test is refused with 402 while the organization may not spend. Each value kept is cut at 64 KB (truncated); kept with the flow's latest 20 tests (list_flow_tests) and purged on the organization's retention window.

Test Flow › path Parameters

flow_id
​string · uuid · required

Test Flow › Request Body

What a test is started with. `inputs` is what the entry step is handed, under `trigger` as any run's (rule 19), at most `TRACE_VALUE_LIMIT` bytes as JSON. Left out (`None`), a test with `run_step_id` is handed what the flow's latest test was, and any other test nothing; `{}` is really empty. `stop_after_step_id` ends the test right after that step (rule 21). `run_step_id` runs that one step: the steps before it reuse what the flow's latest test recorded them returning, and only those with nothing recorded run for real (rule 22). At most one of the two is given.
FlowTestIn
​
​
​

Test Flow › Responses

Successful Response

One test of a flow, recorded against the flow and not as a conversation.
FlowTestOut
created_at
​string · date-time · required
duration_ms
​integer · required
flow_id
​string · uuid · required
id
​string · uuid · required
​object · required
outcome
​FlowTestOutcome · enum · required

How a test ended (rule 20). STOPPED is the person's choice, not a failure (rule 21); DID_NOT_TERMINATE is the graph passing the step bound, not a step failing (rule 10).

Enum values:
succeeded
failed
stopped
did_not_terminate
​FlowStepTrace[] · required
inputs_inherited
​boolean
Default: false
POST/api/v1/flows/{flow_id}/test
curl /api/v1/flows/:flow_id/test \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "inputs": {}, "run_step_id": "00000000-0000-0000-0000-000000000000", "stop_after_step_id": "00000000-0000-0000-0000-000000000000" }'
Example Request Body
{ "inputs": {}, "run_step_id": "00000000-0000-0000-0000-000000000000", "stop_after_step_id": "00000000-0000-0000-0000-000000000000" }
json
Example Responses
{ "created_at": "2024-08-25T15:00:00Z", "duration_ms": 0, "flow_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "inputs": {}, "inputs_inherited": false, "outcome": "succeeded", "steps": [ { "detail": "", "duration_ms": 0, "edge_id": "00000000-0000-0000-0000-000000000000", "fingerprint": "", "order": 0, "output": {}, "parameters": {}, "stale": false, "status": "succeeded", "step_id": "00000000-0000-0000-0000-000000000000", "tool_id": "00000000-0000-0000-0000-000000000000", "tool_name": "tool_name", "truncated": false } ] }
json
application/json

List Flow Tests

GET
/api/v1/flows/{flow_id}/tests

What this flow's latest tests did, newest first, at most 20: each step reached, what it ran with and returned (each value cut at 64 KB, truncated), and how the test ended. Use to review a test instead of running the flow again.

List Flow Tests › path Parameters

flow_id
​string · uuid · required

List Flow Tests › Responses

Successful Response

​FlowTestOut[]
One test of a flow, recorded against the flow and not as a conversation.
FlowTestOut
created_at
​string · date-time · required
duration_ms
​integer · required
flow_id
​string · uuid · required
id
​string · uuid · required
​object · required
outcome
​FlowTestOutcome · enum · required

How a test ended (rule 20). STOPPED is the person's choice, not a failure (rule 21); DID_NOT_TERMINATE is the graph passing the step bound, not a step failing (rule 10).

Enum values:
succeeded
failed
stopped
did_not_terminate
​FlowStepTrace[] · required
inputs_inherited
​boolean
Default: false
GET/api/v1/flows/{flow_id}/tests
curl /api/v1/flows/:flow_id/tests \ --header 'Authorization: Bearer <token>'
Example Responses
[ { "created_at": "2024-08-25T15:00:00Z", "duration_ms": 0, "flow_id": "00000000-0000-0000-0000-000000000000", "id": "00000000-0000-0000-0000-000000000000", "inputs": {}, "inputs_inherited": false, "outcome": "succeeded", "steps": [ { "detail": "", "duration_ms": 0, "edge_id": "00000000-0000-0000-0000-000000000000", "fingerprint": "", "order": 0, "output": {}, "parameters": {}, "stale": false, "status": "succeeded", "step_id": "00000000-0000-0000-0000-000000000000", "tool_id": "00000000-0000-0000-0000-000000000000", "tool_name": "tool_name", "truncated": false } ] } ]
json
application/json

ragdynamic_context