---
title: "Report agent work progress"
method: POST
path: "/internal/agent_work/{work_id}/progress"
tags: ["agent_works"]
---

# Report agent work progress

`POST /internal/agent_work/{work_id}/progress`

Persist one short progress update from the current trusted runtime attempt with tool call retry deduplication.

## Path parameters

- `work_id` string, required

## Request body

- object
  - `turn_uuid` string, required — Canonical Temporal turn UUID
  - `iteration` number, required — Runtime iteration number
  - `attempt` number, required — Temporal activity attempt
  - `tool_call_id` string, required — Trusted runtime tool call identifier
  - `message` string, required — Nonblank public progress message (up to 500 characters)

## Other responses

- `400` — Bad Request - Invalid parameters or malformed request
- `401` — Unauthorized - Invalid or missing authentication
- `403` — Forbidden - User lacks permission to access this resource
- `404` — Not Found - Resource does not exist
- `422` — Unprocessable Entity - Invalid request parameters or validation errors
- `429` — Too Many Requests - Rate limit exceeded
- `500` — Internal Server Error - Unexpected server error

## Changes

- **2026-09-23** `765448cb74e4` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/changes/internal/agent_work/:work_id/progress/post.md)

---

[API](https://skmtc.dev/rhythms/apis/rhythms-params-in-body.md) · [All operations](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/llms.txt) · [OpenAPI document](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/revisions/be444d98d5ff?raw)
