📊 Report Resource

Financial reporting and document generation

Report generation and management system for financial statements and custom documentation. Supports asynchronous report processing, multiple output formats, and status tracking.

4
Endpoints
Async
Processing
3+
Export Formats
Real-time
Status Tracking
📈

Report Generation

Financial statements and custom documentation generation with flexible parameter configuration.

⏱️

Async Processing

Background report generation with status tracking and progress monitoring for large datasets.

📁

Multi-Format Export

Multiple output format support with configurable report parameters.

Available Endpoints

Core Operations

GET Get Reports Retrieve reports with status tracking and async progress
POST Create Report Generate report with configurable parameters
DELETE Delete Report Remove report from system
GET Get Report Status Track async generation status and progress

Core Data Transfer Objects

ReportDTO POST /Report endpoint Report request structure (2 properties): ReportName (required string identifying report type) + Parameters (flexible Dictionary<string,string> for report-specific options like date ranges, entity filters, output formats)

Asynchronous Report Generation Workflow

Report generation follows a 3-stage asynchronous workflow designed for large dataset processing without blocking API operations. This architecture enables long-running report operations while maintaining system responsiveness and providing progress tracking.

1

Request Submission

Submit report generation request via POST /Report with ReportName and Parameters dictionary

POST /Report
2

Background Processing

Report queued for async generation. Track progress via status polling endpoint

GET /Report/Status
3

Retrieval

Completed report can be accessed through GET /Report with reference parameter

GET /Report

Status Polling Pattern

Poll GET /Report/Status endpoint periodically during generation to track progress. Use the reference parameter to identify the specific report being tracked.

Business Rules & Constraints

Async Processing & Status Tracking

  • Report lifecycle: Reports are queued for background processing with status progression through generation stages
  • Status polling: GET /Report/Status endpoint enables tracking report generation progress
  • Reference parameter: All Report endpoints use a reference string parameter to identify specific report requests

Report Configuration

  • ReportName parameter: Required string identifying the report type to be generated
  • Parameters dictionary: Flexible Dictionary<string,string> structure for report-specific configuration including date ranges, entity filters, and output format options
  • Case-insensitive keys: Parameters dictionary uses case-insensitive string comparer for key lookup flexibility

Integration & Storage

  • Document integration: Generated reports can be stored as Document records for retrieval and management
  • Entity parameters: Reports support entity filtering through Parameters dictionary (BizEntityID, ProductID, InvestmentID, etc.)
  • Date range support: Reports accept date range parameters through Parameters dictionary for period-based filtering

Report Operations

  • Asynchronous generation: Reports process in background enabling long-running operations without blocking API requests
  • Status endpoint: Dedicated status tracking endpoint (GET /Report/Status) for monitoring generation progress
  • Report retrieval: Completed reports accessed via GET /Report with reference parameter
  • Report deletion: DELETE /Report removes generated reports with reference parameter