letssign.now docs

Observers

CC-style spectators on a signing request — notified on dispatch + at completion. They never sign.

An observer is a CC-style recipient on a signing request. They never sign; they get notified twice:

  1. On dispatch — when the first signing request goes out: "X is collecting signatures on Y."
  2. At completion — when every signer has signed: a copy of the final tamper-evident PDF + the audit-trail PDF.

Observers are workspace-scoped CCs, distinct from signers. They get no signing URL, no token, no field placement.

Adding observers

{
  "observer_emails": [
    "outside-counsel@law-firm.com",
    "compliance@acme.com"
  ]
}

Pass on POST /v1/signing-requests. Cap is 20 observers per document. Email addresses are de-duplicated and lower-cased server-side; if a signer's email is also in observer_emails, it's removed from the observer list (no double emails).

When are they emailed?

EventObserver notification
First signer is invited"X is collecting signatures…" — sent to all observers
Subsequent signers are invitedNo notification (observer's inbox already has the dispatch note)
Each signer signsNo notification (saved for completion)
All signers have signed"Final signed PDF" + audit-trail PDF — sent to all observers

Observers don't see real-time intermediate events. If you want that level of detail, register a webhook — the workspace webhook fires signing_request.signed per signer, plus document.completed at the end.

Use cases

  • Outside counsel that needs the final signed contract for the firm's file.
  • Compliance / risk that wants the audit trail PDF for an archive without becoming a signer.
  • Account exec who needs a trigger to update the CRM but isn't party to the contract.

What observers don't do

  • Sign — they receive emails, not signing URLs.
  • Place fields — that's placement="manual" territory.
  • Edit observers — once a signing request is dispatched the observer list is fixed for that document.