> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://www.truework.com/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://www.truework.com/docs/_mcp/server.

# Get one report

GET https://api.truework-sandbox.com/reports/{verification_report_id}

Retrieves a report for a given report ID.
If you don't have the report id, it is recommended to use the embedded reports key on a completed verification object returned from `GET /orders`.
You can get the report in PDF format by adding `Accept: application/pdf` to your headers. When testing, please use the generated curl command
with `--output <PDF filename>` specified.

Only completed Reports will be returned. Any other request will fail with either 400 or 404, and provide more information as an attached error message.

Reference: https://www.truework.com/docs/api-reference/versions/2023-10-30/get-report-details

## Authentication

- `Authorization` header (bearer token, required) — Bearer tokens conform to the [RFC6750](https://datatracker.ietf.org/doc/html/rfc6750#section-2.1) spec. Production API keys (secret keys) are prefixed with `tw_sk_` and sandbox keys are prefixed with `tw_sk_test_`. If your secret key is published, you should rotate your API keys. Truework.JS publishable keys are prefixed with `tw_pk_` and `tw_pk_test` respectively. **Examples** - For Authorization Headers: `Authorization: Bearer tw_sk_test_e508eb797edb95ade85284bcb54dd49ed45db1be` - For the "try it now" `token` field, input only the token itself, omitting `Bearer `.

## Servers

- `https://api.truework-sandbox.com` (Sandbox, default)
- `https://api.truework.com` (Production)

## Request

### Path parameters

- `verification_report_id` (string, required) — Report ID

### Query parameters

- `include_income_analytics` (boolean, optional, default: false) — Whether to calculate income analytics for the nested reports in each verification.
- `include_report_annotations` (boolean, optional, default: false) — Whether to include annotations for the nested reports in each verification.
- `fields` (string, optional, nullable) — Comma-separated names of fields to include in the response. Separate multiple fields with commas, and denote subfields with parentheses. Multiple subfields from the same type can be listed within parentheses. In case of a list, subfields apply to each individual object. If omitted, all fields are included.

### Headers

- `Accept` (enum, optional, default: application/json) — Specify the content type and version that the API should use. It's recommended to include this to avoid breaking changes.
  - Allowed values: `application/json`, `application/pdf`, `application/json; version=2023-10-30`, `application/pdf; version=2023-10-30`

## Response

### 200

OK

- `ReportResponseResource`

## Errors

### 400 Bad Request Error

Bad Request

- `error` (_InvalidRequestError, required)

### 401 Unauthorized Error

The request's authorization is missing, invalid, or expired

- `error` (Error, required)

### 403 Forbidden Error

Forbidden

- `error` (Error, required)

### 404 Not Found Error

Not Found

- `error` (Error, required)

### 406 Not Acceptable Error

An invalid API version was requested

- `error` (Error, required)

### 429 Too Many Requests Error

Too Many Requests

- `error` (Error, required)

### 451 Unavailable for Legal Reasons Error

Frozen SSN

- `error` (Error, required)

### 500 Internal Server Error

Internal Server Error

- `error` (Error, required)

### 501 Not Implemented Error

Not Implemented

- `error` (Error, required)

## Types

### OrderVerificationReportResourceV20231030

An employment or income verification report containing employee details, employer information, and position history.

- `additional_notes` (string, required, nullable)
- `annotations` (OrderAnnotationsV20231030, required, nullable) — Consumer-stated information related to this report
- `applicant_documents` (list of ApplicantDocumentMetadataV20220801, required, nullable)
- `completed` (datetime, required, nullable) — The date and time when the verification was completed
- `completed_by_method` (CompletedByMethodOutputWrapperV20231030, required, nullable)
- `created` (datetime, required)
- `current_as_of` (date, required)
- `disputes` (list of DisputeV20231030, required, nullable) — Disputes that are currently open and relevant to this report
- `eligibilities` (list of EligibilityV20231030, required, nullable) — Eligibilities for this report
- `employee` (EmployeeV20231030, required, nullable)
- `employer` (EmployerV20231030, required, nullable)
- `financial_institution_accounts` (list of FinancialInstitutionAccountV20231030, required, nullable)
- `id` (string, required)
- `income_analytics` (ReportIncomeAnalyticsV20231030, required, nullable) — Calculated income features. Only returned if the `income_analytics` query parameter is provided and is `true` and the employee status on the report is active.
- `paid_through_date` (date, required, nullable) — The pay period end date of the most recent paystub (falling back to the pay date if no pay period end is set). This field is only populated for VOIE reports and will be null for non-VOIE reports or when no paystubs exist.
- `paystubs` (list of PaystubV20231030, required, nullable) — Individual paystubs for each pay period. Paystubs are returned sorted in descending order from most recent to least recent pay date.
- `report_type` (enum, required) — The type of this report — lets a caller identify the report shape without inferring it from which fields are present.
  - Allowed values: `employment-income`, `employment`, `tenant-screening`, `assets`, `self-employment`, `rental-income`
- `respondent` (RespondentV20231030, required, nullable)
- `verification_request` (VerificationRequestV20231030, required)

### OrderVerificationOfAssetsReportResourceV20231030

A verification of assets report containing financial institution account balances and transaction history.

- `completed` (datetime, required, nullable) — The date and time when the verification was completed
- `completed_by_method` (CompletedByVOAMethodOutputWrapperV20231030, required, nullable)
- `created` (datetime, required)
- `current_as_of` (date, required)
- `eligibilities` (list of EligibilityV20231030, required, nullable) — Eligibilities for this report
- `financial_institution_accounts` (list of FinancialInstitutionAccountV20231030, required, nullable)
- `id` (string, required)
- `report_type` (enum, required) — The type of this report — lets a caller identify the report shape without inferring it from which fields are present.
  - Allowed values: `employment-income`, `employment`, `tenant-screening`, `assets`, `self-employment`, `rental-income`
- `verification_request` (VerificationRequestV20231030, required)

### OrderVerificationSelfEmploymentReportResourceV20231030

A self-employment report containing business information for a self-employed target.

- `applicant_documents` (list of ApplicantDocumentMetadataV20220801, required, nullable)
- `authorities` (list of enum, required, nullable) — The GSE authorities the income calculation is qualified against, if any.
  - Allowed values: `fannie_mae`, `freddie_mac`
- `business_name` (string, required, nullable) — The business name for a self-employed target.
- `completed` (datetime, required, nullable) — The date and time when the verification was completed
- `created` (datetime, required)
- `current_as_of` (date, required)
- `entity_type` (enum, required, nullable) — The legal entity structure of the self-employed business, when resolved.
  - Allowed values: `sole_proprietorship`, `partnership`, `s_corp`, `c_corp`
- `forms_1065` (list of Form1065EntryV20231030, required, nullable) — Partnership tax detail (IRS Form 1065), one entry per business per year.
- `forms_1120` (list of Form1120EntryV20231030, required, nullable) — C-corp tax detail (IRS Form 1120), one entry per business per year.
- `forms_1120s` (list of Form1120SEntryV20231030, required, nullable) — S-corp tax detail (IRS Form 1120S), one entry per business per year.
- `id` (string, required)
- `income_amount` (string, required, nullable) — The calculated qualifying income amount for this report, expressed in the unit given by income_basis.
- `income_basis` (enum, required, nullable) — Whether income_amount is a monthly or annual figure.
  - Allowed values: `monthly`, `annual`
- `income_calculations` (list of SelfEmploymentIncomeCalculationV20231030, required) — Calculated qualifying income results for this report, newest-per-calculation deduplicated. Empty when no calculation has run yet.
- `is_gse_qualified_calculation` (boolean, required, nullable) — Whether the income calculation meets GSE (Fannie Mae / Freddie Mac) qualification standards.
- `ownership_percentage` (string, required, nullable) — The target's ownership percentage in the business.
- `report_type` (enum, required) — The type of this report — lets a caller identify the report shape without inferring it from which fields are present.
  - Allowed values: `employment-income`, `employment`, `tenant-screening`, `assets`, `self-employment`, `rental-income`
- `schedule_c` (list of ScheduleCEntryV20231030, required, nullable) — Sole-proprietor tax detail (IRS Schedule C), one entry per business per year.
- `schedule_k1s` (list of ScheduleK1EntryV20231030, required, nullable) — Per-partner/shareholder tax detail (IRS Schedule K-1), one entry per partner/shareholder per year.
- `verification_request` (VerificationRequestV20231030, required)

### OrderVerificationRentalIncomeReportResourceV20231030

A rental income report containing verification details for a borrower's rental property.

- `completed` (datetime, required, nullable) — The date and time when the rental report verification was completed.
- `created` (datetime, required)
- `current_as_of` (date, required)
- `id` (string, required)
- `net_qualifying_income` (string, required, nullable) — The net qualifying income for the rental property associated with the verification request.
- `rental_property_address` (AddressV20220801-Output, required, nullable) — The address of the rental property associated with the verification request.
- `report_type` (enum, required) — The type of this report — lets a caller identify the report shape without inferring it from which fields are present.
  - Allowed values: `employment-income`, `employment`, `tenant-screening`, `assets`, `self-employment`, `rental-income`
- `verification_request` (VerificationRequestV20231030, required)

### _InvalidRequestError

- `message` (string, required, default: Invalid field values provided)

### Error

- `message` (string, required)

### OrderAnnotationsV20231030

- `applicant` (_OrderAnnotation, required, nullable)
- `verifier` (_OrderAnnotation, required, nullable)

### ApplicantDocumentMetadataV20220801

- `detections` (list of DocumentDetection, required) — A list of fraud detections that were run on the document. If a detection is not present in the list it either passed or was not run.
- `id` (string, required)
- `url` (string, required) — A URL where the document content can be downloaded via an authenticated GET request.

### CompletedByMethodOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `instant`, `credentials`, `smart-outreach`, `third-party-providers`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### DisputeV20231030

- `created` (datetime, required)
- `description` (string, required, nullable) — Description of dispute
- `id` (string, required) — ID for this dispute in Truework
- `reference_id` (string, required, nullable) — ID for this dispute to be displayed and referenced outside of this API

### EligibilityV20231030

- `is_eligible` (boolean, required, nullable) — Returns true if this report is eligible for this eligibility type
- `provider` (EligibilityProviderOutputWrapperV20231030, required) — The provider of the reference ID
- `reference_id` (string, required, nullable) — This is the reference ID to submit to Fannie Mae for purposes of getting Day 1 Certainty
- `type` (EligibilityTypeOutputWrapperV20231030, required, nullable) — Eligibility type

### EmployeeV20231030

- `address` (AddressV20220801-Output, required, nullable)
- `earnings` (list of EarningsV20231030, required, nullable)
- `email` (string, required, nullable)
- `first_name` (string, required, nullable)
- `hired_date` (date, required, nullable) — This is the most recent hiring date of the employee. If the employee has been rehired, this date will be updated to the most recent hiring date.
- `last_name` (string, required, nullable)
- `on_leave_date` (date, required, nullable)
- `original_hired_date` (date, required, nullable) — This is the original hiring date of the employee. If the employee has been rehired, this date will not change.
- `positions` (list of PositionV20231030, required, nullable)
- `salary` (SalaryV20231030, required, nullable)
- `social_security_number` (string, required, nullable) — The employee's obfuscated social security number
- `status` (EmployeeStatusOutputWrapperV20231030, required, nullable)
- `status_detail` (EmployeeStatusDetailOutputWrapperV20231030, required, nullable)
- `termination_date` (date, required, nullable)

### EmployerV20231030

- `address` (AddressV20220801-Output, required, nullable)
- `government_ids` (list of _GovernmentId, required, nullable)
- `name` (string, required, nullable)

### FinancialInstitutionAccountV20231030

- `account_name` (string, required, nullable)
- `account_type` (string, required, nullable)
- `financial_institution_name` (string, required, nullable)
- `income_streams` (list of FinancialInstitutionIncomeStreamV20231030, required)
- `number` (string, required, nullable)
- `oldest_transaction_date` (date, required, nullable)
- `owner_name` (string, required, nullable)
- `snapshots` (list of FinancialInstitutionAccountSnapshotV20231030, required)

### ReportIncomeAnalyticsV20231030

- `annualized_income` (_AnnualizedIncome, required, nullable)
- `income_volatility` (_IncomeVolatility, required, nullable)

### PaystubV20231030

- `base` (string, required, nullable) — Pre-deduction base pay
- `bonus` (string, required, nullable) — Pre-deduction bonus pay
- `commission` (string, required, nullable) — Pre-deduction commission pay
- `gross` (string, required, nullable) — Total pre-deduction earnings for this pay period
- `id` (string, required) — ID for this paystub in Truework
- `net` (string, required, nullable) — Total post-deduction earnings for this pay period
- `other` (string, required, nullable) — Pre-deduction other pay
- `overtime` (string, required, nullable) — Pre-deduction overtime pay
- `pay_date` (date, required, nullable) — Date of paycheck delivery
- `pay_period_end_date` (date, required, nullable) — Last day of pay period
- `pay_period_hours` (string, required, nullable) — Hours worked in this pay period
- `pay_period_start_date` (date, required, nullable) — First day of pay period
- `reference_id` (string, required, nullable) — ID for this paystub from the payroll provider

### RespondentV20231030

- `email` (string, required, nullable)
- `full_name` (string, required, nullable)
- `title` (string, required, nullable)

### VerificationRequestV20231030

- `created` (datetime, required)
- `id` (string, required)
- `type` (enum, required)
  - Allowed values: `employment-income`, `employment`, `tenant-screening`, `assets`, `self-employment`, `rental-income`

### CompletedByVOAMethodOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `bank`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### Form1065EntryV20231030

Partnership tax detail (IRS Form 1065), one entry per business per year.

- `amortization_casualty_loss` (string, required, nullable)
- `business_name` (string, required, nullable)
- `cost_of_goods_sold` (string, required, nullable)
- `depletion` (string, required, nullable)
- `depreciation` (string, required, nullable)
- `employer_identification_number` (string, required, nullable)
- `gross_receipts` (string, required, nullable)
- `guaranteed_payments_to_partners` (string, required, nullable)
- `mortgages_notes_bonds_payable_in_less_than_one_year` (string, required, nullable)
- `non_deductible_travel_and_entertainment` (string, required, nullable)
- `ordinary_business_income` (string, required, nullable)
- `ordinary_income_loss_from_other_partnerships_estates_and_trusts` (string, required, nullable)
- `other_income_loss` (string, required, nullable)
- `rental_real_estate_depreciation` (string, required, nullable)
- `total_income` (string, required, nullable)
- `year` (integer, required)

### Form1120EntryV20231030

C-corp tax detail (IRS Form 1120), one entry per business per year.

- `amortization_casualty_loss` (string, required, nullable)
- `business_name` (string, required, nullable)
- `depletion` (string, required, nullable)
- `depreciation` (string, required, nullable)
- `dividends_paid_to_borrower` (string, required, nullable)
- `employer_identification_number` (string, required, nullable)
- `gross_receipts` (string, required, nullable)
- `mortgages_notes_bonds_payable_in_less_than_one_year` (string, required, nullable)
- `net_operating_loss` (string, required, nullable)
- `non_deductible_travel_and_entertainment` (string, required, nullable)
- `nonrecurring_gains_losses` (string, required, nullable)
- `officer_compensation` (string, required, nullable)
- `other_income_loss` (string, required, nullable)
- `taxable_income` (string, required, nullable)
- `total_income` (string, required, nullable)
- `total_tax` (string, required, nullable)
- `year` (integer, required)

### Form1120SEntryV20231030

S-corp tax detail (IRS Form 1120S), one entry per business per year.

- `amortization_casualty_loss` (string, required, nullable)
- `business_name` (string, required, nullable)
- `cost_of_goods_sold` (string, required, nullable)
- `depletion` (string, required, nullable)
- `depreciation` (string, required, nullable)
- `employer_identification_number` (string, required, nullable)
- `gross_receipts` (string, required, nullable)
- `mortgages_notes_bonds_payable_in_less_than_one_year` (string, required, nullable)
- `non_deductible_travel_and_entertainment` (string, required, nullable)
- `officer_compensation` (string, required, nullable)
- `ordinary_business_income` (string, required, nullable)
- `other_income_loss` (string, required, nullable)
- `rental_real_estate_depreciation` (string, required, nullable)
- `total_income` (string, required, nullable)
- `year` (integer, required)

### SelfEmploymentIncomeCalculationV20231030

A single calculated-income result for a self-employment report.

- `calculated_at` (datetime, required) — When this income calculation was produced.
- `calculator` (enum, required) — Which calculator produced this income calculation - fannie_mae when produced directly by Fannie Mae's income calculator, third_party otherwise.
  - Allowed values: `fannie_mae`, `third_party`
- `income_amount` (string, required, nullable) — The calculated qualifying income amount, expressed in the unit given by income_basis.
- `income_basis` (enum, required) — Whether income_amount is a monthly or annual figure.
  - Allowed values: `monthly`, `annual`

### ScheduleCEntryV20231030

Sole-proprietor tax detail (IRS Schedule C), one entry per business per year.

- `business_code` (string, required, nullable) — The principal business or professional activity code for this Schedule C.
- `business_name` (string, required, nullable)
- `business_use_of_home` (string, required, nullable)
- `car_and_truck` (string, required, nullable)
- `cost_of_goods_sold` (string, required, nullable)
- `depreciation` (string, required, nullable)
- `gross_receipts` (string, required, nullable)
- `insurance` (string, required, nullable)
- `legal_and_professional` (string, required, nullable)
- `meals_and_entertainment` (string, required, nullable)
- `mortgage_interest` (string, required, nullable)
- `net_profit_or_loss` (string, required, nullable)
- `office_expense` (string, required, nullable)
- `other_expenses` (string, required, nullable)
- `other_income` (string, required, nullable)
- `repairs_and_maintenance` (string, required, nullable)
- `returns_and_allowances` (string, required, nullable)
- `total_expenses` (string, required, nullable)
- `travel` (string, required, nullable)
- `utilities_expense` (string, required, nullable)
- `wages` (string, required, nullable)
- `year` (integer, required)

### ScheduleK1EntryV20231030

Per-partner/shareholder tax detail (IRS Schedule K-1), one entry per partner/shareholder per year.

- `distributions` (string, required, nullable)
- `entity_ein` (string, required, nullable)
- `entity_name` (string, required, nullable)
- `guaranteed_payments` (string, required, nullable)
- `net_rental_real_estate_income` (string, required, nullable)
- `ordinary_business_income` (string, required, nullable)
- `ownership_percentage` (string, required, nullable)
- `section_179_deduction` (string, required, nullable)
- `self_employment_earnings` (string, required, nullable)
- `year` (integer, required)

### AddressV20220801-Output

- `address` (string, required, nullable)
- `city` (string, required, nullable)
- `country_code` (string, required, nullable)
- `country_subdivision_code` (string, required, nullable)
- `extended_address` (string, required, nullable)
- `postal_code` (string, required, nullable)

### _OrderAnnotation

- `employee` (_EmployeeAnnotation, required, nullable)
- `employer` (_EmployerAnnotation, required, nullable)

### DocumentDetection

- `count` (integer, required)
- `outcome` (DetectionOutcomeWrapper, required)
- `type` (DetectionTypeWrapper, required)

### EligibilityProviderOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `truework`, `argyle`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### EligibilityTypeOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `d1c`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### EarningsV20231030

- `base` (string, required, nullable)
- `bonus` (string, required, nullable)
- `commission` (string, required, nullable)
- `other` (string, required, nullable)
- `overtime` (string, required, nullable)
- `total` (string, required, nullable)
- `year` (string, required, nullable)

### PositionV20231030

- `employment_type` (EmploymentTypeOutputWrapperV20231030, required, nullable)
- `end_date` (date, required, nullable)
- `start_date` (date, required, nullable)
- `title` (string, required, nullable)

### SalaryV20231030

- `hours_per_week` (string, required, nullable)
- `pay_frequency` (PayFrequencyOutputWrapperV20231030, required, nullable) — The frequency by which the employee is paid.
- `pay_rate` (PayRateV20231030, required, nullable) — Describes the amount and unit that determine the employees pay.
- `reduced_covid` (enum, required)
  - Allowed values: `yes`, `no`, `unknown`

### EmployeeStatusOutputWrapperV20231030

- `canonical_value` (enum, required) — There are five employment statuses available on the `status` field in `Employee`: | VALUE | DESCRIPTION | VERSION INTRODUCED | OLDER VERSION VALUE | | ---------------- | ------------------------------------------------------------------- | ------------------ | ------------------- | | active | The employee is currently employed and working for this employer | | | | inactive | The employee is not employed at this employer anymore | | | | unknown | Truework could not determine the employment status of this employee | | | | furloughed-covid | The employee was furloughed due to COVID-19 | `2020-12-07` | inactive | | non-employee | Truework could not find record of this employee | `2020-12-07` | unknown | | other | No other value describes the employee's status | `2022-08-01` | N/A |
  - Allowed values: `active`, `inactive`, `unknown`, `furloughed-covid`, `non-employee`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### EmployeeStatusDetailOutputWrapperV20231030

- `canonical_value` (enum, required) — The `status_detail` provides more granular information for some `status` values: | VALUE | DESCRIPTION | `Status` | | ------------------ | ------------------------------------------------------------------- | ---------------- | | active | The employee is currently employed and working for this employer | active | | int-assignment | The employee is on international assignment | active | | casual | The employee is employed casually | active | | long-term-dis | The employee is on long term disability | active | | sick-leave | The employee is on sick leave | active | | surviving-spouse | The employee is a surviving spouse | inactive | | inactive | The employee is not employed at this employer anymore | inactive | | on-leave | The employee is on leave | active | | multiple-positions | The employee has multiple active positions | active | | new-employee | The employee is new | active | | lay-off | The employee was laid off | inactive | | part-time | The employee is currently employed on a part time basis | active | | retired | The employee is retired | inactive | | separated | The employee is separated | inactive | | season | The employee is seasonal | active | | temporary | The employee is temporary | active | | intern | The employee is an intern | active | | transferred | The employee has been transferred | active | | deceased | The employee is deceased | inactive | | severed-pay | The employee has been severed with pay | inactive | | on-sabbatical | The employee is on sabbatical | active | | divested | The employee is part of a divested population | active | | temp-inactive | The employee is temporarily inactive | inactive | | full-time | The employee is full time | active | | non-emp-ben | The employee is a non employee beneficiary | inactive | | not-assignment | The employee is not currently on assignment | inactive | | not-payroll | The employee is not currently on payroll | inactive | | active-as-needed | The employee is active as needed | active | | unknown | Truework could not determine the employment status of this employee | unknown | | furloughed-covid | The employee was furloughed due to COVID-19 | furloughed-covid | | non-employee | Truework could not find record of this employee | non-employee | | other | No other value exemplifies Verification Status Detail | other |
  - Allowed values: `active`, `int-assignment`, `casual`, `long-term-dis`, `sick-leave`, `surviving-spouse`, `inactive`, `on-leave`, `multiple-positions`, `new-employee`, `lay-off`, `part-time`, `retired`, `separated`, `season`, `temporary`, `intern`, `transferred`, `deceased`, `severed-pay`, `on-sabbatical`, `divested`, `temp-inactive`, `full-time`, `non-emp-ben`, `not-assignment`, `not-payroll`, `active-as-needed`, `unknown`, `furloughed-covid`, `non-employee`, `future-employee`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### _GovernmentId

- `id` (string, required)
- `type` (GovernmentIdTypeOutputWrapperV20231030, required)

### FinancialInstitutionIncomeStreamV20231030

- `age_in_months` (integer, required, nullable)
- `average_monthly_net_income` (double, required, nullable)
- `confidence` (integer, required)
- `confidence_level` (string, required)
- `end_date` (date, required, nullable)
- `estimated_gross_annual` (double, required, nullable)
- `frequency_days` (integer, required, nullable)
- `id` (string, required)
- `name` (string, required)
- `net_annual` (double, required, nullable)
- `periods` (list of FinancialInstitutionIncomeStreamPeriodV20231030, required)
- `start_date` (date, required, nullable)
- `status` (string, required)

### FinancialInstitutionAccountSnapshotV20231030

- `available_balance` (double, required, nullable)
- `average_monthly_balance` (double, required, nullable)
- `balance` (double, required, nullable)
- `balance_date` (date, required, nullable)
- `currency_code` (string, required, nullable)
- `id` (string, required)
- `tot_number_days_since_most_recent_insufficient_funds_fee_debit_tx_account` (integer, required, nullable)
- `tot_number_insufficient_funds_fee_debit_tx_account` (integer, required, nullable)
- `tot_number_insufficient_funds_fee_debit_tx_over_2_months_account` (integer, required, nullable)

### _AnnualizedIncome

- `base_amount` (MoneyAmountVMinimumVersion, required, nullable) — Represents annualized income for recurring income, like salary. In rare cases due to data quality issues, gross amount is returned without base amount or vice versa.
- `gross_amount` (MoneyAmountVMinimumVersion, required, nullable) — Represents base annualized income plus variable income sources. In rare cases due to data quality issues, gross amount is returned without base amount or vice versa.
- `short_employment_warning` (boolean, required) — True if the employee recently started at this position, which could impact annualized income accuracy.
- `stale_data_warning` (boolean, required) — True if the data on this report is not fresh, which could impact annualized income accuracy.
- `variable_income_warning` (boolean, required) — True if the employees income has high variability, which could impact annualized income accuracy.

### _IncomeVolatility

- `gross_income_volatility` (string, required, nullable) — Coefficient of variation of the aggregated per pay period gross earnings for a given list of paystubs.

### _EmployeeAnnotation

- `positions` (list of _PositionAnnotation, required, nullable)
- `salary` (_SalaryAnnotation, required, nullable)
- `status` (EmployeeStatusOutputWrapperV20231030, required, nullable)
- `status_detail` (EmployeeStatusDetailOutputWrapperV20231030, required, nullable)

### _EmployerAnnotation

- `email` (string, required, nullable)
- `name` (string, required, nullable)
- `phone_number` (string, required, nullable)

### DetectionOutcomeWrapper

- `canonical_value` (enum, required) — The outcome of the detection rule. | VALUE | DESCRIPTION | | ----- | ----------- | | passed | The detection rule passed. | | failed | The detection rule failed. | | not-run | The detection rule was not run. | | other | Another outcome occurred. |
  - Allowed values: `passed`, `failed`, `not-run`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### DetectionTypeWrapper

- `canonical_value` (enum, required) — The type of detection that was found on the document. | VALUE | DESCRIPTION | | ----- | ----------- | | ssn-mismatch | The SSN on the document does not match the SSN on the request. | | employer-name-mismatch | The employer name on the document may not match the employer name on the request. | | page-edited | The form may have been created by a recognized software package. | | other-edits | The form may have been edited with a recognized software package. | | online-generated-paystub | The pay stub format may match a template from sites known to create paystubs for a fee. | | earnings-edits | The listed earnings may have been edited. | | deductions-edits | Current or YTD deductions (including taxes) may have been edited. | | pay-frequency-edits | Pay frequency may have been edited. | | dollar-amount-edits | One or more of the following dollar amounts may have been changed: Beginning balance, Ending balance, Total deposits, Total withdrawals, Daily balance, Individual amounts, Ledger balances. | | employee-taxpayer-id-edits | The employee's social security number may have been edited. | | employee-details-edits | The employee's marital status may have been edited. | | employee-name-edits | The employee's name may have been edited. | | employer-name-edits | The employer’s name may have been edited. | | employer-address-edits | The employer’s address may have been edited. | | date-edits | One or more of the following dates may have been edited (hire date, pay period, period start date, period end date). | | misaligned-text | The field or text may not match the expected alignment compared to the rest of the document. | | other | Something else was detected. |
  - Allowed values: `ssn-mismatch`, `employer-name-mismatch`, `page-edited`, `other-edits`, `online-generated-paystub`, `earnings-edits`, `deductions-edits`, `pay-frequency-edits`, `dollar-amount-edits`, `employee-taxpayer-id-edits`, `employee-details-edits`, `employee-name-edits`, `employer-name-edits`, `employer-address-edits`, `date-edits`, `misaligned-text`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### EmploymentTypeOutputWrapperV20231030

- `canonical_value` (enum, required) — | VALUE | DESCRIPTION | VERSION INTRODUCED | OLDER VERSION VALUE | | ----------------- | -------------------------------- | ------------------ | ------------------- | | regular-full-time | Regular full time | | | | regular-part-time | Regular part time | | | | contractor-1099 | Contractor | | | | no-answer | Question was not answered | `2020-12-07` | other | | other | Other or unknown employment type | | |
  - Allowed values: `regular-full-time`, `regular-part-time`, `contractor-1099`, `no-answer`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### PayFrequencyOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `annually`, `daily`, `semiweekly`, `monthly`, `weekly`, `biweekly`, `bimonthly`, `semimonthly`, `quarterly`, `semiannually`, `thirteen-monthly`, `fourteen-monthly`, `hourly`, `variable`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### PayRateV20231030

- `amount` (string, required, nullable) — The amount the employee gets paid per timeframe defined by the adject unit field.
- `unit` (PayUnitOutputWrapperV20231030, required, nullable) — The timeframe in which the employee gets paid the amount defined in the adjacent amount field.

### GovernmentIdTypeOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `us-fein`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### FinancialInstitutionIncomeStreamPeriodV20231030

- `amount` (double, required, nullable)
- `amount_duration` (string, required)
- `amount_type` (string, required)
- `estimated_gross_income` (GrossIncomeCalculationResultV20231030, required, nullable)
- `id` (string, required)
- `start_day` (date, required)
- `transactions` (list of FinancialInstitutionTransactionV20231030, required, nullable)

### MoneyAmountVMinimumVersion

- `amount` (string, required, nullable)
- `currency` (enum, required, nullable)
  - Allowed values: `USD`

### _PositionAnnotation

- `end_date` (date, required, nullable)
- `start_date` (date, required, nullable)
- `title` (string, required, nullable)

### _SalaryAnnotation

- `pay_rate` (PayRateV20231030, required, nullable)

### PayUnitOutputWrapperV20231030

- `canonical_value` (enum, required) — A limited enum representation of the value, which will not be extended without a version bump.
  - Allowed values: `annually`, `daily`, `semiweekly`, `monthly`, `weekly`, `biweekly`, `bimonthly`, `semimonthly`, `quarterly`, `semiannually`, `thirteen-monthly`, `fourteen-monthly`, `hourly`, `variable`, `other`
- `raw_value` (string, required) — An unlimited string representation of the value, which may provide more detail when the canonical value is "other".

### GrossIncomeCalculationResultV20231030

- `average_monthly_net_income` (double, required, nullable)
- `estimated_gross_annual` (double, required, nullable)
- `net_annual` (double, required, nullable)

### FinancialInstitutionTransactionV20231030

- `amount` (double, required, nullable)
- `category` (string, required, nullable)
- `description` (string, required)
- `id` (string, required)
- `payee` (string, required, nullable)
- `posted_date` (datetime, required)
- `reference_id` (string, required)
- `transaction_type` (string, required)
- `type` (string, required, nullable)

## Examples

**Response**

```json
{
  "additional_notes": "string",
  "annotations": {
    "applicant": {
      "employee": {
        "positions": [
          {
            "end_date": "2023-01-15",
            "start_date": "2023-01-15",
            "title": "Software Engineer"
          }
        ],
        "salary": {
          "pay_rate": {
            "amount": "150000.00",
            "unit": {}
          }
        },
        "status": {
          "canonical_value": "active",
          "raw_value": "string"
        },
        "status_detail": {
          "canonical_value": "active",
          "raw_value": "string"
        }
      },
      "employer": {
        "email": "string",
        "name": "string",
        "phone_number": "string"
      }
    },
    "verifier": {
      "employee": {
        "positions": [
          {
            "end_date": "2023-01-15",
            "start_date": "2023-01-15",
            "title": "Software Engineer"
          }
        ],
        "salary": {
          "pay_rate": {
            "amount": "150000.00",
            "unit": {}
          }
        },
        "status": {
          "canonical_value": "active",
          "raw_value": "string"
        },
        "status_detail": {
          "canonical_value": "active",
          "raw_value": "string"
        }
      },
      "employer": {
        "email": "string",
        "name": "string",
        "phone_number": "string"
      }
    }
  },
  "applicant_documents": [
    {
      "detections": [
        {
          "count": 1,
          "outcome": {
            "canonical_value": "passed",
            "raw_value": "string"
          },
          "type": {
            "canonical_value": "ssn-mismatch",
            "raw_value": "string"
          }
        }
      ],
      "id": "AAAAAAAAA3IAF7BGt6e3K0DXcz2pU2ZnvhxOzrfckvfNROXjJN9Rf6oV",
      "url": "string"
    }
  ],
  "completed": "2021-12-20T18:50:20.291247Z",
  "completed_by_method": {
    "canonical_value": "instant",
    "raw_value": "string"
  },
  "created": "2021-12-20T18:50:20.291247Z",
  "current_as_of": "2021-12-20",
  "disputes": [
    {
      "created": "2021-12-20T18:50:20.291247Z",
      "description": "Employee Title",
      "id": "AAAAAAAAAL8AElevkrw2n2vI8ScqGJEf50Lfg4W9LiQXwi-KSmg7DH0P",
      "reference_id": "d75346a0-a747-4907-a506-639ea436f2b0"
    }
  ],
  "eligibilities": [
    {
      "is_eligible": true,
      "provider": {
        "canonical_value": "truework",
        "raw_value": "truework"
      },
      "reference_id": "FNM123",
      "type": {
        "canonical_value": "d1c",
        "raw_value": "string"
      }
    }
  ],
  "employee": {
    "address": {
      "address": "1234 Rainbow Road",
      "city": "San Francisco",
      "country_code": "US",
      "country_subdivision_code": "CA",
      "extended_address": "Suite 300",
      "postal_code": "98265"
    },
    "earnings": [
      {
        "base": "35000.00",
        "bonus": "0.00",
        "commission": "100.25",
        "other": "0.00",
        "overtime": "200.00",
        "total": "35300.25",
        "year": "2020"
      }
    ],
    "email": "john.doe@example.com",
    "first_name": "Jane",
    "hired_date": "2023-05-15",
    "last_name": "Doe",
    "on_leave_date": "2023-08-20",
    "original_hired_date": "2020-02-16",
    "positions": [
      {
        "employment_type": {
          "canonical_value": "regular-full-time",
          "raw_value": "string"
        },
        "end_date": "2022-12-31",
        "start_date": "2022-01-01",
        "title": "Software Engineer"
      }
    ],
    "salary": {
      "hours_per_week": "40",
      "pay_frequency": {
        "canonical_value": "annually",
        "raw_value": "string"
      },
      "pay_rate": {
        "amount": "150000.00",
        "unit": {
          "canonical_value": "annually",
          "raw_value": "string"
        }
      },
      "reduced_covid": "yes"
    },
    "social_security_number": "***-**-0000",
    "status": {
      "canonical_value": "active",
      "raw_value": "string"
    },
    "status_detail": {
      "canonical_value": "active",
      "raw_value": "string"
    },
    "termination_date": "2024-02-29"
  },
  "employer": {
    "address": {
      "address": "1234 Rainbow Road",
      "city": "San Francisco",
      "country_code": "US",
      "country_subdivision_code": "CA",
      "extended_address": "Suite 300",
      "postal_code": "98265"
    },
    "government_ids": [
      {
        "id": "123456789",
        "type": {
          "canonical_value": "us-fein",
          "raw_value": "string"
        }
      }
    ],
    "name": "ACME Inc"
  },
  "financial_institution_accounts": [
    {
      "account_name": "string",
      "account_type": "string",
      "financial_institution_name": "string",
      "income_streams": [
        {
          "age_in_months": 1,
          "average_monthly_net_income": 1.1,
          "confidence": 1,
          "confidence_level": "string",
          "end_date": "2023-01-15",
          "estimated_gross_annual": 1.1,
          "frequency_days": 1,
          "id": "AAAAAAAAAosABwGqF1AUKAH0-puth1tCzLNar3Jyb4bx3wdVKU99XC31",
          "name": "string",
          "net_annual": 1.1,
          "periods": [
            {
              "amount": 1.1,
              "amount_duration": "string",
              "amount_type": "string",
              "estimated_gross_income": {
                "average_monthly_net_income": 1.1,
                "estimated_gross_annual": 1.1,
                "net_annual": 1.1
              },
              "id": "AAAAAAAAAosABwGqF1AUKAH0-puth1tCzLNar3Jyb4bx3wdVKU99XC31",
              "start_day": "2023-01-15",
              "transactions": [
                {
                  "amount": 1.1,
                  "category": "string",
                  "description": "string",
                  "id": "AAAAAAAAAosABwGqF1AUKAH0-puth1tCzLNar3Jyb4bx3wdVKU99XC31",
                  "payee": "string",
                  "posted_date": "2024-01-15T09:30:00Z",
                  "reference_id": "string",
                  "transaction_type": "string",
                  "type": "string"
                }
              ]
            }
          ],
          "start_date": "2023-01-15",
          "status": "string"
        }
      ],
      "number": "string",
      "oldest_transaction_date": "2023-01-15",
      "owner_name": "string",
      "snapshots": [
        {
          "available_balance": 1.1,
          "average_monthly_balance": 1.1,
          "balance": 1.1,
          "balance_date": "2023-01-15",
          "currency_code": "string",
          "id": "AAAAAAAAAosABwGqF1AUKAH0-puth1tCzLNar3Jyb4bx3wdVKU99XC31",
          "tot_number_days_since_most_recent_insufficient_funds_fee_debit_tx_account": 1,
          "tot_number_insufficient_funds_fee_debit_tx_account": 1,
          "tot_number_insufficient_funds_fee_debit_tx_over_2_months_account": 1
        }
      ]
    }
  ],
  "id": "AAAAAAAADU8ACy03lGitY_ocCMCcgproUq8Gt4r37MM6GbyX2-DxWM3Y",
  "income_analytics": {
    "annualized_income": {
      "base_amount": {
        "amount": "34.95",
        "currency": "USD"
      },
      "gross_amount": {
        "amount": "34.95",
        "currency": "USD"
      },
      "short_employment_warning": true,
      "stale_data_warning": true,
      "variable_income_warning": true
    },
    "income_volatility": {
      "gross_income_volatility": "0.1234"
    }
  },
  "paid_through_date": "2023-01-15",
  "paystubs": [
    {
      "base": "7000.00",
      "bonus": "1000.00",
      "commission": "0.00",
      "gross": "8000.00",
      "id": "AAAAAAAAAmEADp7bmZJNhm4Kr5FM_ty5A_JX-Rxh04GSIHwmIRyp6Xss",
      "net": "5500.00",
      "other": "0.00",
      "overtime": "0.00",
      "pay_date": "2023-01-15",
      "pay_period_end_date": "2023-01-15",
      "pay_period_hours": "86.67",
      "pay_period_start_date": "2023-01-15",
      "reference_id": "6894632654"
    }
  ],
  "report_type": "employment",
  "respondent": {
    "email": "john.doe@example.com",
    "full_name": "John Doe",
    "title": "Software Engineer"
  },
  "verification_request": {
    "created": "2021-12-20T18:50:20.291247Z",
    "id": "AAAAAAAAEboABwQhKv1_pWO7MWtZs28ksPTH0uSt6GffsoIJPj7e69P1",
    "type": "employment"
  }
}
```

**SDK Code**

```python
import requests

url = "https://api.truework-sandbox.com/reports/verification_report_id"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.truework-sandbox.com/reports/verification_report_id';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.truework-sandbox.com/reports/verification_report_id"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.truework-sandbox.com/reports/verification_report_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.truework-sandbox.com/reports/verification_report_id")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.truework-sandbox.com/reports/verification_report_id', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.truework-sandbox.com/reports/verification_report_id");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.truework-sandbox.com/reports/verification_report_id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```