Provision API
Connect your systems to everything your teams capture in Provision: form submissions, grid rows, deviations and resource data, straight into your warehouse, BI tool or pipeline.
There is no fixed schema. Each form is a dataset, and its fields are the CSV columns, so the API always matches how your forms are built today.
How it works
-
1Authenticate
Send your API key as a Bearer token. Keys are issued by Provision on request and only ever reach your own organization's data.
Authorization: Bearer ak_xxxxxxxx
-
2List your datasets
One entry per form, grid and resource type, plus deviations, with the columns each one currently has.
GET /v1/datasets [{ "key": "daily_sanitation_check", "columns": [ … ] }, … ]
-
3Download and sync
Page through a dataset as CSV. Send the last row back as a cursor (plus its
row_indexon grid datasets) to get only what changed since.GET /v1/datasets/{key}/csv ?modifiedSince=… &after=… &limit=1000
Rows come back oldest change first. Edited rows come back again, so upsert them.
A page with fewer rows than limit means you're caught up.
In the docs
- AuthenticationThe header, getting a key, and handling the secret.
- DatasetsThe listing, column metadata, and how datasets are named.
- Forms to CSVHow your forms become datasets and columns, with a worked example.
- ResourcesEvery resource and deviation dataset, column by column.
- Incremental syncThe cursor loop, upserting, and a reference implementation.
- Errors & limitsError responses, rate limits, and versioning.