POST
/cra/check_report/income_insights/getRetrieve income insights
Retrieves an Income Insights report for a user. Call this operation after receiving a CHECK_REPORT_READY or USER_CHECK_REPORT_READY webhook, or after creating a report with /cra/check_report/create; use report_id to retrieve a specific report. If the report has expired or lacks sufficient data, create a new consumer report before retrieving it.
- RetriesRetries up to 2×, 500ms backoff, 30s timeout.
Request to retrieve a user's CRA Income Insights report.
client_idstringoptional
Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.
secretstringoptional
Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.
user_tokenstringoptional
The user token associated with the user for which data is being requested. This field is used only by customers with pre-existing integrations that already use the `user_token` field. All other customers should use the `user_id` instead. For more details, see [New User APIs](https://plaid.com/docs/api/users/user-apis).
third_party_user_tokenstringoptional
The third-party user token associated with the requested User data.
user_idstringoptional
A unique user identifier, created by `/user/create`. Integrations that began using `/user/create` after December 10, 2025 use this field to identify a user instead of the `user_token`. For more details, see [New User APIs](https://plaid.com/docs/api/users/user-apis).
optionsobjectdeprecatedoptional
Deprecated. This field is no longer accepted for new clients (created on or after 2026-07-01). New clients should specify required products when creating the Consumer Report. Existing integrations may continue to pass `options`.
report_idstringoptional
The CRA report token (formatted `cra-report-<env>-<uuid>`) identifying a specific consumer report. When provided alongside `consumer_report_permissible_purpose`, pins retrieval to that report and stamps its permissible purpose. If omitted, the most recently generated report for the user is returned.
consumer_report_permissible_purposeobjectoptional
The permissible purpose under which the consumer report is being retrieved.
200Returns the Income Insights report, request identifier, and any warnings describing data that could not be retrieved.
reportobjectoptional
The Check Income Insights Report for an end user.
request_idstringrequired
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
warningsarray<CraReportWarning>optional
If the Income Insights generation was successful but a subset of data could not be retrieved, this array will contain information about the errors causing information to be missing
defaultError response
error_typestringrequired
A broad categorization of the error. Safe for programmatic use.
error_codestringrequired
The particular error code. Safe for programmatic use.
error_code_reasonstringoptional
The specific reason for the error code. Currently, reasons are only supported for OAuth-based item errors; `null` will be returned otherwise. Safe for programmatic use.
Possible values:
`OAUTH_INVALID_TOKEN`: The user's OAuth connection to this institution has been invalidated.
`OAUTH_CONSENT_EXPIRED`: The user's access consent for this OAuth connection to this institution has expired.
`OAUTH_USER_REVOKED`: The user's OAuth connection to this institution is invalid because the user revoked their connection.
error_messagestringrequired
A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use.
display_messagestringrequired
A user-friendly representation of the error code. `null` if the error is not related to user action.
This may change over time and is not safe for programmatic use.
request_idstringoptional
A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks.
causesarrayoptional
In this product, a request can pertain to more than one Item. If an error is returned for such a request, `causes` will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified.
`causes` will be provided for the `error_type` `ASSET_REPORT_ERROR` or `CHECK_REPORT_ERROR`. `causes` will also not be populated inside an error nested within a `warning` object.
statusintegeroptional
The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook.
documentation_urlstringoptional
The URL of a Plaid documentation page with more information about the error
suggested_actionstringoptional
Suggested steps for resolving the error
required_account_subtypesarray<string>optional
A list of the account subtypes that were requested via the `account_filters` parameter in `/link/token/create`. Currently only populated for `NO_ACCOUNTS` errors from Items with `investments_auth` as an enabled product.
provided_account_subtypesarray<string>optional
A list of the account subtypes that were extracted but did not match the requested subtypes via the `account_filters` parameter in `/link/token/create`. Currently only populated for `NO_ACCOUNTS` errors from Items with `investments_auth` as an enabled product.
Error handling
options.income_insights_version is required when options is used and must be II2; options is deprecated for new clients created on or after 2026-07-01. If report_id is provided, consumer_report_permissible_purpose is also required and must be ACCOUNT_REVIEW_CREDIT or WRITTEN_INSTRUCTION_OTHER.