---
title: "Duplicate Trajectory"
method: POST
path: "/v1/trajectories/{trajectory_id}/duplicate"
tags: ["trajectories"]
---

# Duplicate Trajectory

`POST /v1/trajectories/{trajectory_id}/duplicate`

Duplicate a trajectory with fresh copies of all images.

Creates a new trajectory with the same data as the source, but with
all images copied to new paths in storage (copy-on-write semantics).
The new trajectory starts unapproved and gets a name like "Original Name (Copy)".

## Path parameters

- `trajectory_id` string, uuid, required

## Headers

- `Idempotency-Key` string

## Response `201`

Successful Response

- TrajectoryResponse — Trajectory response schema
  - `name` string, nullable
  - `description` string, nullable
  - `workflow_id` string, uuid, required
  - `run_id` string, uuid, nullable — Optional run that created this trajectory
  - `trajectory_data` object[], required
  - `dimensions` object, required — Display dimensions when trajectory was recorded
  - `original_input_values` object, nullable — Original input values used when trajectory was created
  - `is_approved` boolean, required
  - `has_been_approved` boolean, required
  - `is_generated` boolean, required
  - `is_main` boolean, required
  - `id` string, uuid, required
  - `user_id` string, uuid, nullable
  - `organization_id` string, nullable
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/cyberdesk-hq/apis/cyberdesk-cloud.md) · [All operations](https://skmtc.net/cyberdesk-hq/apis/cyberdesk-cloud/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cyberdesk-hq/cyberdesk-cloud/versions/830d2f48963d/schema)
