Fetch a list of reports

Request
GET /reports
Request in API docs Try yourself with our Postman Collection.
Response
HTTP 200 - Example response body for all reports for a given
[
    {
        "id": "2f49c894-3edd-4835-a8d2-6862bfa42d51",
        "type": "payments",
        "status": "FINISHED",
        "createdAt": "2023-08-14T11:23:10+00:00",
        "generatedAt": "2023-08-14T11:23:10+00:00"
    },
    {
        "id": "95c21954-0608-4e6d-822e-2467a8c8a244",
        "type": "payments",
        "status": "FINISHED",
        "createdAt": "2023-08-11T07:51:21+00:00",
        "generatedAt": "2023-08-11T07:51:25+00:00"
    }
]

The endpoint returns a list of all reports generated by this *customer* + *application* pair, which refers to all reports generated using the same combination of customer and application credentials.

If a merchant has multiple applications, they must employ the same application when requesting and downloading a report. However, they can still use separate applications for payment processing and reporting.

Merchants cannot access reports that were requested by other merchants, even if these merchants are within the same hierarchy.

Think of it as similar to Fuzebox reporting: Adam cannot view reports requested by Zhenia, and vice versa. Similarly, Adidas Poland will not have access to reports requested by Adidas UK, even if they use the same application credentials. The differentiation lies in the distinct customer usernames and passwords.

The GET /reports endpoint includes an optional query parameter: `customerId`.

When provided, this parameter ensures that the endpoint returns a list of reports specifically requested for the given customer (when **`customerId`** was included in the body for the POST /reports/payments).”

The endpoint returns a list of reports, including their ID, type, status, creation timestamp, and generation timestamp (if generated).