Fraud Alerts
Report fraud
https://api.firstleeward.com/v0/fraud-alertsFiles a fraud report against a past card transaction. Always confirms the transaction as fraud and blocks the card. If a pending detected alert already exists for the same transaction and is still inside the response window, this delegates to confirm. Partners learn of the block via CARD_STATUS_UPDATED with blockReason: FRAUD_ALERT_CONFIRMED.
Authorizations
Authorizationstring · headerrequiredAPI key as Bearer token, e.g. Bearer YOUR_API_KEY
Headers
Leeward-Versionenum<string>requiredAPI version (YYYY-MM-DD). Available option: 2026-09-18
Idempotency-KeystringUnique key for safely retrying this request. Up to 255 characters; we recommend a UUIDv4. The first request executes and its response is cached; subsequent requests with the same key replay the cached response (24h retention).
Body
application/json
transactionIdstring<uuid>requiredID of the card transaction to report as fraud
typestringrequiredFraud classification
CARD_LOSTCARD_STOLENACCOUNT_NUMBER_MISUSEOTHERcardholderNotifiedAtstring<date-time>ISO 8601 timestamp when the cardholder was notified of the suspected fraud. When supplied, the reporting window is the earlier of the transaction-based deadline and a shorter window from this timestamp. When omitted, only the transaction-based window applies.
Response
200Fraud alert resource
idstring<uuid>requiredUnique fraud alert identifier
cardIdstring<uuid>requiredID of the card this alert is for
transactionIdstring<uuid>requiredID of the card transaction this alert is for
statusstringrequiredCurrent fraud alert status
PENDINGCONFIRMEDDECLINEDEXPIREDoriginstringrequiredHow the alert entered the system (DETECTED via fraud monitoring, or REPORTED by the partner)
DETECTEDREPORTEDtypestring | nullrequiredFraud classification. Present only when status is CONFIRMED; null for others
CARD_LOSTCARD_STOLENACCOUNT_NUMBER_MISUSEOTHERdetectionReasonstring | nullrequiredReason supplied with a detected alert, when present
cardholderMessagestring | nullrequiredCardholder-facing message from the First Leeward or Card Network, when present. Display only - do not branch on its contents
transactionOccurredAtstring<date-time>requiredISO 8601 timestamp of the underlying transaction (anchors the reporting window)
detectedAtstring<date-time>requiredISO 8601 timestamp when the alert was raised (anchors the response window)
respondedAtstring<date-time> | nullrequiredISO 8601 timestamp when the alert was confirmed or declined, if resolved that way
resolvedAtstring<date-time> | nullrequiredISO 8601 timestamp when the alert reached a terminal status
reportableUntilstring<date-time> | nullrequiredISO 8601 deadline for a report after an unanswered detected alert expired. Null unless status is EXPIRED
respondableUntilstring<date-time>requiredISO 8601 deadline for confirming or declining a detected alert
createdAtstring<date-time>requiredISO 8601 timestamp of creation
updatedAtstring<date-time>requiredISO 8601 timestamp of last update
400Fraud reporting is not available for this transaction. It was created by an older sandbox simulation; please try again with a new transaction
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired404Card transaction not found
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired409Fraud alert has already been resolved
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired422Response for status 422
Option 1 · FraudReportingWindowExpiredError
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequiredOption 2 · FraudResponseWindowExpiredError
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired