Endpoint
What-if scenarios on the same envelope
Stress / upside paths with explicit caveats — template narrative included.
Stress revenue, opex, and payable timing on the same envelope to compare base, stressed, and upside balances.
POST /api/v1/simulated-scenario-runner
Try in playgroundWhat it returns
Deterministic stress / upside scenarios against the supplied envelope.
Structured fields: scenarios[]
Extra envelope blocks: scenario
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: scenarios[]
Minimal example
{
"endpoint": "simulated-scenario-runner",
"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": {
"scenarios": [
{
"name": "base",
"balance_minor": 512000
},
{
"name": "stressed",
"balance_minor": 445000
},
{
"name": "upside",
"balance_minor": 525000
}
]
},
"narrative": "Scenario interpretation\nRevenue shock: -5%\nOpex shock: 3%\nConfidence caveat: Scenarios are illustrative linear adjustments; they are not forecasts of actual outcomes.\n\nThis narrative is generated from structured signals using fixed templates."
}Minimal curl
curl -sS -X POST "https://api.cashytics.com/api/v1/simulated-scenario-runner" \
-H "Authorization: Bearer cyt_live_YOUR_SECRET" \
-H "Content-Type: application/json" \
-d @envelope.jsonUse the same envelope.json for every endpoint — add optional blocks when this route requires them.