Skip to main content
← All datasets

High-Risk Banks

Free

Banks ranked by the exploratory failure-risk screening score (uncalibrated, not a probability of failure).

About this dataset

High-Risk Banks is a Free dataset in the Risk & Failures group of the BankRegReports Data API. The response carries 27 documented fields, sourced from ML model.

Banks ranked by composite ML failure-risk screening score, highest first. The *_prob_* fields are uncalibrated screening scores that rank banks against each other; they are not probabilities of failure. Accuracy above about $10 billion in assets is not established. `prob_10yr` has not been validated out of sample (no 10-year test set has held both outcomes); each row says so in `field_notes`. Any signed-in account.

Endpoint

GET /api/v1/risk/high-risk-banks/

Parameters

Name Required Description
limit optional Max rows (default 25). e.g. 25

Response fields

Field Type Description
rssd_id integer RSSD ID (count)
legal_name string Legal Name (text)
hq_state string, nullable Headquarters State (text)
total_assets number (double), nullable Total Assets (USD thousands)
failure_probability number (double), nullable
risk_tier string, nullable
composite_risk_score number (double), nullable
prob_1yr number (double), nullable
prob_3yr number (double), nullable
prob_5yr number (double), nullable
prob_10yr number (double), nullable 10-year screening score. Not validated out of sample: no 10-year test set has held both outcomes (failed and survived banks), so the accuracy of this score is untested.
distress_prob_1yr number (double), nullable
distress_prob_3yr number (double), nullable
distress_prob_5yr number (double), nullable
acq_prob_1yr number (double), nullable
acq_prob_3yr number (double), nullable
acq_prob_5yr number (double), nullable
field_notes object Machine-readable caveats for fields in this row. `prob_10yr` carries validated_out_of_sample=false.
rank_1yr integer, nullable
percentile_1yr number (double), nullable
rank integer, nullable
rank_tied boolean
peer_group string, nullable
peer_rank_1yr integer, nullable
peer_count integer, nullable
prediction_date string (date), nullable
report_date string (date), nullable Report Date (date)

Example request

curl "https://api.bankregreports.com/api/v1/risk/high-risk-banks/" \
  -H "Authorization: Bearer $BANKREG_API_TOKEN"

Responses are JSON in a {"data": ..., "meta": {...}} envelope. Get a token on the setup page.

Example response shape

A successful call returns HTTP 200 with a JSON body. Each row in data carries the fields below, shown with their documented types rather than sample values.

{
  "data": [
    {
      "rssd_id": "integer",
      "legal_name": "string",
      "hq_state": "string",
      "total_assets": "number (double)",
      "failure_probability": "number (double)",
      "risk_tier": "string",
      "composite_risk_score": "number (double)",
      "prob_1yr": "number (double)"
      ... 19 more fields
    }
  ],
  "meta": { ... }
}

When to use it

High-Risk Banks sits in the Risk & Failures group of the Data API. Reach for it when your work needs this data straight from the API: it comes back as JSON you can load into a notebook, a spreadsheet or a scheduled pipeline, with the dataset key high_risk_banks naming it the same way in the REST path, the Python SDK and the OpenAPI document.

Access and authentication

This dataset is in the Free tier. Send your API token in the Authorization header as a Bearer token, using a GET request to the endpoint above. The Free plan is the first plan that includes it. Check the plan comparison for request limits, and the data update schedule for when new filings reach the API.

Related datasets

  • Failure Risk Score: Exploratory 1-year failure-risk screening score (not a calibrated probability) + safety verdict for one bank.
  • Recent Failures: Most recent bank failures (FDIC).
  • Failures by Year: Bank failure counts and total assets by year.
  • Risk Tier Overview: Counts of banks by failure-risk tier (Critical/High/Elevated/Moderate/Low), from an exploratory screening score.

Keep going

Browse every dataset, follow the setup walkthrough to make a first call, use the Excel add-in for formulas, or connect an assistant through the MCP server.

Python SDK

Install with pip install bankregreports and set BANKREG_API_TOKEN to your key.

import bankregreports

brr = bankregreports.BankReg()  # reads BANKREG_API_TOKEN
result = brr.high_risk_banks()
Powered by BankRegReports API