POST /protect/report/create
Use this endpoint to create a Protect report to document fraud incidents, investigation outcomes, or other risk events. This endpoint allows you to report various types of incidents including account takeovers, identity fraud, unauthorized transactions, and other security events. The reported data helps improve fraud detection models and provides valuable feedback to enhance the overall security of the Plaid network. Reports can be created for confirmed incidents that have been fully investigated, or for suspected incidents that require further review. You can associate reports with specific users, sessions, or transactions to provide comprehensive context about the incident.
Servers
- https://production.plaid.com
- https://sandbox.plaid.com
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
report_type |
String | Yes |
The type of incident being reported.
Valid values:
|
notes |
String | No |
Additional context or details about the report, required if |
client_id |
String | No |
Your Plaid API |
report_confidence |
String | Yes |
The confidence level of the incident report.
Valid values:
|
incident_event |
Object | No |
details about the incident event. |
incident_event.protect_event_id |
String | No |
A globally unique identifier representing a Protect event that may be associated with this incident. |
incident_event.time |
String | No |
The timestamp when the incident occurred, in ISO 8601 format (e.g., '2020-07-24T03:26:02Z'). |
incident_event.signal_client_transaction_id |
String | No |
The unique ID used to refer to a Signal transaction evaluation that may be associated with this incident. |
incident_event.amount |
Object | No |
The monetary amount associated with the incident. |
incident_event.amount.value |
Number | Yes |
The monetary value of the incident amount. |
incident_event.amount.iso_currency_code |
String | No |
The ISO-4217 currency code of the incident amount. Defaults to Default value: "USD" |
incident_event.idv_session_id |
String | No |
A unique identifier for an Identity Verification session that may be associated with this incident. |
incident_event.internal_reference |
String | No |
A unique ID representing the incident in your system. Personally identifiable information, such as an email address or phone number, should not be used in this field. |
incident_event.access_token |
String | No |
An access token associated with the Item related to this incident. |
incident_event.link_session_id |
String | No |
A unique identifier for a Link session that may be associated with this incident. |
ach_return_code |
String | No |
Must be a valid ACH return code (e.g. |
bank_account |
Object | No |
Bank account information associated with the incident. |
bank_account.routing_number |
String | No |
Routing number of the bank account. Must be present if |
bank_account.account_number |
String | No |
Full account number of the bank account. |
bank_account.account_id |
String | No |
Plaid's unique identifier for the account. |
report_source |
String | Yes |
The source that identified or reported the incident.
Valid values:
|
secret |
String | No |
Your Plaid API |
user_id |
String | No |
The Plaid User ID associated with the report. |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.