# Create Customer Report Request

This endpoint triggers an asynchronous process to create a report request based on the provided parameters. Available report types are:

## Type BANK_STATEMENT_REPORT

End-of-day bank statement for the pocket’s bank account, exported in ISO 20022 camt.053 format. Transactions reported in this statement include fund deposits and withdrawals, incoming and outgoing third-party payments (when applicable), fees, automated sweep transactions between the pocket’s bank account and its linked brokerage account.

_Note:_ since Jiko automatically sweeps funds between the bank account and the associated brokerage account in the pocket, the bank account’s end-of-day balance is always 0. To report on balances held with Jiko, we invite you to use:

- Either the Brokerage statement, to import the value of held T-bills in the cash position of your treasury management system, reported as the closing balance of an account,

- or the Trade report, to import individual buy and sell transactions into your treasury management system and derive the corresponding position.

Valid output_formats values: CAMT053.

## Type BROKERAGE_STATEMENT_REPORT

End-of-day statement for the pocket’s brokerage account, exported in ISO 20022 camt.053 format. With the opening value and closing value of the T-bills held in the pocket on the selected reporting date, represented as the account balance. Values are based on end-of-day market prices, or on the current market price if the report is generated before day-end.

The statement also includes the following records that explain the change between the opening and closing values:

- Additions: new funds deposited into the brokerage account.

- Subtractions: funds withdrawn from the brokerage account.

- Gains/Losses from T-bills held in the account.

- Fees charged and deducted from the brokerage account.

Valid output_formats values: CAMT053.

## Type TRADE_REPORT

List of T-bill buy & sell trades within a user-defined range of trade dates, exported in CSV format. Each trade in the file includes three categories of information:

- Security master data: CUSIP, issuer, issue date, maturity date.

- Trading entity parameters: transaction code, custodian details.

- Trade details: buy/sell indicator, trade date, price, amount, reference.

The date ranges filter has a maximum range of 31 days. Optionally, the date range filter can be configured to be based on either settlement dates, or book dates. 

Valid output_formats values: KYRIBA_CSV, CSV.

## Type SECURITY_PRICE_REPORT

End-of-day security prices within a user-defined range of dates, exported in CSV format. With:

- An “SE” field identifying the entry as a security price.

- The name of the price provider: “JIKO”.

- The CUSIP of the security.

- The pricing date.

- The end-of-day price.

Valid output_formats values: KYRIBA_CSV.

## Type POSITION_SUMMARY_REPORT

Provides a snapshot of holdings as of a user-selected date, showing CUSIP-level positions by pocket along with associated cash values. The report includes the following key fields: Pocket, CUSIP, Quantity, Market Price, Market Value, and Historical Cost Value.
Customers use this report to export pocket-level valuations to downstream systems and to reconcile imported buy and sell transactions against the quantities reflected in the Position Summary

Valid output_formats values: PDF, CSV.

Endpoint: POST /api/v1/report-requests/
Version: Version: 2edadba5
Security: CodeBearer

## Request fields (application/json):

  - `id` (string, required)

  - `report` (any, required) — one of (discriminator: type):
    - BANK_STATEMENT_REPORT:
      - `pocket_ids` (array, required)
      - `date` (string, required)
      - `type` (string, required)
    - BROKERAGE_STATEMENT_REPORT:
      - `date` (string, required)
      - `pocket_ids` (array, required)
      - `type` (string, required)
    - POSITION_SUMMARY_REPORT:
      - `pocket_ids` (array, required)
      - `date` (string, required)
      - `type` (string, required)
    - SECURITY_PRICE_REPORT:
      - `securities` (array)
      - `start_date` (string, required)
      - `end_date` (string, required)
      - `type` (string, required)
    - TRADE_REPORT:
      - `pocket_ids` (array, required)
      - `start_date` (string, required)
      - `end_date` (string, required)
      - `filter_by_date_type` (string)
        Enum: "trade_date", "settlement_date", "book_date"
      - `include_maturity_events` (boolean)
      - `type` (string, required)

  - `output_formats` (any)
    If specified, renders only the specified formats. If not specified, renders all the available formats for the given report. The available formats differ depending on the report being requested. For a description of what formats are available per report, please refer to the Create Report Request endpoint description.

## Response 422 fields (application/json):

  - `detail` (array)

  - `detail.loc` (array, required)

  - `detail.msg` (string, required)

  - `detail.type` (string, required)

  - `detail.input` (any)

  - `detail.ctx` (object)


## Response 201 fields

## Response 404 fields
