---
title: "Create Saved Report"
method: POST
path: "/print-mail/v1/reports"
tags: ["Reports"]
---

# Create Saved Report

`POST /print-mail/v1/reports`

Create a new saved report definition. Saved reports are SQL queries that can be executed later to generate
full exports or samples.

If you just want to do ad-hoc queries, you should use the `/reports/samples` endpoint.

## Request body

- ReportCreate — Base properties shared between Report creation and retrieval.
  - `sqlQuery` string, required — The SQL query defining the report.
  - `description` string — An optional user-friendly description for the report.
  - `metadata` object — Optional key-value metadata associated with the report.

## Response `201`

The created Report object.

- Report — Represents a saved Report definition.
  - `id` string, required — Unique identifier for the report.
  - `object` 'report', required — Always `report`.
  - `live` boolean, required — Indicates if the report is associated with the live or test environment.
  - `sqlQuery` string, required — The SQL query defining the report.
  - `description` string — An optional user-friendly description for the report.
  - `metadata` object — Optional key-value metadata associated with the report.
  - `createdAt` string, date-time, required — Timestamp when the report was created.
  - `updatedAt` string, date-time, required — Timestamp when the report was last updated.

## Other responses

- `400` — The created Report object.
- `401` — The created Report object.
- `404` — The created Report object.
- `422` — The created Report object.
- `429` — The created Report object.
- `500` — The created Report object.

## Changes

- **2026-05-01** `c8fedcbd705e` — 4 warning, 2 info
  - added the new `internal_server_error` enum value to the `error/type` response property for the response status `500`
  - added the new `not_found_error` enum value to the `error/type` response property for the response status `404`
  - added the new `rate_limit_exceeded_error` enum value to the `error/type` response property for the response status `429`
  - added the new `validation_error` enum value to the `error/type` response property for the response status `400`
  - …2 more

[Change history](https://skmtc.dev/postgrid/apis/postgrid-address-verification-api/changes/print-mail/v1/reports/post.md)

---

[API](https://skmtc.dev/postgrid/apis/postgrid-address-verification-api.md) · [All operations](https://skmtc.dev/postgrid/apis/postgrid-address-verification-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/postgrid/postgrid-address-verification-api/revisions/537d2bbc624a/schema)
