Overview Report
GET /api/v1/reports/overview
Returns aggregated transaction data showing inflow/outflow sums and counts grouped by time period. This endpoint provides the same data as the Overview/Heatmap Report in the web UI, which visualizes transaction activity over time.
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| date_from | string | Yes | - | Start date (YYYY-MM-DD) |
| date_to | string | Yes | - | End date (YYYY-MM-DD) |
| group_by | string | No | day | Grouping period (day/week/month/year) |
| accounts | string | No | all | Comma-separated account IDs to filter |
| particulars | string | No | - | Filter by particulars (partial match) |
| entity | string | No | - | Filter by entity (partial match, use 'empty' for null/empty) |
| category | string | No | - | Filter by category (partial match, use 'empty' for null/empty) |
| comments | string | No | - | Filter by comments (partial match, use 'empty' for null/empty) |
Example Request
curl -X GET "https://statements.finopsbricks.com/api/v1/reports/overview?date_from=2024-01-01&date_to=2024-01-31&group_by=day" \
-H "api-key: fob_stm_xxxxxxxxxxxx" \
-H "api-secret: xxxxxxxxxxxxxxxx"
Response
{
"data": {
"period": {
"date_from": "2024-01-01",
"date_to": "2024-01-31",
"group_by": "day"
},
"accounts": [
{
"id": "acc123",
"name": "Business Checking",
"category": "bank"
},
{
"id": "acc456",
"name": "Credit Card",
"category": "credit_card"
}
],
"data": [
{
"period": "2024-01-01",
"inflow": 15000.00,
"outflow": 8500.00,
"net": 6500.00,
"inflow_count": 12,
"outflow_count": 8,
"total_count": 20
},
{
"period": "2024-01-02",
"inflow": 22000.00,
"outflow": 12000.00,
"net": 10000.00,
"inflow_count": 18,
"outflow_count": 15,
"total_count": 33
}
]
}
}
Response Fields
period
| Field | Type | Description |
|---|---|---|
| date_from | string | Start date of the report |
| date_to | string | End date of the report |
| group_by | string | Grouping period used (day/week/month/year) |
accounts
Array of account objects included in the report (non-archived accounts).
| Field | Type | Description |
|---|---|---|
| id | string | Account ID |
| name | string | Account name |
| category | string | Account category (bank or credit_card) |
data
Array of overview data objects grouped by period.
| Field | Type | Description |
|---|---|---|
| period | string | Period identifier (format depends on group_by) |
| inflow | number | Total inflows for the period (in base currency units) |
| outflow | number | Total outflows for the period (in base currency units) |
| net | number | Net amount (inflow - outflow) |
| inflow_count | number | Number of transactions with inflows |
| outflow_count | number | Number of transactions with outflows |
| total_count | number | Total number of transactions (inflow_count + outflow_count) |
Period Format
The period field format depends on the group_by parameter:
- day:
YYYY-MM-DD(e.g., "2024-01-15") - week: ISO 8601 timestamp of week start (e.g., "2024-01-08T00:00:00.000Z")
- month: ISO 8601 timestamp of month start (e.g., "2024-01-01T00:00:00.000Z")
- year: ISO 8601 timestamp of year start (e.g., "2024-01-01T00:00:00.000Z")
Understanding Overview Reports
Overview reports provide a high-level view of transaction activity patterns:
- Transaction Density: Identify periods with high or low transaction volumes
- Cash Flow Patterns: Visualize inflow vs outflow trends over time
- Activity Heatmap: Spot unusual transaction activity or gaps in data
- Period Comparison: Compare activity across different time periods
This report is particularly useful for:
- Identifying data coverage gaps (days with zero transactions)
- Spotting anomalies in transaction patterns
- Understanding seasonal cash flow trends
- Verifying data completeness
Filtering Options
Special Values
- entity='empty': Filters for transactions with null or empty entity field
- category='empty': Filters for transactions with null or empty category field
- comments='empty': Filters for transactions with null or empty comments field
Partial Matching
The particulars, entity, category, and comments filters use case-insensitive partial matching:
particulars=salarymatches "Salary Payment", "SALARY", "Monthly Salary"entity=vendormatches "Vendor ABC", "VENDOR XYZ", "Main Vendor"category=expensematches "Office Expense", "EXPENSE", "Travel Expenses"
Account Filtering
Pass comma-separated account IDs to filter transactions:
accounts=acc123- Single accountaccounts=acc123,acc456,acc789- Multiple accounts
Combining Filters
All filters can be combined to narrow down results:
curl -X GET "https://statements.finopsbricks.com/api/v1/reports/overview?\
date_from=2024-01-01&\
date_to=2024-12-31&\
group_by=month&\
accounts=acc123,acc456&\
category=expense&\
entity=vendor" \
-H "api-key: fob_stm_xxxxxxxxxxxx" \
-H "api-secret: xxxxxxxxxxxxxxxx"
Use Cases
Daily Activity Monitoring
# Get daily transaction activity for current month
curl -X GET "https://statements.finopsbricks.com/api/v1/reports/overview?\
date_from=2024-01-01&\
date_to=2024-01-31&\
group_by=day" \
-H "api-key: fob_stm_xxxxxxxxxxxx" \
-H "api-secret: xxxxxxxxxxxxxxxx"
Monthly Cash Flow Overview
# Get monthly overview for the year
curl -X GET "https://statements.finopsbricks.com/api/v1/reports/overview?\
date_from=2024-01-01&\
date_to=2024-12-31&\
group_by=month" \
-H "api-key: fob_stm_xxxxxxxxxxxx" \
-H "api-secret: xxxxxxxxxxxxxxxx"
Account-Specific Activity
# Get activity for specific accounts
curl -X GET "https://statements.finopsbricks.com/api/v1/reports/overview?\
date_from=2024-01-01&\
date_to=2024-12-31&\
group_by=week&\
accounts=acc123,acc456" \
-H "api-key: fob_stm_xxxxxxxxxxxx" \
-H "api-secret: xxxxxxxxxxxxxxxx"
Errors
| Code | Description |
|---|---|
| 400 | Missing date_from or date_to parameter |
| 400 | Invalid date format (must be YYYY-MM-DD) |
| 400 | date_from is after date_to |
| 400 | Invalid group_by value (must be day, week, month, or year) |
| 401 | Invalid or missing API credentials |
| 403 | API key lacks reports:read permission |