---
title: "Copy a report"
method: POST
path: "/report/{id}/copy"
tags: ["Reports"]
---

# Copy a report

`POST /report/{id}/copy`

## Request

- Base URL: `https://api.nullplatform.com`
- URL: `https://api.nullplatform.com/report/{id}/copy`
- Auth: HTTP bearer

Creates a personal copy of an existing report. The copy is created with `user` visibility.

## Path parameters

- `id` string, uuid, required

## Response `201`

The newly created copy.

- Report
  - `id` string, uuid: The unique report identifier.
  - `name` string: The report's display name.
  - `slug` string: A URL-friendly identifier for the report.
  - `description` string: A human-readable description of what the report shows.
  - `schema` object: A JSON Schema defining the report's input fields.
  - `ui_schema` object: A UI Schema controlling how the form renders.
  - `queries` Queries: A map of query IDs to query definitions. Each ID is a name you choose to identify the query within the report.
  - `visibility` 'user' | 'organization': Who can see the report. `user` keeps it private to its owner; `organization` shares it with the whole organization.
  - `created_at` string, date-time: The ISO 8601 timestamp of when the report was created.
  - `updated_at` string, date-time: The ISO 8601 timestamp of the report's last update.

## Other responses

- `4XX`: Client error responses due to invalid input or missing parameters.
- `5XX`: Internal server error due to an unexpected issue.

## Changes

- **2026-09-17** `43b3c1ecdfd8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/nullplatform/apis/nullplatform-api/changes/report/:id/copy/post.md)

---

[API](https://skmtc.dev/nullplatform/apis/nullplatform-api.md) - [All operations](https://skmtc.dev/nullplatform/apis/nullplatform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nullplatform/apis/nullplatform-api/revisions/d3f66bc633d4?raw)
