Developers
For developers: price any policy through one API
One contract for every product: schema, execute, explain, simulate and replay, with a record of exactly which rates priced each quote. What’s coming for developers.
The BimaStack team · · 5 min read
One contract for every product
| Call | What it does |
|---|---|
| schema | The product’s inputs and covers as JSON Schema, so your form can be generated |
| execute | Validates the inputs, runs eligibility, underwriting and pricing, and returns the quote: ACCEPT, REFER or DECLINE, the premium, and exactly which versions of which rates priced it |
| explain | The same, with every step of the calculation |
| simulate | Prices a draft that isn’t live yet, to test it |
| replay | Re-runs a recorded quote and reports what moved since |
{
"organizationId": "your-insurer",
"asOfDate": "2026-10-06",
"inputs": { "vehicleValue": 2500000, "wantsExcessProtector": true }
}
→ {
"outcome": "ACCEPT",
"currency": "KES",
"premium": { "netAmount": 93750.00, "taxAmount": 461.88, "totalAmount": 94211.88 },
"rateVersionsUsed": [
{ "kind": "RATE_TABLE", "key": "motor-private-base-rate", "version": 2 }
]
}Built for production
Stable errors. Every error has a code, the field it’s about and a request id. Versioned. An API-Version header, so what you build keeps working. Replayable. Every computation is logged, and a quote can be replayed to show what changed when a rate did. Machine clients. OAuth2 client credentials bound to one organisation, with secrets you can rotate and disable instantly. Paged lists. Cursor paging everywhere, never offsets.