{"command":{"effect":"read","timeoutSeconds":30,"inputSchema":{"type":"object","description":"To list the episodes within a simulation run, send a GET request to `/v2/gen-ai/simulation_runs/{run_uuid}/episodes`.","properties":{"path":{"type":"object","properties":{"run_uuid":{"type":"string","examples":["\"123e4567-e89b-12d3-a456-426614174000\""],"description":"UUID of the run whose episodes to list."}},"required":["run_uuid"],"additionalProperties":false},"query":{"type":"object","properties":{"scenario_uuid":{"type":"string","examples":["123e4567-e89b-12d3-a456-426614174000"],"description":"Optional filter by scenario."},"page":{"type":"integer","examples":[1],"description":"Page number."},"per_page":{"type":"integer","examples":[1],"description":"Items per page."},"statuses":{"items":{"enum":["SIMULATION_EPISODE_STATUS_UNSPECIFIED","SIMULATION_EPISODE_STATUS_RUNNING","SIMULATION_EPISODE_STATUS_FINISHED","SIMULATION_EPISODE_STATUS_FAILED","SIMULATION_EPISODE_STATUS_PREPARING"],"type":"string"},"type":"array","examples":[["SIMULATION_EPISODE_STATUS_FINISHED"]],"description":"Filter by one or more statuses. Empty means no status filter.\n\n - SIMULATION_EPISODE_STATUS_RUNNING: The episode is executing and a trajectory is available to retrieve.\n - SIMULATION_EPISODE_STATUS_FINISHED: The episode reached a stop condition and produced a verdict.\n - SIMULATION_EPISODE_STATUS_FAILED: The episode failed because of a cancel, timeout, or error.\n - SIMULATION_EPISODE_STATUS_PREPARING: The episode is allocated but its trajectory is not available yet."},"verdicts":{"items":{"enum":["SIMULATION_EPISODE_VERDICT_UNSPECIFIED","SIMULATION_EPISODE_VERDICT_SUCCESS","SIMULATION_EPISODE_VERDICT_FAILURE","SIMULATION_EPISODE_VERDICT_INCONCLUSIVE"],"type":"string"},"type":"array","examples":[["SIMULATION_EPISODE_VERDICT_SUCCESS"]],"description":"Filter by one or more verdicts. Empty means no verdict filter.\n\n - SIMULATION_EPISODE_VERDICT_SUCCESS: The candidate agent satisfied the scenario's stopping criteria.\n - SIMULATION_EPISODE_VERDICT_FAILURE: The candidate agent did not satisfy the stopping criteria.\n - SIMULATION_EPISODE_VERDICT_INCONCLUSIVE: No conclusive verdict (e.g. max_turns reached without the judge finishing)."},"search":{"type":"string","examples":["example string"],"description":"Free-text search across scenario_uuid and session_id\n(case-insensitive substring match). Empty means no search."},"sort_by":{"default":"SIMULATION_EPISODE_SORT_FIELD_UNSPECIFIED","enum":["SIMULATION_EPISODE_SORT_FIELD_UNSPECIFIED","SIMULATION_EPISODE_SORT_FIELD_SCENARIO","SIMULATION_EPISODE_SORT_FIELD_CREATED_AT","SIMULATION_EPISODE_SORT_FIELD_STATUS","SIMULATION_EPISODE_SORT_FIELD_VERDICT"],"type":"string","examples":["SIMULATION_EPISODE_SORT_FIELD_UNSPECIFIED"],"description":"Field to sort by. Defaults to scenario ordering when unspecified.\n\n - SIMULATION_EPISODE_SORT_FIELD_SCENARIO: Sort by scenario_uuid then episode_index. Default.\n - SIMULATION_EPISODE_SORT_FIELD_CREATED_AT: Sort by creation date.\n - SIMULATION_EPISODE_SORT_FIELD_STATUS: Sort by episode status using lifecycle order.\n - SIMULATION_EPISODE_SORT_FIELD_VERDICT: Sort by verdict (nulls last)."},"sort_direction":{"default":"SORT_DIRECTION_UNSPECIFIED","enum":["SORT_DIRECTION_UNSPECIFIED","SORT_DIRECTION_ASC","SORT_DIRECTION_DESC"],"type":"string","examples":["SORT_DIRECTION_UNSPECIFIED"],"description":"Sort direction. Defaults to ascending when unspecified."}},"required":[],"additionalProperties":false}},"required":["path"],"additionalProperties":false},"name":"List Simulation Episodes","id":"digitalocean.genai_list_simulation_episodes","example":{"path":{"run_uuid":"\"123e4567-e89b-12d3-a456-426614174000\""}},"maxRequests":1,"summary":false}}