POST
/
api
/
v1
/
episodes
cURL
curl --request POST \
  --url https://labs.tacitintelligence.co/api/v1/episodes \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "collection_slug": "<string>",
  "scenario_slug": "<string>",
  "score_turns": true,
  "config": {}
}
'
{
  "episode_id": "<string>",
  "initial_observation": {
    "role": "<string>",
    "content": "<string>"
  },
  "tools": [
    {
      "id": "<string>",
      "type": "<string>",
      "name": "<string>",
      "mode": "<string>",
      "description": "<string>",
      "json_schema": "<unknown>",
      "options": "<unknown>"
    }
  ]
}

Authorizations

Authorization
string
header
required

API key obtained from Labs Portal

Body

application/json
collection_slug
string
required

The collection slug containing the scenario

scenario_slug
string
required

The scenario slug to start an episode for

score_turns
boolean

Whether to score the conversation on each turn. Defaults to false. When false, per-turn reward is 0 and scores are omitted. The /evaluate endpoint can be used for final scoring.

config
object

Optional configuration overrides for the episode

Response

Success

episode_id
string
required

Unique identifier for the created episode

initial_observation
object
required

The starting observation for the episode

tools
object[]
required

Tools available for this scenario