---
title: "List Dispute Alerts"
method: GET
path: "/dispute_alerts"
tags: ["Dispute alerts"]
---

# List Dispute Alerts

`GET /dispute_alerts`

Lists the dispute alerts and early fraud warnings across the accounts you can read.

## Query parameters

- `account_id` string
- `payment_id` string
- `type` 'early_fraud_warning' | 'dispute_alert' | 'rapid_dispute_resolution'
- `first` integer
- `after` string
- `last` integer
- `before` string
- `order` 'created_at' | 'reported_at' | 'amount'
- `direction` 'asc' | 'desc'
- `created_before` string
- `created_after` string

## Headers

- `Api-Version-Date` string

## Response `200`

dispute alerts listed

- object
  - `data` DisputeAlert[], required
    - `account_id` string, nullable, required — The account the alerted payment belongs to, prefixed `biz_`. `null` while the alert is unmatched.
    - `amount` number, required — The alerted amount, in whole units of `currency`. This is what the issuer reported, which can differ from the payment's own amount.
    - `auto_refunded` boolean, required — Whether Whop automatically refunded the alerted payment. Reflects the payment, so it can be `true` for a refund issued by another flow (RDR, resolution) on the same payment.
    - `card_brand` string, nullable, required — The card network as reported by the issuer, lowercased, such as `visa` or `mastercard`. `unknown` when the report carries neither a network nor a recognizable BIN.
    - `created_at` string, required — When Whop received the alert, as an ISO 8601 timestamp.
    - `currency` string, required — Three-letter ISO currency code of the alerted amount.
    - `fee_charged` boolean, required — Whether Whop charged the account an alert fee for this one. Always `false` for `early_fraud_warning`, which Whop is not billed for and never passes on.
    - `id` string, required — Dispute alert ID, prefixed `dspa_`.
    - `issuer` string, nullable, required — Deprecated: always `null` outside Whop's own dashboard. Name of the bank that issued the card and filed the report. DEPRECATED: Always null outside Whop's own dashboard.
    - `payment_id` string, nullable, required — The payment the issuer reported, prefixed `pay_`. `null` when Whop could not match the report to a payment.
    - `product_id` string, nullable, required — The product the alerted payment was for, prefixed `prod_`.
    - `reported_at` string, required — When the issuer filed the report, as an ISO 8601 timestamp. Earlier than `created_at`, which is when Whop received it.
    - `transaction_at` string, nullable, required — When the reported transaction was made, as an ISO 8601 timestamp — falls back to when the matched payment was made if the issuer's own report didn't carry one. Should not be `null` in practice; treat one as a data issue rather than expected behavior.
    - `type` 'early_fraud_warning' | 'dispute_alert' | 'rapid_dispute_resolution', required — What the issuer sent. `early_fraud_warning` is a fraud report on a settled payment (Visa TC40 / Mastercard SAFE) — refunding still avoids the chargeback, and Whop never charges a fee for one. `dispute_alert` is a pre-dispute notice from the issuer's alert network, which Whop pays for and passes on as a fee. `rapid_dispute_resolution` is a Visa RDR case the network already closed by refunding the payment — nothing is left to act on.
    - `updated_at` string, required — When the alert was last changed, as an ISO 8601 timestamp.
  - `page_info` object, required
    - `end_cursor` string, nullable, required
    - `has_next_page` boolean, required
    - `has_previous_page` boolean, required
    - `start_cursor` string, nullable, required

## Other responses

- `400` — Invalid Parameters
- `401` — Unauthorized
- `403` — Forbidden

## Changes

> 74 revisions in range; 1 not diffed.

- **2026-09-25** `c1dceb26e505` — 1 info
  - added the required property `data/items/auto_refunded` to the response with the `200` status
- **2026-09-23** `140d015b9966` — 2 breaking, 1 info
  - removed the required property `data/items/actionable` from the response with the `200` status
  - removed the required property `data/items/not_actionable_reason` from the response with the `200` status
  - response property `data/items/issuer` deprecated
- **2026-09-16** `ff3a76573563` — 1 breaking, 2 warning
  - for the `query` request parameter `first`, default value `20` was added
  - for the `query` request parameter `first`, the max was set to `100.00`
  - for the `query` request parameter `last`, the max was set to `100.00`
- **2026-08-12** `6fb1c04bf255` — 8 breaking, 4 warning, 119 info
  - the `query` request parameter `direction` was restricted to a list of enum values
  - for the `query` request parameter `direction`, default value `desc` was added
  - the `data/items/created_at` response's property format changed from `date-time` to no format for status `200`
  - removed the required property `data/items/alert_type` from the response with the `200` status
  - …127 more

[Change history](https://skmtc.dev/whop/apis/whop-api/changes/dispute_alerts/get.md)

---

[API](https://skmtc.dev/whop/apis/whop-api.md) · [All operations](https://skmtc.dev/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc.dev/whop/apis/whop-api/revisions/78e1ed7366cd?raw)
