prefill_map.
Prefill on a single field
Text and date fields accept a staticprefillValue. In the review editor, select
a field and use the Prefill value input (“Optional value filled in ahead of
signing”). Through the API, set it on the field when you create the envelope:
- Checkbox fields ignore prefill. A checkbox always starts unchecked and stays under the signer’s control, so consent is never pre-granted on their behalf.
- Prefill and Fill automatically are mutually exclusive. A field either
carries a static value or derives one, never both. Sending both on one field
returns
422withvalidation_error.
Prefill versus Fill automatically
The field inspector’s Fill automatically dropdown is a different feature. Prefill is a fixed string the sender types now. An automatic field derives its value on the server at the moment the signer signs (the signing date, the signer’s name, email, company, or title, or the sender’s workspace name), and that derivation is recorded in the envelope’s audit trail as machine-filled. Setting one clears the other in the editor: type a prefill value and the dropdown is disabled, pick an automatic source and the prefill input disappears.Template prefill keys
Saving a template freezes its layout, so the fields need stable names that survive every future send. When the template is created, Atlas assigns a snake_case prefill key to each field that can carry a value:
Keys come from the field label, lowercased and slugified: “Company name” becomes
company_name. An unlabeled field falls back to its type (text, date). If two
fields would collide, the second is prefixed with its role name
(buyer_company_name), then suffixed numerically if that still collides.
Reading the keys
GET /api/v1/templates/{id} returns the template graph plus a self-describing
contract that lists every key with the role it belongs to and its saved default:
Passing values at send
POST /api/v1/templates/{id}/envelopes takes a flat prefill map alongside the
recipients. Each entry overrides the saved default for that field; keys you omit
keep whatever the template stored.
"autoSend": false for a review-first draft, which
returns a reviewUrl so a human can check the filled values before anything is
emailed.
When a key doesn’t match
An unrecognized key never fails the send. Atlas creates the envelope and reports the keys it could not place inprefillUnmatched:
prefillUnmatched as a bug in the calling code: the value was
dropped and the field went out blank. Re-read the template’s prefillKeys and
correct the key.
One case does fail: targeting a field bound to an automatic source returns 422
with validation_error, because that field’s value is derived at signing and
cannot be overridden by the sender.
What signers see
A prefilled field renders read-only, styled as already filled, and labeled “Filled by the sender” on hover and to screen readers. It counts as already complete in the signer’s progress meter, so a required field carrying a prefill never blocks submission. At completion the prefilled value is stored on the field exactly like a typed one, so it is stamped into the signed PDF and returned by structured extraction.An unusable prefill is ignored rather than locking the field. A stored value on a checkbox, for
example, leaves the box unchecked and signer-editable, so a field can never be simultaneously
locked and failing validation.
From the dashboard and from agents
- Dashboard. Open a template and expand Prefill fields to see every fillable field, labeled with the role it belongs to and showing its saved default. Values entered there apply to that one send. Fields with an automatic source are listed as derived and cannot be edited.
- MCP.
get_templatereturnsoptional_prefill_keysand anexample_create.prefill_mapyou can copy;send_contract_from_templateacceptsprefill_mapwith the same keys and the same unmatched-key behavior.