---
title: "Create a report"
method: POST
path: "/v4/reports"
tags: ["Reports"]
---

# Create a report

`POST /v4/reports`

Submits a new report run for the specified report type and parameters. The report executes asynchronously; poll the returned report ID to check status.

## Request body

- CreateReportRequest
  - `display_name` string, nullable, required
  - `format` 'CSV' | 'HEADLESS_CSV' | 'HEADLESS_PSV' | 'JSON' | 'JSONL' | 'PSV' | 'XLSX', nullable, required
  - `formats` string[], nullable, required
  - `name` string, required
  - `parameters` object, required
  - `report_type` string, required
  - `rerun` boolean, nullable, required
  - `scopes` string[], nullable, required
  - `sftp_report_name` string, nullable, required
  - `sftp_server_id` string, nullable, required
  - `tags` string[], nullable, required

## Response `200`

Successful response

- ReportResponse
  - `completed_date` string, nullable, required
  - `display_name` string, required
  - `download_uri` string, nullable, required
  - `formats` string[], required
  - `name` string, required
  - `report_id` string, required
  - `report_type` string, required
  - `tags` string[], required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `402` — Payment Required
- `403` — Forbidden
- `415` — Unsupported Media Type
- `429` — Too Many Requests

---

[API](https://skmtc.net/extole/apis/integration-api-server-to-extole.md) · [All operations](https://skmtc.net/extole/apis/integration-api-server-to-extole/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/extole/integration-api-server-to-extole/revisions/c16e62e66755/schema)
