API Reference

REST API for regime classification signals, fragility scoring, and macroeconomic stress indicators across 6 regions.


Authentication

All endpoints except /health require authentication via API key.

Header

X-API-Key: rgm_your_api_key

Python example

import requests

API_KEY = "rgm_your_api_key"
BASE = "https://api.regimer.com"

headers = {"X-API-Key": API_KEY}

# Get current US regime
r = requests.get(f"{BASE}/regime/US", headers=headers)
data = r.json()

print(data["regime"])       # "C_TRANSITION"
print(data["confidence"])   # 0.75
print(data["signals"]["credit_stress"])  # 1.20
print(data["fragility"]["nearest_regime"])  # "A_STAGFLATION"

API keys are issued during evaluation. Request access →


Base URL

https://api.regimer.com

All responses are JSON. Dates are ISO 8601. Monetary values are in the pool's native currency.


Regime Classification

GET/regime/{region}requires auth

Current regime classification for a region, including input signals, fragility analysis, and stress indicators across energy, labour, and trade channels.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "regime": "C_TRANSITION",
  "confidence": 0.75,
  "subtype": "C3",
  "region": "US",
  "signals": {
    "supply_chain_pressure": 0.50,
    "credit_stress": 1.20,
    "growth_momentum": 50.0,
    "yield_curve_spread": 0.40,
    "energy_stress_level": "ELEVATED",
    "labour_condition": "NORMAL",
    "trade_stress": "MODERATE"
  },
  "fragility": {
    "stability_score": 35,
    "nearest_regime": "A_STAGFLATION",
    "distance": 4.5,
    "binding_signals": ["signal_a", "signal_b"],
    "all_distances": {
      "B_COLLAPSE":    { "distance": 8.2, "binding": ["signal_c"] },
      "A_STAGFLATION": { "distance": 4.5, "binding": ["signal_a", "signal_b"] },
      "D_GOLDILOCKS":  { "distance": 6.1, "binding": ["signal_b", "signal_c"] }
    }
  },
  "divergence": {
    "active": false,
    "n_signals_stressed": 1,
    "market_calm": true,
    "historical_ppv": 0.275
  },
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/regime/fragilityrequires auth

Regime fragility analysis for all regions. Stability scores, distances to regime boundaries, and binding signals that would trigger transitions.

{
  "regions": {
    "US": {
      "stability_score": 35,
      "nearest_adjacent_regime": "A_STAGFLATION",
      "nearest_distance": 4.5,
      "fragility_flag": false,
      "distances": {
        "B_COLLAPSE":    { "distance": 8.2, "binding_signals": ["..."] },
        "A_STAGFLATION": { "distance": 4.5, "binding_signals": ["..."] },
        "D_GOLDILOCKS":  { "distance": 6.1, "binding_signals": ["..."] }
      }
    },
    "AU": { "..." },
    "DE": { "..." },
    "GB": { "..." },
    "JP": { "..." },
    "CA": { "..." }
  },
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/regionsrequires auth

Validation status for all regions including Sharpe ratio, p-value, and pool status.

{
  "regions": {
    "US": { "status": "POOL_VALIDATED", "sharpe": 1.252, "p_value": 0.0000 },
    "AU": { "status": "POOL_VALIDATED", "sharpe": 1.069, "p_value": 0.0049 },
    "DE": { "status": "POOL_VALIDATED", "sharpe": 1.092, "p_value": 0.0122 },
    "GB": { "status": "POOL_VALIDATED", "sharpe": 1.048, "p_value": 0.0002 },
    "CA": { "status": "POOL_VALIDATED", "sharpe": 1.387, "p_value": 0.0000 },
    "JP": { "status": "CLASSIFIED_UNVALIDATED", "sharpe": 0.953, "note": "Below gate" }
  }
}
GET/regime/history/{region}requires auth

Regime classification history for a region.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "region": "US",
  "entries": 349,
  "history": [
    { "date": "2026-04-01", "regime": "C_TRANSITION", "confidence": 0.82 },
    { "date": "2026-03-31", "regime": "C_TRANSITION", "confidence": 0.81 },
    ...
  ]
}

Stress Signals

GET/energy/{region}requires auth

Energy stress composite. Multiple z-scores across oil, gas, and energy inflation channels. Polarity adjusted for commodity exporters (e.g. falling gas prices are stress for gas exporters).

Parameters

region: US | AU | DE | GB | JP | CA

{
  "region": "US",
  "energy_stress_level": "ELEVATED",
  "oil_equity_divergence": false,
  "exporter_adjusted": false,
  "n_signals": 5,
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/labour/{region}requires auth

Labour market stress composite. Regional unemployment dynamics, wage pressure, and capacity indicators where available.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "region": "US",
  "labour_condition": "NORMAL",
  "unemployment_trend": "stable",
  "n_signals": 4,
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/trade/{region}requires auth

Trade stress composite. Import cost dynamics and trade balance deterioration indicators.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "region": "US",
  "trade_stress": "MODERATE",
  "import_cost_trend": "rising",
  "n_signals": 2,
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/divergence/{region}requires auth

Economic-market divergence assessment. Active when multiple economic signals show stress while credit markets remain calm. Historical PPV: 27.5% (5.3x lift over base rate). Attention signal — not an allocation trigger.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "active": true,
  "n_signals_stressed": 2,
  "min_required": 2,
  "stressed_signals": ["...", "..."],
  "market_calm": true,
  "historical_ppv": 0.275,
  "historical_false_positive_rate": 0.725,
  "historical_lead_months": 7.7,
  "caveat": "Attention signal — not an allocation trigger. ...",
  "timestamp": "2026-01-15T08:00:00Z"
}
GET/acctrequires auth

Proprietary private credit stress composite. Captures stress in private credit markets before it surfaces in public market indicators.

{
  "acct_score": 45.0,
  "acct_level": "BUILDING_STRESS"
}
GET/yield-curve/{region}requires auth

Yield curve spread, level classification, and velocity for a region.

Parameters

region: US | AU | DE | GB | JP | CA

{
  "region": "US",
  "spread": 0.50,
  "level": "NORMAL",
  "change_5d": -0.03,
  "change_20d": -0.10
}

System

GET/health

System health check. No authentication required.

{
  "status": "ok",
  "acct_age_s": 3600,
  "regime_age_s": 3600,
  "server_time": "2026-04-02T08:00:00Z"
}
GET/validationrequires auth

Walk-forward validation results: permutation test outcomes per region.

{
  "walk_forward": {
    "method": "permutation_test",
    "n_permutations": 30000,
    "results": {
      "US": { "z_score": 5.59, "p_value": 0.0000, "sharpe": 1.252 },
      "AU": { "z_score": 3.72, "p_value": 0.0049, "sharpe": 1.069 },
      "DE": { "z_score": 2.62, "p_value": 0.0122, "sharpe": 1.092 },
      "GB": { "z_score": 3.54, "p_value": 0.0002, "sharpe": 1.048 },
      "CA": { "z_score": 6.66, "p_value": 0.0000, "sharpe": 1.387 }
    }
  }
}
GET/audit-chainrequires auth

Audit chain integrity + parameter lock verification. Cryptographic proof that classifications were recorded before outcomes were known, and that parameters were locked before prospective validation began.

{
  "classification_chain": {
    "entries": 7,
    "intact": true,
    "latest_date": "2026-04-02",
    "latest_regime": "C_TRANSITION",
    "latest_hash": "749946768b275d0e..."
  },
  "parameter_lock": {
    "locked_date": "2026-03-28",
    "parent_regime_params": {
      "file": "config/regime_params.json",
      "last_modified_commit": "a093f5e",
      "last_modified_date": "2026-03-24"
    },
    "days_since_lock": 5,
    "verification": "Clone the repository and run: git log ..."
  },
  "prospective_validation": {
    "commenced": "2026-03-28",
    "entries_recorded": 7,
    "first_checkpoint": "2027-03",
    "failure_criteria": "See /prospective-criteria"
  }
}
GET/prospective-criteriarequires auth

Pre-committed failure criteria. Published before any prospective results were evaluated. Defines thresholds for Sharpe degradation, directional accuracy, divergence false positives, and single-episode underperformance.

{
  "parent_regime_criteria": {
    "sharpe_degradation": {
      "trigger": "Sharpe < 0.8 over rolling 24 months",
      "action": "Formal review with published findings"
    },
    "direction_accuracy": {
      "trigger": "< 60% correct direction over 12 months",
      "action": "Formal review"
    }
  },
  "divergence_criteria": {
    "consecutive_false_positives": {
      "trigger": "3+ FPs across different regions in 24 months",
      "action": "Threshold review"
    }
  },
  "review_schedule": {
    "first_checkpoint": "2027-03",
    "publication": "Quarterly, including failures"
  }
}

Rate Limits

Evaluation tier: 100 requests per minute. Delayed US data (1-month lag).

Professional tier: 1,000 requests per minute. Real-time, all validated regions.

Enterprise: Unlimited. All regions including classified-unvalidated. Webhook notifications on regime transitions.


Errors

401Missing or invalid API key
403Valid key but insufficient permissions for this endpoint/tier
404Region not found (invalid region code)
429Rate limit exceeded
{
  "detail": "Authentication required. Provide X-API-Key header."
}

Supported Regions

CodeRegionStatusNotes
USUnited StatesValidatedDaily classifier, full signal coverage
AUAustraliaValidatedCommodity exporter adjustments
DEGermanyValidatedEurozone credit dynamics, EU gas exposure
GBUnited KingdomValidatedGilt-free baskets, LDI-aware
CACanadaValidatedOil exporter, energy-adjusted baskets
JPJapanClassifiedSignal available, baskets not validated (ZIRP structural limitation)

Request API evaluation access →