---
title: "Create a performance report"
method: POST
path: "/rest/api/v1/reports/performance"
tags: ["Report API"]
---

# Create a performance report

`POST /rest/api/v1/reports/performance`

## Request body

- ReportPerformanceParametersDTO — Parameters required for generating a performance report over a specified time period for one or more resources.
  - `id` string[], required — List of unique identifiers for the resources (e.g., account IDs, project IDs, or feature IDs) for which the performance report is requested.
  - `idType` 'ACCOUNT' | 'PROJECT' | 'FEATURE', required — Type of resource identified by the IDs, indicating whether the report pertains to accounts, projects, or specific features.
  - `start` string, date-time, required — Start date for the reporting period.
  - `stop` string, date-time, required — End date for the reporting period.

## Response `200`

OK

- ReportPerformanceDTO — DTO representing requested performance metrics for a list of accounts.
  - `accounts` AccountPerformanceDTO[] — List of performance metrics for each account, as defined in AccountPerformanceDTO.
    - `accountId` string, uuid — Unique identifier of the account.
    - `balance` number — Account's balance as recorded at 00:00 UTC.
    - `currency` string — Currency in which the account balance and equity are denominated.
    - `currentDrawdown` number — Drawdown at 00:00 UTC, indicating the peak-to-trough loss as of the recorded time.
    - `customerEmail` string — Customer's email
    - `date` string, date-time — Date of the performance record, reflecting the 00:00 UTC data capture time.
    - `deleted` boolean — Indicates whether the account is marked as deleted.
    - `equity` number — Account's equity as recorded at 00:00 UTC, reflecting current unrealized profits/losses at that time.
    - `history` PositionDTO[] — List of historical positions relevant to the account's performance as of the recorded date.
      - `brokerTimeClose` string — Original time string from the broker
      - `brokerTimeOpen` string — Original time string from the broker
      - `closePrice` number
      - `closeTime` string, date-time — ISO 8601
      - `comment` string
      - `commission` number
      - `dealType` 'DealBuy' | 'DealSell' | 'Balance' | 'Credit' | 'Charge' | 'Correction' | 'Bonus' | 'Commission' | 'DailyCommission' | 'MonthlyCommission' | 'DailyAgentCommission' | 'MonthlyAgentCommission' | 'InterestRate' | 'CanceledBuy' | 'CanceledSell' | 'Dividend' | 'FrankedDividend' | 'Tax' | 'AgentCommission' | 'SoCompensation' | 'SoCreditCompensation'
      - `id` string
      - `magicNumber` string — Magic number carried by the position, as a string. Absent/null when no magic number was set on the order (a magic of 0 on the broker side is reported as absent rather than as the string "0").
      - `netProfit` number
      - `openPrice` number
      - `openTime` string, date-time — ISO 8601
      - `orderType` 'Buy' | 'Sell' | 'BuyLimit' | 'SellLimit' | 'BuyStop' | 'SellStop'
      - `placedType` 'Manually' | 'Mobile' | 'Web' | 'ByExpert' | 'OnSL' | 'OnTP' | 'OnStopOut' | 'OnRollover' | 'OnVmargin' | 'OnSplit' | 'ByDealer' | 'Gateway' | 'Signal' | 'Settlement' | 'Transfer' | 'Sync' | 'ExternalService' | 'Migration'
      - `profit` number
      - `requestId` string
      - `state` string
      - `stopLoss` number
      - `swap` number
      - `symbol` string
      - `takeProfit` number
      - `volume` number
    - `netProfits` object — Monthly net profit data, where the key is the month (as an integer starting at 1 for January) and the value is the net profit earned in that month.

---

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