Fraud Detection & Transaction Risk Scoring API
# Fraud Detection API Add real-time fraud scoring to any product with a single API call. Submit a transaction and get back a fraud probability score, a risk classification, and a plain-English explanation of exactly why it was flagged — in under 80 ms. **Live:** https://fraud-detection-api.up.railway.app **Try it:** https://fraud-detection-api.up.railway.app/#demo **RapidAPI:**…
Fraud Detection & Transaction Risk Scoring API endpoints
| Method | Endpoint | Description |
|---|---|---|
| System | ||
| GET |
getHealth /health |
Returns service health and MongoDB connection status. No authentication required. |
| Fraud Detection | ||
| POST |
analyzeTransaction /analyze-transaction |
Core endpoint. Scores a transaction across 8 signals and returns a fraud probability. **How the score is computed:** Each signal returns a value 0–1. Signals are multiplied by… |
| POST |
batchAnalyze /batch/analyze |
Analyze multiple transactions in one request. Basic plan: max 5. Pro plan: max 50. Results are processed in parallel and returned in the same order as submitted. |
| Transactions | ||
| GET |
getTransactionHistory /transactions/{user_id} |
Returns paginated transaction history for a user, sorted by timestamp descending. Basic plan: max 10 per page. Pro plan: max 100 per page. |
| Users | ||
| POST |
recalibrateUser /users/{user_id}/recalibrate |
Rebuild a user's behavioural baseline from scratch using only verified-clean transactions (LOW and optionally MEDIUM risk). Excludes HIGH/CRITICAL transactions which may have… |
| POST |
unblockUser /users/{user_id}/unblock |
Manually unblock a user that was blocked due to a CRITICAL-risk transaction. After unblocking, transactions will be evaluated normally. |
| DELETE |
deleteUser /users/{user_id} |
Permanently deletes the user profile and all associated transaction records. Use for right-to-erasure requests. Scoped to your subscriber account — cannot delete another… |
| GET |
getUserRiskProfile /users/{user_id}/risk-profile |
Returns the learned behavioral profile for a user — average spend, max spend, known device count, known location count, and 30-day high-risk transaction count. Pro plan also… |
| Analytics | ||
| GET |
getMerchantStats /merchants/{name}/stats |
Aggregated fraud statistics for a merchant name across your subscriber account — transaction volume, risk distribution, fraud rate, and average transaction amount. |
| GET |
getDashboardStats /dashboard/stats |
Aggregated fraud metrics. All plans get 24h and 7-day stats. Pro plan also gets a day-by-day 30-day risk trend. |
| Network Detection | ||
| GET |
getNetworkByIP /network/ip/{address} |
Returns how many distinct user accounts have transacted from this IP address. Raw user IDs are never exposed. |
| GET |
getNetworkByDevice /network/device/{fingerprint} |
Returns how many distinct user accounts have used this device fingerprint and the associated risk distribution. Raw user IDs are never exposed. |
| GET |
getUserNetworkGraph /network/user/{user_id} |
Returns all devices, IPs, and locations this user has used, and how many other users share each value. Identifies if a user is part of a fraud network. |
| GET |
getNetworkByLocation /network/location/{location} |
Returns how many distinct user accounts have transacted from this location string, plus risk distribution. Use to detect clusters of fraud from a specific region. |
| Webhooks | ||
| PATCH |
toggleWebhook /webhooks/{id}/toggle |
Enable or disable a registered webhook without deleting it. Toggling off stops deliveries; toggling on resumes them. |
| DELETE |
deleteWebhook /webhooks/{id} |
|
| GET |
listWebhooks /webhooks |
|
| POST |
registerWebhook /webhooks |
Register a URL to receive real-time fraud alerts. Your server will receive a POST request with fraud details and an X-Fraud-Signature HMAC-SHA256 header for verification. |
| Custom Rules | ||
| POST |
testRule /rules/test |
Evaluate a condition string against a sample transaction without saving anything. Use this to validate your rule before creating it. |
| GET |
listRules /rules |
|
| PATCH |
updateRule /rules/{id} |
Update any field of an existing rule. Accepts: name, condition, action, escalate_by, priority, is_active. Condition is re-validated on update. |
| DELETE |
deleteRule /rules/{id} |
|
| POST |
createRule /rules |
Create a rule that runs on every transaction for your subscriber account. **Condition syntax:** - `amount > 10000` - `transaction_type == "wire_transfer"` - `location NOT IN… |
| Calibration | ||
| GET |
getCalibrationStats /outcomes/stats |
Returns your subscriber-level calibration summary — total outcomes reported, chargeback rate, false negative rate, and the current score_boost multiplier applied to your… |
| POST |
reportOutcome /transactions/{id}/outcome |
Report the real-world outcome of a previously scored transaction. If a chargeback occurred on a LOW or MEDIUM risk transaction (false negative), the API recalibrates your scoring… |
| Reputation | ||
| GET |
getIpReputation /reputation/ip/{address} |
Platform-wide fraud statistics for an IP address combined with geolocation data (country, region, city, timezone, coordinates). Includes risk signals like high_platform_fraud_rate. |
| GET |
getDeviceReputation /reputation/device/{fingerprint} |
Platform-wide fraud statistics for a device fingerprint across all subscribers. Returns total transactions, unique user count, high-risk transaction count, fraud rate, and a… |
| Velocity | ||
| GET |
getVelocityConfig /velocity |
Returns the active velocity rule for your subscriber account — max transactions per hour and/or max daily spend per user. |
| DELETE |
deleteVelocityConfig /velocity |
Remove the velocity rule for your account. Transactions will no longer be checked against velocity limits. |
| PUT |
upsertVelocityConfig /velocity |
Create or replace the velocity rule for your account. When a user exceeds the configured threshold, their transaction is immediately forced to CRITICAL risk. |
| Export | ||
| GET |
exportTransactions /export/transactions/{user_id} |
Download all transactions for a user as a CSV file. Supports date filtering and row limits. The CSV includes transaction details, fraud scores, risk levels, and chargeback… |
| Demo | ||
| POST |
demoAnalyze /demo/analyze |
Unauthenticated endpoint for the interactive landing page demo. Accepts editable transaction fields and scores them against a fixed user profile representing an established… |
Fraud Detection & Transaction Risk Scoring API pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | 10 / minute |
|
| PRO Recommended | $49 / month | 500 / minute |
|