---
title: "Start Sync Chat Review"
method: POST
path: "/agent-loop/sync-chat/start-review"
tags: ["sync-chat"]
---

# Start Sync Chat Review

`POST /agent-loop/sync-chat/start-review`

Ensure a post-`scott sync` review turn is in flight, and dispatch it.

Called by both the CLI (after an upload) and the /sync page (on an empty or
stale thread), so it is idempotent: if a review turn is already pending or
streaming at the thread tip, it re-nudges that turn instead of stacking a
duplicate. A fresh review is only created once the previous one has settled,
so a later sync reflects the newly uploaded sessions.

Dispatch is best-effort. The pending row is the durable work item; on a
missed dispatch reconcile_sync_chat_turns re-dispatches it, so this returns
200 (the review is queued) rather than 503.

## Response `200`

Successful Response

- CreateSyncChatTurnResponse
  - `turn_id` string, required
  - `handoff_code` string, required — Single-use code redeemable at /agent-loop/internal/agent-token/redeem for the sync-chat agent-svc JWT (caps=['sync-chat-turn']) bound to this turn. 60s TTL.

---

[API](https://skmtc.dev/tryscott/apis/one-shot-api.md) · [All operations](https://skmtc.dev/tryscott/apis/one-shot-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/tryscott/one-shot-api/revisions/28bdface01df/schema)
