---
title: "Run report asynchronously"
method: POST
path: "/api/data-retrieval"
tags: ["Reports"]
---

# Run report asynchronously

`POST /api/data-retrieval`

## Request

- Base URL: `https://api.payware.eu`
- URL: `https://api.payware.eu/api/data-retrieval`
- Auth: HTTP bearer

Executes a report generation request asynchronously and returns a request ID for tracking

## Request body

- DataRetrievalRequest
  - `reportUnitId` string, required
  - `ignorePagination` boolean
  - `locale` string
  - `dateFrom` string
  - `dateTo` string
  - `timeZone` string

## Response `200`

Report execution started successfully

## Other responses

- `400`: ERR_INVALID_DATA_RETRIEVAL_REQUEST - the request could not be interpreted.
- `401`: Unauthenticated - missing, malformed or expired credentials
- `403`: ERR_REPORT_NOT_AVAILABLE - the report exists but is not available to this caller's plan or partner type. Distinct from 404, which means no such report is registered at all. Call GET /api/data-retrieval/reports to see what this caller may actually run; that endpoint and this check share one rule, so they cannot drift.
- `404`: ERR_REPORT_UNIT_ID_NOT_FOUND - no report is registered under that id.
- `429`: Too many requests - the caller exceeded its per-partner rate limit. Carries errorCode ERR_RATE_LIMIT_EXCEEDED and a Retry-After header, in seconds. The request was not processed, so the identical request is safe to retry once the window has passed.
- `500`: Internal server error

---

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