Ga naar hoofdinhoud

Overige endpoints

Alle endpoints bevinden zich onder https://calc.dev.emrgex.com/v1.

POST /v1/carry

Dagelijkse carry (effectieve rente) voor een verzameling ad-hoc en/of opgeslagen instrumenten — batch. Elk carries-item verwijst naar een instrument en geeft een input en (optioneel) een carry_to-horizon (leeg = volgende coupondatum).

curl -s https://calc.dev.emrgex.com/v1/carry -H 'content-type: application/json' -d '{
"carries": [
{ "instrument_id": "MH12034", "input_kind": "yield", "input_value": 0.10,
"settlement_date": "2026-06-09", "carry_to": "2026-09-09" }
]
}'

POST /v1/generate_cash_flows

Genereer kasstroomschema's voor een verzameling ad-hoc en/of opgeslagen instrumenten — batch.

curl -s https://calc.dev.emrgex.com/v1/generate_cash_flows -H 'content-type: application/json' -d '{
"schedules": [ { "instrument_id": "MH12034" } ]
}'

GET /v1/admin/conventions

Discovery: elk rate_type en day_count dat de engine ondersteunt, elk met een beschrijving, plus het calculation_code-formaat. Zie Conventies.

curl https://calc.dev.emrgex.com/v1/admin/conventions

GET /v1/admin/instruments

Toon de kenmerken van opgeslagen instrumenten (geen kasstroomarrays tenzij with_cashflows=true; cashflow_count is altijd inbegrepen). Alle filters zijn optioneel en worden met AND gecombineerd.

Query paramMatch
rate_type, day_count, calculation_code, currency, period_nameexact
issuer, rate_kind, namesubstring (hoofdletterongevoelig)
qsubstring over id / nemo / isin / issuer / name
amortizing, callableboolean
maturity_from, maturity_toinclusief datumbereik
coupon_min, coupon_maxbereik
sortid · nemo · issuer · maturity · coupon
orderasc · desc
limit (≤ 1000), offsetpaginering; limit=0 geeft alleen het totaal terug
with_cashflowsneem het opgeslagen schema van elk instrument op
curl "https://calc.dev.emrgex.com/v1/admin/instruments?callable=true&sort=maturity&limit=10"

PATCH /v1/admin/instruments/{id}

Werk de coupon_rate en/of coupon_type van een opgeslagen instrument ter plaatse bij — bijv. een herziening van een variabele rente of een repactuação. De wijziging is een in-memory-override (een herlaadbeurt van de catalogus herstelt de bestandsweergave) en invalideert de cache zodat de volgende berekening deze weerspiegelt.

curl -s -X PATCH https://calc.dev.emrgex.com/v1/admin/instruments/MH12034 \
-H 'content-type: application/json' -d '{ "coupon_rate": 0.12 }'

POST /v1/admin/cache/reload

Herlaad de instrumentrepository (atomaire swap, niet-fataal).

Health probes

EndpointDoel
GET /v1/health/livezliveness (alleen het proces)
GET /v1/health/readyzreadiness (faalt tijdens het draineren)
GET /v1/health/startupzstartup (warm-load voltooid)
curl https://calc.dev.emrgex.com/v1/health/livez # {"status":"alive"}

Errors

Errors gebruiken RFC 7807 application/problem+json met type, title, status en detail. In een batch verschijnen mislukkingen per item als de error van dat item, terwijl de rest slaagt.