> ## Documentation Index
> Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Request or check a historical PnL report for a VaR observation date.

> Returns the existing readiness value when report information is already available. Otherwise it accepts
the requested historical PnL report and returns `ReportReady` as `false`; the same request can be
used to observe readiness later. No completion time, retry interval, cancellation, or retention promise
is made. An unusable observation date is reported in the response envelope.



## OpenAPI

````yaml /risk-and-pricing/atoti-risk-services/apis-endpoints/openapi/openapi.mintlify.json post /api/VarReportQuery/RunHistoricalPnlReport
openapi: 3.0.4
info:
  title: Derivitec Api 1.0
  version: '1.0'
servers:
  - url: https://api.riskportal.activeviam.com
security:
  - oauth2: []
  - apikey: []
tags:
  - name: AdminUser
  - name: AtotiReport
  - name: AtotiSession
  - name: BloombergOAuth
  - name: Bond
  - name: BondYieldCurvePage
  - name: BookAccess
  - name: Books
  - name: Commodity
  - name: Counterparties
  - name: Currencies
  - name: Equity
  - name: EquityDividend
  - name: EquityPage
  - name: FeatureFlag
  - name: Fx
  - name: FxPage
  - name: GroupAccess
  - name: Home
  - name: LegacyPosition
  - name: MarketData
  - name: MarketDataProvider
  - name: MarketDataProviderAccess
  - name: Meta
  - name: Notification
  - name: Organisation
  - name: PnLReport
  - name: PortfolioAccess
  - name: Portfolios
  - name: Position
  - name: PositionFilter
  - name: PricingEnvironment
  - name: PricingEnvironmentAccess
  - name: RateAsset
  - name: RateAssetPage
  - name: Report
  - name: ReportDefinition
  - name: ReportHistoryLauncherQuery
  - name: ReportLauncher
  - name: ReportQuery
  - name: ReportQueryViewUser
  - name: ReportRestriction
  - name: ReportView
  - name: RiskReport
  - name: Tradable
  - name: TradeBooking
  - name: User
  - name: VarReport
  - name: VarReportQuery
  - name: YieldCurvePage
paths:
  /api/VarReportQuery/RunHistoricalPnlReport:
    post:
      tags:
        - VarReportQuery
      summary: Request or check a historical PnL report for a VaR observation date.
      description: >-
        Returns the existing readiness value when report information is already
        available. Otherwise it accepts

        the requested historical PnL report and returns `ReportReady` as
        `false`; the same request can be

        used to observe readiness later. No completion time, retry interval,
        cancellation, or retention promise

        is made. An unusable observation date is reported in the response
        envelope.
      operationId: RunHistoricalPnlReport
      requestBody:
        description: >-
          The body containing the opaque `ReportId`, optional VaR selection
          fields, and `ObservationDate` as a date-time with no declared
          non-default range.
        content:
          application/json-patch+json:
            schema:
              $ref: >-
                #/components/schemas/ApiVarReportQueryRunHistoricalPnlReportRequest
          application/json:
            schema:
              $ref: >-
                #/components/schemas/ApiVarReportQueryRunHistoricalPnlReportRequest
          text/json:
            schema:
              $ref: >-
                #/components/schemas/ApiVarReportQueryRunHistoricalPnlReportRequest
          application/*+json:
            schema:
              $ref: >-
                #/components/schemas/ApiVarReportQueryRunHistoricalPnlReportRequest
      responses:
        '200':
          description: >-
            Returns whether the historical PnL report is ready, or an
            unsuccessful response envelope for an unusable observation date.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ApiVarReportQueryRunHistoricalPnlReportResponse
        '400':
          description: BadRequest
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
        - oauth2: []
        - apikey: []
components:
  schemas:
    ApiVarReportQueryRunHistoricalPnlReportRequest:
      required:
        - $type
      type: object
      properties:
        confidence_level:
          type: number
          description: >-
            Optional VaR confidence-level override expressed as a decimal
            fraction; null retains the report's configured level.
          format: double
          nullable: true
          example: 0.99
        row_query:
          $ref: '#/components/schemas/FilterBase'
        weighting_var_definition:
          $ref: '#/components/schemas/WeightingVarDefinition'
        row_restriction_filter:
          $ref: '#/components/schemas/FilterBase'
        full_report_filter:
          $ref: '#/components/schemas/MultiFilter'
        report_configuration:
          $ref: '#/components/schemas/VarReportConfiguration'
        report_id:
          type: string
          description: >-
            Opaque identifier of the report run to retrieve or query. The value
            must not be null or empty.
          nullable: true
        portfolio_type:
          enum:
            - derivitec
            - enfusion
            - orchestrade
            - liquidity_book
            - maia
            - fund_studio
            - not_set
          type: string
          description: >-
            Portfolio category used to resolve the requested portfolio. It may
            be omitted when the portfolio name resolves unambiguously.
          nullable: true
        observation_date:
          type: string
          description: Historical observation date for which P&L report data is requested.
          format: date-time
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.VarReportQuery.ApiVarReportQueryRunHistoricalPnlReportRequest,
              Derivitec.Web.Core
      additionalProperties: false
      description: Requests historical P&L report data for one observation date.
    ApiVarReportQueryRunHistoricalPnlReportResponse:
      required:
        - $type
      type: object
      properties:
        is_success:
          type: boolean
          description: >-
            Whether the operation completed successfully. The default is `true`;
            error outcomes set it to `false`.
          example: true
        error_messages:
          type: array
          items:
            type: string
          description: >-
            Messages explaining operation-level failures. The collection is
            empty by default.
          nullable: true
        report_ready:
          type: boolean
          description: >-
            `true` when the requested report data is loaded and ready; `false`
            when processing has been requested or is still incomplete.
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.VarReportQuery.ApiVarReportQueryRunHistoricalPnlReportResponse,
              Derivitec.Web.Core
      additionalProperties: false
      description: Reports whether the requested historical P&L report is ready to query.
    FilterBase:
      description: Base selection criterion for a named report-data field.
      discriminator:
        propertyName: $type
        mapping:
          Derivitec.Web.Core.Filters.Filter, Derivitec.Web.Core: '#/components/schemas/FilterMintlifyShape'
          Derivitec.Web.Core.Filters.FilterBase, Derivitec.Web.Core: '#/components/schemas/FilterBaseMintlifyShape'
          Derivitec.Web.Core.Filters.MultiFilter, Derivitec.Web.Core: '#/components/schemas/MultiFilter'
          Derivitec.Web.Core.Filters.StringFilter, Derivitec.Web.Core: '#/components/schemas/StringFilter'
      oneOf:
        - $ref: '#/components/schemas/FilterMintlifyShape'
        - $ref: '#/components/schemas/FilterBaseMintlifyShape'
        - $ref: '#/components/schemas/MultiFilter'
        - $ref: '#/components/schemas/StringFilter'
    WeightingVarDefinition:
      required:
        - $type
      type: object
      properties:
        active:
          type: boolean
          description: Whether the VaR weighting configuration is enabled.
        window_length:
          type: integer
          description: Window-length value; no unit is established here.
          format: int32
        decay_period:
          type: integer
          description: Decay-period value; no unit is established here.
          format: int32
        scheme:
          enum:
            - exponentially_weighted
            - filtered_historical
          type: string
          description: Weighting scheme selected for the historical VaR configuration.
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.Reports.WeightingVarDefinition,
              Derivitec.Web.Core
      additionalProperties: false
      description: Configuration used to select VaR weighting behaviour.
    MultiFilter:
      required:
        - $type
      type: object
      properties:
        field:
          type: string
          description: Name of the report-data field evaluated by this criterion.
          nullable: true
        operator:
          enum:
            - not_set
            - and
            - or
          type: string
          description: Logical rule used to combine the child criteria.
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/FilterBase'
          description: >-
            Child criteria evaluated by the selected logical operator; nested
            groups are permitted.
          nullable: true
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.Filters.MultiFilter, Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Nested filter group that combines child criteria with a logical
        operator.
    VarReportConfiguration:
      required:
        - $type
      type: object
      properties:
        name:
          type: string
          description: Display name for this report-query or export configuration.
          nullable: true
          example: Default
        row_query:
          $ref: '#/components/schemas/FilterBase'
        confidence_level:
          type: number
          description: >-
            Optional VaR confidence-level override expressed as a decimal
            fraction; null retains the report's configured level.
          format: double
          nullable: true
          example: 0.99
        weighting_var_definition:
          $ref: '#/components/schemas/WeightingVarDefinition'
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.VarReportConfiguration, Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Optional named overrides used when querying or exporting a historical
        VaR report.
    FilterMintlifyShape:
      required:
        - $type
      type: object
      properties:
        field:
          type: string
          description: Name of the report-data field evaluated by this criterion.
          nullable: true
        type:
          type: string
          nullable: true
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.Filters.Filter, Derivitec.Web.Core
      additionalProperties: false
    FilterBaseMintlifyShape:
      required:
        - $type
      type: object
      properties:
        field:
          type: string
          description: Name of the report-data field evaluated by this criterion.
          nullable: true
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.Filters.FilterBase, Derivitec.Web.Core
      additionalProperties: false
      description: Base selection criterion for a named report-data field.
    StringFilter:
      required:
        - $type
      type: object
      properties:
        field:
          type: string
          description: Name of the report-data field evaluated by this criterion.
          nullable: true
        type:
          type: string
          nullable: true
        filter:
          type: string
          nullable: true
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.Filters.StringFilter, Derivitec.Web.Core
      additionalProperties: false
  securitySchemes:
    oauth2:
      type: oauth2
      description: >-
        OAuth2 access-token requested from AWS Cognito and provided as a Auth
        Bearer header
      flows:
        implicit:
          authorizationUrl: https://auth.riskportal.derivitec.com/oauth2/authorize
          scopes: {}
    apikey:
      type: apiKey
      description: API-Key requested via the site and provided as a header
      name: x-api-key
      in: header

````