Browse documentation

Endpoint

Early warning when multiple pressure signals co-move

Composite risk with tripped signals and narrative for risk teams.

Collapse volatility, runway, and drain signals into one composite risk you can alert on.

POST /api/v1/distress-early-warning

Try in playground

What it returns

Composite early warning rail with tripped structural signals.

Structured fields: composite_risk, signals[]

Responses always include a template-generated narrative string alongside structured — safe to show to non-technical stakeholders when you need a spoken summary.

Response shape

Every successful response includes the same top-level keys: endpoint, account_id, processing (ephemeral mode + note), structured, and narrative.

Structured subfields for this route: composite_risk, signals[]

Minimal example

{
  "endpoint": "distress-early-warning",
  "account_id": "acct_demo_001",
  "processing": {
    "mode": "ephemeral",
    "note": "Cashytics processes this request in memory only. Your payload is not stored as a ledger of record after the response is sent."
  },
  "structured": {
    "composite_risk": 35,
    "signals": [
      {
        "id": "liquidity_gap",
        "tripped": false
      },
      {
        "id": "volatility_spike",
        "tripped": true
      },
      {
        "id": "persistent_net_drain",
        "tripped": false
      }
    ]
  },
  "narrative": "Early warning narrative\nActive signals: 1\nOperational meaning: Pressure indicators are isolated — monitor weekly deltas.\n\nThis narrative is generated from structured signals using fixed templates."
}

Minimal curl

curl -sS -X POST "https://api.cashytics.com/api/v1/distress-early-warning" \
  -H "Authorization: Bearer cyt_live_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d @envelope.json

Use the same envelope.json for every endpoint — add optional blocks when this route requires them.

← All endpoints