---
title: "Retrieve the most recent bank income report"
method: GET
path: "/v1/links/{link_id}/income/transactions/reports/"
tags: ["Income Report"]
---

# Retrieve the most recent bank income report

`GET /v1/links/{link_id}/income/transactions/reports/`

Retrieves the most recent bank income report for the specified link. This endpoint returns the latest generated report containing transaction-based income analysis and verification data.

## Response `200`

- BankIncomeReport
  - `status` string, required — Status of the report. Common values: `success`, `processing`, `no transactions found`, `not found`, `failed`. Additional upstream statuses may be passed through.
  - `completed_at` string, date-time, nullable, required — Timestamp when the report was completed.
  - `days_requested` integer, required — The specific duration in days for which the report is requested to be generated.
  - `tracking_info` string, nullable — Additional optional identifier passed by user.
  - `provider` string, required — Data provider ID.
  - `access_token` string, uuid — Access token of the existing link.
  - `companies` string[] — Names of the companies person works for.
  - `accounts` BankIncomeAccount[], required — List of bank accounts
    - `id` string, required — Unique identifier of the account.
    - `created_at` string, date-time, required — Date and time when the account was created in Truv
    - `updated_at` string, date-time, required — Date and time when the account was updated last time in Truv
    - `type` string — The parent type of the account, e.g., CHECKING or SAVINGS.
    - `subtype` string, nullable — The account's subtype, e.g., PLAN_401_K, MONEY_MARKET, or HOME_EQUITY.
    - `mask` string, nullable — The masked banking account number associated with a particular account.
    - `nickname` string, nullable — An alternate name for the account.
    - `days_available` integer — Days of transaction history available at report generation time, from earliest transaction to report date (inclusive).
    - `owners` AssetsOwner[] — List of owners for account.
      - `id` string, string, required — Unique identifier of the owner.
      - `full_name` string — The account owner's name.
      - `email` string, email, nullable — The account owner's email address.
      - `phone` string, nullable — The account owner's phone number.
      - `address` object — The account owner's address.
        - `street` string, nullable — Street address as provided by the financial institution. May contain multiple lines separated by `\n`.
        - `city` string, nullable — City as provided by the financial institution.
        - `state` string, nullable — State or region. For US addresses this is typically a 2-letter state code; returned as provided by the financial institution.
        - `zip` string, nullable — Postal code as provided by the financial institution. Typically a 5-digit US ZIP code; ZIP+4, 9 digits without a separator, and non-US postal codes also occur.
        - `country` string, nullable — 2-letter ISO 3166-1 alpha-2 country code. Defaults to `US` when the source does not specify a country.
      - `relation_type` 'PRIMARY' | 'BUSINESS' | 'JOINT' | 'SECONDARY' | 'AUTHORIZED_USER' | 'FOR_BENEFIT_OF' | 'ACCOUNT_BENEFICIARY' | 'CUSTODIAN' | 'OTHER' | 'null', nullable — The relationship this person has to the account.
  - `income` BankIncomeSource[], required — List of bank income sources
    - `start_date` string, date, required — Minimum of all dates within the specific income sources in the user's bank account for days requested by the client.
    - `end_date` string, date, required — Maximum of all dates within the specific income sources in the user's bank account for days requested by the client.
    - `account_id` string, required — Unique identifier of the account.
    - `income_description` string — Description for the underlying income transactions.
    - `income_category` 'PAYCHECK' | 'RETIREMENT' | 'RENTAL' | 'UNEMPLOYMENT' | 'GOVERNMENT_EMPLOYMENT' | 'GOVERNMENT_BENEFITS' | 'PRIVATE_BENEFITS' | 'EWA_PAYROLL' | 'GIG_ECONOMY' | 'P2P_TRANSFER' | 'TAX_CREDITS' | 'CASH_OR_CHECK' | 'INTEREST' | 'INVESTMENT' | 'OTHER' | 'null', nullable — The income category.
    - `pay_frequency` 'M' | 'SM' | 'W' | 'BW' | 'A' | 'SA' | 'C' | 'null', nullable — Pay frequency: * `M` - Monthly, * `SM` - Semi-Monthly, * `W` - Weekly, * `BW` - Bi-Weekly, * `A` - Annually, * `SA` - Semiannually, * `C` - Commission
    - `next_payment_date` string, date, nullable — The next payment date for the income source.
    - `total_amount` string, decimal, required — Total amount of earnings for the income source of the user in the summary.
    - `iso_currency_code` string — The ISO 4217 currency code of the amount or balance.
    - `transaction_count` integer, required — Number of income transactions per end user for this source.
    - `historical_summary` object[], required — List of bank statements for each period.
      - `start_date` string, date — The start date of the period covered in this monthly summary. This date will be the first day of the month, unless the month being covered is a partial month because it is the first month included in the summary and the date range being requested does not begin with the first day of the month.
      - `end_date` string, date — The end date of the period included in this monthly summary. This date will be the last day of the month, unless the month being covered is a partial month because it is the last month included in the summary and the date range being requested does not end with the last day of the month.
      - `total_amount` string, decimal — Total amount of earnings for the income source of the user for the month in the summary.
      - `iso_currency_code` string, nullable — The ISO 4217 currency code of the amount or balance.
      - `transactions` object[] — List of transactions
        - `amount` string, decimal — The settled value of the transaction, denominated in the transactions's currency as stated in iso_currency_code. Negative values when money moves out of the account; positive othervise.
        - `iso_currency_code` string, nullable — The ISO 4217 currency code of the amount or balance.
        - `date` string, date — The date that the transaction occurred.
        - `check_number` string, nullable — The check number for the transaction.
        - `description` string — A human-readable transaction description.
        - `pending` boolean — True if status of the transaction is PENDING or not set.
        - `transaction_id` string — Unique identifier of the transaction.
    - `historical_average_monthly_income` string, decimal, nullable — Historical average income deposited into the account, per calendar month, typically net of taxes and deductions.
    - `historical_average_monthly_gross_income` string, decimal, nullable — Historical average gross payment amount, per calendar month, predicted based on the transaction data.
    - `forecasted_average_monthly_income` string, decimal, nullable — Forecasted income deposited into the account, per calendar month.
    - `avg_deposit_amount` string, decimal, required — The average amount received per deposit, typically net of taxes and deductions.
    - `avg_gross_deposit_amount` string, decimal — The average gross payment per deposit. Gross pay is predicted based on the transaction data.
  - `summary` BankIncomeSummary, required
    - `start_date` string, date, nullable, required — Minimum of all transaction dates among all income sources in the user's bank accounts for days requested by the client.
    - `end_date` string, date, nullable, required — Maximum of all transaction dates among all income sources in the user's bank accounts for days requested by the client.
    - `income_sources_count` integer, nullable, required — Number of income sources per end user.
    - `income_categories_count` integer, nullable, required — Number of income categories per end user.
    - `income_transactions_count` integer, nullable, required — Number of income transactions per end user.
    - `total_amount` string, decimal, nullable, required — Total amount of earnings for the income of the user in summary.
    - `iso_currency_code` string, nullable — The ISO 4217 currency code of the amount or balance.
    - `historical_average_monthly_gross_income` string, decimal, nullable, required — Total monthly average gross income earned historically, over all sources. Gross amounts are estimated from transactions.
    - `historical_average_monthly_income` string, decimal, nullable, required — Total monthly average income earned historically, over all sources.
    - `forecasted_average_monthly_income` string, decimal, nullable, required — Total forecasted monthly average income, over all sources.
    - `historical_annual_gross_income` string, decimal, nullable, required — Annualized gross income earned historically, over all sources.
    - `historical_annual_income` string, decimal, nullable, required — Annualized income earned historically, over all sources.
    - `forecasted_annual_income` string, decimal, nullable, required — Annualized forecasted income, over all sources.
  - `is_suspicious` boolean — Flag to indicate if the data from the source is suspicious. E.g. fraud detected in uploaded documents or SSN of the user does not match with the data
  - `pdf_report` string, uri, nullable — URL of the PDF report file

## Other responses

- `401` — HTTP 401 Unauthorized
- `403` — HTTP 403 Forbidden
- `404` — HTTP 404 Not Found

---

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