Field bindings
Bindings stamp values from outside the document — email sender or subject, today's date, or your company profile — onto generated output at fill time. They resolve at generation and are never stored in case data.
Most values on a generated document come from the document itself (extracted inputs), the user (question inputs), or a formula (computed outputs). Bindings cover the fourth case: values that exist around the case rather than in it — who sent the email, what the subject line said, what today's date is, what your company's address is. A binding is one of the four derived-output kinds a field can carry; for how outputs fit into a field, see Outputs.
What you need
- A template open in the editor
- Owner or member role to edit templates
- For email bindings: a Gmail automation ingesting files into the workspace
The four binding sources
Add an output in a field's Outputs section, set its Kind to Binding, then pick a Source and enter a Path naming the value within that source (for example subject or sender.name).
| Source | What it exposes | Where the value comes from |
|---|---|---|
| Email metadata | Sender, subject, received date | Captured by the Gmail automation that ingested the case's file |
| Email body | The email's body text | Captured only when the automation's Body capture pill is on (off by default) |
| System | Today's date, current timestamp | The clock at generation time |
| Company profile | Company name, owner, owner initials, address lines, phone, fax, plus custom key-value fields | Your company profile |
For System, the recognized paths are date and time synonyms: today, currentDate, todaysDate, or date produce today's date; now, timestamp, or currentTime produce a full timestamp. A binding output whose value type is date defaults to today's date even without a path — the common "Date Prepared" setup.
When bindings resolve
Bindings resolve at read time — when a document is generated, the current value is looked up and stamped through the output's write zones. Nothing is saved back to the case:
- A system binding synthesizes fresh on every generation. A "Date Prepared" field stamps the day the document was actually generated — not the day the template was made or the case was created. Regenerate next week and the new PDF carries next week's date.
- Company profile bindings always reflect the current profile. Update your address once and every future generation across every template uses the new one.
- Binding values don't appear as editable rows in the case detail's Case Data panel. They surface on the generated document itself and on each generation event in the activity timeline.
Email bindings need a Gmail automation
Email metadata and email body values exist only for cases whose files arrived through a Gmail automation. At ingestion, the automation records the email's received date on the case and — depending on its Capture From Email pills — the sender, subject, and body. Sender and Subject are captured by default; Body is off by default, so turn it on if a template binds to the email body. The captured subject also doubles as the case's description.
The practical consequences:
- A case created by manual file upload or a Drive import has no email context — email bindings on its documents stamp blank. That's expected, not a bug.
- If an email binding stamps blank on a Gmail-ingested case, check the automation's capture pills first — a switched-off pill means the value was never captured.
- System and company-profile bindings work on every case regardless of how it was created.
Setting up a binding
Common questions
Why use a binding instead of a static value?
A static value is frozen into the template; a binding reflects the current context at every generation. A "Date Prepared" binding stamps the day the document was actually generated, and a company-profile binding picks up an address change once, across every template — no template edits needed.
Do email bindings work for manually-uploaded cases?
No. Email metadata and body values exist only for cases whose files arrived through a Gmail automation. Cases created by manual upload or Drive import have no email context, so email bindings stamp blank — that's expected. System and company-profile bindings work on every case.
Where do binding values appear?
On the generated document (through the output's write zones) and on each generation event in the activity timeline. They never appear as editable rows in the case detail's Case Data panel, because nothing is saved back to the case.
Why does my email binding stamp blank on a Gmail-ingested case?
Check the automation's Capture From Email pills. Sender and Subject are captured by default, but Body is off by default — a switched-off pill means the value was never captured at ingestion.