---
title: "Upsert Cursor"
method: PUT
path: "/agent-loop/workspaces/{workspace_id}/cursor"
tags: ["agent-loop"]
---

# Upsert Cursor

`PUT /agent-loop/workspaces/{workspace_id}/cursor`

Upsert workspace cursor — tracks where this user is in the Turn DAG.

## Path parameters

- `workspace_id` string, required

## Request body

- UpsertCursorRequest
  - `turn_id` string, nullable
  - `snapshot_id` string, nullable

## Response `200`

Successful Response

- CursorResponse
  - `workspace_id` string, required
  - `user_id` string, required
  - `turn_id` string, nullable, required
  - `current_snapshot_id` string, nullable
  - `updated_at` string, date-time, required

## Other responses

- `422` — Validation Error

---

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