---
title: "Control Agent Run"
method: POST
path: "/v2/investigation/control"
---

# Control Agent Run

`POST /v2/investigation/control`

Steer or stop a live granular investigation turn.

## Request body

- union
  - AgentSteerControlRequest — Steering command for a running granular investigation.
    - `session_id` string, required
    - `system_chat_id` string, required
    - `command_id` string, required
    - `action` 'steer', required
    - `message` string, required
  - AgentStopControlRequest — Stop command for a running granular investigation.
    - `session_id` string, required
    - `system_chat_id` string, required
    - `command_id` string, required
    - `action` 'stop', required

## Response `200`

Successful Response

- AgentControlResponse
  - `command_id` string, required
  - `status` 'accepted' | 'already_stopping' | 'already_finalizing' | 'queue_full', required — Admission result for an agent-loop control command. ACCEPTED means the command was durably admitted to workflow state. For steering, it does not mean the next LLM turn has observed the message yet.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/traversal/apis/fastapi.md) · [All operations](https://skmtc.net/traversal/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/traversal/fastapi/revisions/2134ebffd1ef/schema)
