Skip to main content

Download an agreement before everyone has signed

· 2 min read

Signing often takes days. Until now, the only PDF you could download was the one produced after everyone had finished.

API version 3.5.0 lets you generate a Partially Signed Document: the main document and its attachments, with the signatures and approvals collected so far.

What you get​

A Partially Signed Document is not the main document, and it is not an attachment. It is a generated PDF in the same composition as the final signed file, limited to the people who have already signed or approved.

Each successful generation is a revision. The one you should use is the revision with status current.

When you can generate one​

POST to agreements/{agreement_id}/documents/partially_signed_documents with an empty body once at least one signer or approver has acted. The response is queued, and file is null until generation finishes.

The request is rejected with an input validation error when nobody has acted yet, when a generation is already queued, or when the latest revision is still current.

Current, stale, and deprecated​

  • current means this revision is up to date with the latest signatures and approvals.
  • stale means it is a previous revision, generated before later signatures or approvals were collected.
  • deprecated means the revision does not match the agreement as it stands now. That can happen because signatures were recalled, a document changed, or something else about the agreement no longer matches the PDF.

Notifications while it generates​

Subscribe to these events to get webhook notifications for partially signed documents: when generation starts, when it fails, and when the PDF is ready.

  • agreement.partial_generation.started
  • agreement.partial_generation.failed
  • agreement.partial_generation.finalized

How it is billed​

Each successful generation is charged as a completed agreement of only the participants who had signed or approved at that moment. If you generate again after more people have acted, that file is a separate charge for the larger subset.

Queued generations, failed generations, and downloads are not charged. Fulfilling the agreement is still billed separately when everyone has finished.

Deleting a revision​

DELETE schedules removal, which completes within about 30 minutes. Cancel that schedule with the cancel-deletion endpoint before removal finishes.

Get started​

Upgrade your API client to version 3.5.0. You can do this from your API client settings on zigned.se by clicking "Upgrade".