The SpreadsheetWeb API: your spreadsheet is the backend
The SpreadsheetWeb API publishes an Excel model as a JSON REST service you can call from anything that makes an HTTP request. The business logic stays in the workbook, owned and updated by the people who wrote it, so you integrate against a model rather than reimplementing one.
What a call looks like
Named ranges are the interface. You post the ones you want to set and name the ones you want back.
// send named-range inputs
{
"inputs": [
{ "reference": "IssueAge", "value": "55" },
{ "reference": "FaceAmount", "value": "200000" }
],
"outputs": ["TotalPremium"]
}
// calculated by the workbook
{
"success": true,
"outputs": [
{
"reference": "TotalPremium",
"text": "$2,867.72",
"value": 2867.72
}
]
}
Outputs come back both formatted and raw, so text can go straight
into a UI while value goes into further arithmetic. The API Toolkit builds the
request structure for you as you pick named ranges, and exports a working Postman collection, so
the first call is usually copy and paste rather than reading a spec.
Three things you will touch
Everything else is the workbook.
API Designer
Create an application with API as its type. Upload the workbook, and the named ranges inside it become the parameters your service exposes. No interface to build.
API Toolkit
Pick inputs and outputs, load defaults, run the call, and read the result. It is also where you attach Solver, Goal Seek, document generation and database operations to a request, and where you export to Postman.
API client credentials
Create a client to get an identifier and a secret key, then authenticate and invoke calculations. Access type is set per application, so a public calculator and an internal rating service are configured differently.
What you can do in a request
A call is not limited to setting cells and reading cells. Each of these is configured in the Toolkit and documented separately.
- Inputs and outputs
- Dynamic values in a request
- Named range override
- Queries
- Solver
- Goal Seek
- Save a record to the database
- Load records from the database
- Update an existing record
- PDF generation
- Excel export
- Email events
- Batch calculation
- Return the workbook itself
- Tag a request
- Replay an older transaction
Two of these are worth knowing about early. Solver and Goal Seek can be attached to an API call, so optimisation and back-solving are available over HTTP rather than only in the interface. And replaying an older transaction means you can re-run a historical request against the current model, which is the fastest way to see what a model change did.
Why teams do it this way
The argument is not that this is faster to build. It is that the logic stops being yours to maintain.
Business logic stays with the business
Rating factors, pricing tables and actuarial assumptions are updated in Excel by the people accountable for them. No ticket, no translation step, no developer in the loop for a rate change.
One implementation, not two
The model is not reimplemented in code, so there is no second copy to drift out of sync and no reconciliation exercise when the two disagree.
Auditable by the people who own it
Every transaction is stored and can be replayed, and the workbook behind a result can be returned from the API. When a number is challenged, the answer is a file rather than a stack trace.
The Pagos product transforms the everyday Excel spreadsheet we all know how to use into a service-oriented, enterprise-grade rating and forms engine. It used to take us months to develop and deploy new programs. Now in a matter of days, we can deploy new programs to both our internal underwriters and our customer agents on the web.
SpreadsheetWeb API documentation
In the order you meet them on a project: publish the service, configure and test it, get credentials, authenticate, then move a working request into your own tooling.
Try it against your own model
The free tier includes API access, so you can publish a workbook and make a real call before talking to anyone. If you would rather see it against something closer to your own stack, book a technical call.