---
title: "Copy a file between projects"
method: POST
path: "/files/copy"
tags: ["Files"]
---

# Copy a file between projects

`POST /files/copy`

Copies a source file into another project, using the source file path as the target path.

## Request body

- CopyFileBody
  - `sourceProjectId` string, uuid, required — Project that contains the source file.
  - `targetProjectId` string, uuid, required — Project to copy the file into.
  - `sourceFilePath` string, required — File path within the source project. The same normalized path is used in the target project.

## Response `201`

File copied

- CopyFileResponse
  - `file` FileReference, required
    - `projectId` string, uuid, required — Project that contains the file.
    - `path` string, required — File path within the project.

## Other responses

- `400` — Validation error
- `401` — Unauthorized
- `403` — Insufficient permissions
- `404` — Project or file not found
- `409` — Project is suspended or target file already exists in the destination project
- `429` — Rate limit exceeded

---

[API](https://skmtc.net/deepnote/apis/deepnote-public-api.md) · [All operations](https://skmtc.net/deepnote/apis/deepnote-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/deepnote/deepnote-public-api/revisions/726970fd2992/schema)
