Skip to content

Run every saved test case against a skill

POST
/skills/{action_id}/test-runs

RUNS THE SKILL, ONCE PER SAVED CASE. This has real side effects.

For an llm skill that is a model call per case. For an api skill it is an outbound HTTP request per case, to the endpoint the skill is configured with, made AS THE PLATFORM - so a skill that writes somewhere will write there again, with the fixture’s data.

Every case is pinned to ONE version of the skill, so the result is a regression answer rather than a mix of versions.

Tiered external by an explicit rule, for the same reason POST /skills/{action_id}/execute is: it reaches outside graph8 on the customer’s behalf, and nothing in the path name says so.

Authorizations

Parameters

Path Parameters

action_id
required

Skill or workflow action_id.

string
>= 1 characters

Skill or workflow action_id.

Header Parameters

X-Target-Org-Id
Any of:
string

Responses

201

Successful Response

object
data
required

One voice object - a collection, an agent, a route, a chat.

Open-shaped: voice adds fields to these bodies on its own release cadence and a dropped-or-added key must not be a 500 in this service.

object
key
additional properties
any
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
notes
Any of:
Array<string>
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer
total_available
Any of:
integer
total_is_lower_bound
Any of:
boolean

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string