---
title: "Internal Put Turn Live"
method: PUT
path: "/internal/runs/{run_id}/live"
tags: ["internal"]
---

# Internal Put Turn Live

`PUT /internal/runs/{run_id}/live`

## Request

- Base URL: `https://api.nanocorp.so` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nanocorp.so/internal/runs/{run_id}/live`
- Auth: HTTP bearer

Overwrite the turn's ONE live row: the text/thinking block streaming
right now (token-level streaming, AI Elements spec PR2d). Awaited, not
backgrounded: the sandbox serializes PUT → DELETE and the client relies
on that order.

## Path parameters

- `run_id` string, uuid, required

## Request body

- TurnLiveRequest: PUT /internal/runs/{run_id}/live — the streaming block so far (spec PR2d).
  - `kind` 'text' | 'thinking', required
  - `block_key` string, required
  - `text` string, required

## Response `204`

Successful Response

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-22** `bb82245764af`: 1 breaking, 1 info
  - added the pattern `^\d{1,9}:\d{1,9}$` to the request property `block_key`
  - the `block_key` request property's minLength was decreased from `1` to `0`
- **2026-09-05** `1b57049b8ad5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/nanocorp/apis/nanocorp-api/changes/internal/runs/:run_id/live/put.md)

---

[API](https://skmtc.dev/nanocorp/apis/nanocorp-api.md) - [All operations](https://skmtc.dev/nanocorp/apis/nanocorp-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nanocorp/apis/nanocorp-api/revisions/291bb76b720b?raw)
