---
title: "List business reports"
method: GET
path: "/businesses/{business_id}/reports"
tags: ["Reports"]
---

# List business reports

`GET /businesses/{business_id}/reports`

## Request

- Base URL: `https://sandbox.upvest.co`
- URL: `https://sandbox.upvest.co/businesses/{business_id}/reports`
- Auth: OAuth 2 (client credentials, token URL `https://sandbox.upvest.co/auth/token`, scopes: `reports:read`, `reports:admin`)

Returns a paginated list of reports generated for the business identified by `business_id`.

Use the `offset` and `limit` query parameters to page through results; `meta.total_count` gives the total number of matching reports. Use `type` and `instrument` to filter results, and `start_date`/`end_date` to limit the range of report generation dates.

## Query parameters

- `type` 'ACCOUNT_CLOSING' | 'ACCOUNT_OPENING' | 'AD_HOC_ACCOUNT_STATEMENT' | 'ANNUAL_INCOME_STATEMENT' | 'ANNUAL_TAX_STATEMENT' | 'BANK_ACCOUNT_CONNECTED' | 'BUY_ORDER' | 'CANCELLED_ORDER' | 'CORPORATE_ACTION_CASH_TRANSACTION' | 'CORPORATE_ACTION_SECURITY_TRANSACTION' | 'DIRECT_DEBIT_MANDATE' | 'EX_POST_COST' | 'FEE_COLLECTION' | 'FRENCH_IFU' | 'GENERIC_COMMUNICATION' | 'INCOME_DISTRIBUTION' | 'LOSS_THRESHOLD' | 'MONTHLY_BILLING_STATEMENT' | 'ORDER_EX_ANTE_COST' | 'ORDER_EX_ANTE_COST_SAVINGS_PLAN' | 'QUARTERLY_ACCOUNT_STATEMENT' | 'REVOKED_ORDER' | 'SECURITIES_TRANSFER_INCOMING' | 'SECURITIES_TRANSFER_OUTGOING' | 'SELL_ORDER' | 'TAX_CONSOLIDATED_CERTIFICATE_UK' | 'TAX_PAYMENT' | 'TAX_PREPAYMENT_DE' | 'TAX_PREPAYMENT_DE_CANCELLATION' | 'TAX_REFUND': Report type * ACCOUNT_CLOSING - Securities account closure * ACCOUNT_OPENING - Securities account opening * AD_HOC_ACCOUNT_STATEMENT - Ad hoc account statement * ANNUAL_INCOME_STATEMENT - Annual tax income statement ("Erträgnisaufstellung") * ANNUAL_TAX_STATEMENT - Annual tax reporting * BANK_ACCOUNT_CONNECTED - Connect reference bank account * BUY_ORDER - Buy order * CANCELLED_ORDER - Cancelled buy or sell order (not yet executed, user cancels or trading venue cancelled) * CORPORATE_ACTION_CASH_TRANSACTION - cash transaction document (after corporate action) * CORPORATE_ACTION_SECURITY_TRANSACTION - security transaction document (after corporate action) * DIRECT_DEBIT_MANDATE - Creation of SEPA direct debit mandate * EX_POST_COST - Ex-post cost report * FEE_COLLECTION - Intake of service fees * FRENCH_IFU - French tax statement (Imprimé fiscal unique) * GENERIC_COMMUNICATION - Generic communication * INCOME_DISTRIBUTION - Income distribution report * LOSS_THRESHOLD - Notification that a holding has depreciated by 10%, or a multiple thereof, against its purchase value * MONTHLY_BILLING_STATEMENT - Monthly billing activities statement * ORDER_EX_ANTE_COST - Ex-ante cost report for a single order * ORDER_EX_ANTE_COST_SAVINGS_PLAN - Ex-ante cost report for a savings plan order * QUARTERLY_ACCOUNT_STATEMENT - Quarterly account statement * REVOKED_ORDER - Revoked buy or sell order ("Storno") * SECURITIES_TRANSFER_INCOMING - Securities are transferred in * SECURITIES_TRANSFER_OUTGOING - Securities are being transferred out * SELL_ORDER - Sell order * TAX_CONSOLIDATED_CERTIFICATE_UK - UK Consolidated Tax Certificate * TAX_PAYMENT - Tax payment document * TAX_PREPAYMENT_DE - German tax prepayment (Vorabpauschale) * TAX_PREPAYMENT_DE_CANCELLATION - German tax prepayment (Vorabpauschale) cancellation * TAX_REFUND - Tax refund document (after tax optimization)
- `instrument` union
  - string: An International Securities Identification Number in URN form, prefixed with `isin:`.
  - string: A unique identifier in URN form, prefixed with `uuid:`.
- `start_date` string, date: Returns reports generated starting from and including this date (UTC)
- `end_date` string, date: Returns reports generated up until this date (UTC)
- `sort` 'id' | 'created_at'
- `order` 'ASC' | 'DESC'
- `limit` integer
- `offset` integer

## Response `200`

Reports list

- object: Paginated response containing the reports generated for a business.
  - `meta` object, required: Offset/limit pagination metadata for a list response whose sort field and order are always returned.
    - `offset` integer, required: Amount of resource to offset in the response.
    - `limit` integer, required: Total limit of the response.
    - `count` integer, required: Count of the resources returned in the response.
    - `total_count` integer, required: Total count of all the resources.
    - `sort` string, required: The field that the list is sorted by.
    - `order` 'ASC' | 'DESC', required: The ordering applied to the list. * ASC — Ascending order. * DESC — Descending order.
  - `data` object[], required: List of reports generated for the business
    - `id` string, uuid, required: The unique identifier of the report, as a UUID.
    - `created_at` string, date-time, required: Date and time when the resource was created. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
    - `business_id` string, uuid, required: Unique identifier for the business.
    - `type` 'ACCOUNT_CLOSING' | 'ACCOUNT_OPENING' | 'AD_HOC_ACCOUNT_STATEMENT' | 'ANNUAL_INCOME_STATEMENT' | 'ANNUAL_TAX_STATEMENT' | 'BANK_ACCOUNT_CONNECTED' | 'BUY_ORDER' | 'CANCELLED_ORDER' | 'CORPORATE_ACTION_CASH_TRANSACTION' | 'CORPORATE_ACTION_SECURITY_TRANSACTION' | 'DIRECT_DEBIT_MANDATE' | 'EX_POST_COST' | 'FEE_COLLECTION' | 'FRENCH_IFU' | 'GENERIC_COMMUNICATION' | 'INCOME_DISTRIBUTION' | 'LOSS_THRESHOLD' | 'MONTHLY_BILLING_STATEMENT' | 'ORDER_EX_ANTE_COST' | 'ORDER_EX_ANTE_COST_SAVINGS_PLAN' | 'QUARTERLY_ACCOUNT_STATEMENT' | 'REVOKED_ORDER' | 'SECURITIES_TRANSFER_INCOMING' | 'SECURITIES_TRANSFER_OUTGOING' | 'SELL_ORDER' | 'TAX_CONSOLIDATED_CERTIFICATE_UK' | 'TAX_PAYMENT' | 'TAX_PREPAYMENT_DE' | 'TAX_PREPAYMENT_DE_CANCELLATION' | 'TAX_REFUND', required: Report type * ACCOUNT_CLOSING - Securities account closure * ACCOUNT_OPENING - Securities account opening * AD_HOC_ACCOUNT_STATEMENT - Ad hoc account statement * ANNUAL_INCOME_STATEMENT - Annual tax income statement ("Erträgnisaufstellung") * ANNUAL_TAX_STATEMENT - Annual tax reporting * BANK_ACCOUNT_CONNECTED - Connect reference bank account * BUY_ORDER - Buy order * CANCELLED_ORDER - Cancelled buy or sell order (not yet executed, user cancels or trading venue cancelled) * CORPORATE_ACTION_CASH_TRANSACTION - cash transaction document (after corporate action) * CORPORATE_ACTION_SECURITY_TRANSACTION - security transaction document (after corporate action) * DIRECT_DEBIT_MANDATE - Creation of SEPA direct debit mandate * EX_POST_COST - Ex-post cost report * FEE_COLLECTION - Intake of service fees * FRENCH_IFU - French tax statement (Imprimé fiscal unique) * GENERIC_COMMUNICATION - Generic communication * INCOME_DISTRIBUTION - Income distribution report * LOSS_THRESHOLD - Notification that a holding has depreciated by 10%, or a multiple thereof, against its purchase value * MONTHLY_BILLING_STATEMENT - Monthly billing activities statement * ORDER_EX_ANTE_COST - Ex-ante cost report for a single order * ORDER_EX_ANTE_COST_SAVINGS_PLAN - Ex-ante cost report for a savings plan order * QUARTERLY_ACCOUNT_STATEMENT - Quarterly account statement * REVOKED_ORDER - Revoked buy or sell order ("Storno") * SECURITIES_TRANSFER_INCOMING - Securities are transferred in * SECURITIES_TRANSFER_OUTGOING - Securities are being transferred out * SELL_ORDER - Sell order * TAX_CONSOLIDATED_CERTIFICATE_UK - UK Consolidated Tax Certificate * TAX_PAYMENT - Tax payment document * TAX_PREPAYMENT_DE - German tax prepayment (Vorabpauschale) * TAX_PREPAYMENT_DE_CANCELLATION - German tax prepayment (Vorabpauschale) cancellation * TAX_REFUND - Tax refund document (after tax optimization)
    - `substituted_report_id` string, uuid, required: References report that has been replaced by this one.
    - `data` object: The contents of a report, including the account it relates to and references to the resources that triggered it.
      - `account` object: The account that the report relates to.
        - `id` string, uuid: Universally Unique Identifier (UUID) of the account.
      - `references` object[]: Identifiers of the resources that the report relates to, such as the order or corporate action that triggered it.
        - `id` string, uuid: The unique identifier of the referenced resource, as a UUID.
        - `type` 'CORPORATE_ACTION_TRANSACTION_ID' | 'ACCOUNT_GROUP_ID' | 'ACCOUNT_ID' | 'ORDER_ID': Report reference type * CORPORATE_ACTION_TRANSACTION_ID - Corporate action transaction identifier * ACCOUNT_GROUP_ID - Account group identifier * ACCOUNT_ID - Account identifier * ORDER_ID - Order identifier

## Other responses

- `400`: Bad Request. The incoming request had a malformed parameter/object.
- `401`: Unauthorized. The caller has not been authenticated.
- `403`: Forbidden. The caller has been authenticated but is not allowed to take the requested action.
- `404`: Not Found. The requested resource could not be found.
- `406`: Not Acceptable. The resource does not have a current representation that would be acceptable to the user agent. "Accept" header defined unsupported value.
- `429`: Too Many Requests. The caller has exceeded their quota for the time period and has been throttled.
- `500`: Internal Server Error. The service encountered an unexpected error.
- `503`: Service Unavailable. The service handling for this request cannot be reached at this time.
- `504`: Gateway Timeout. The service gateway has reached its internal timeout.

## Changes

- **2026-09-08** `65bf4621b0c6`: 1 breaking, 2 warning, 31 info
  - the `query` request parameter `type` was restricted to a list of enum values
  - added the new `ORDER_EX_ANTE_COST` enum value to the `data/items/type` response property for the response status `200`
  - added the new `ORDER_EX_ANTE_COST_SAVINGS_PLAN` enum value to the `data/items/type` response property for the response status `200`
  - added the new enum value `ACCOUNT_CLOSING` to the `query` request parameter `type`
  - …30 more
- **2026-08-07** `eb94c0091916`: 1 warning, 1 info
  - added the new `LOSS_THRESHOLD` enum value to the `data/items/type` response property for the response status `200`
  - added the enum value `LOSS_THRESHOLD` to the property `oneOf[subschema #1: Report type]/` of the `query` request parameter `type`

[Operation history](https://skmtc.dev/upvest/apis/upvest-investment-api/changes/businesses/:business_id/reports/get.md)

---

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