Templates
A template is an organization-level document that you fill in many times. Examples: a W-9, an onboarding packet, a claim form. Templates are persistent and have no TTL. CloudRaker never parses or indexes them. Fill references a template as template: { "id": "…" }.
Templates are a different noun from files by design. Files are the inputs a run reads. A file that a run creates is subject to a TTL. Templates are curated assets that live until you delete them.
Add a template
There are two shapes, the same as files. Send url, or send name + mimeType for a presigned upload.
status moves from uploading to ready. CloudRaker does not parse templates, so a template reaches ready when the bytes land. This usually takes seconds.
Read, list, delete
?limit caps the page (1–200, default 50). There is no cursor. The list is a single newest-first page. DELETE returns 204.
Inspect the fields
POST /v1/templates/:id/inspect returns the field inventory with page geometry, a values schema, and a content hash. CloudRaker detects fields when the PDF carries no fillable form. It also reads each field’s printed caption as its label. The first call can be slow. Later calls reuse the result. Templates over 32 MB answer 413 template_too_large.
Inspect is the configure-time step of fill. Curate the returned fields — labels, descriptions, ignore flags — and save them with the templateHash on a fill config. A fill run never re-inspects the form.
box here is in PDF points. Extraction citations differ: their bbox is normalized to 0–1.
Fill from a template
Fill also accepts template: { "url": "…" } for a one-off form. CloudRaker fetches that copy at run time and does not add it to your template library. Use a url for a form you will never see again. Use a saved {id} for a form you fill weekly.
CloudRaker registers the fetched copy as a file in your API workspace. It shows up in GET /v1/files while the run is alive, but it belongs to that run. The run’s TTL reclaims it along with the run’s other files. POST /v1/runs/:id/keep moves it into the space you keep the run into. There is nothing to clean up. A saved template is the opposite: a persistent asset of your library. No run expiry ever deletes it.