Download an agreement before everyone has signed
Generate a PDF of the main document and its attachments, with the signatures and approvals collected so far.
What is a Partially Signed Document?
A Partially Signed Document is a generated PDF of an agreement. It includes the main document and the attachments, in the same composition as the final signed PDF, but only the signatures and approvals that have already been given.
It is not the main document, and it is not an attachment. Each successful generation is one revision in a sequence for that agreement.
When you can generate one
Send an empty POST request to agreements/{agreement_id}/documents/partially_signed_documents.
Generation is allowed once at least one signer or approver has signed or approved. The response is a queued revision, and file is null until generation finishes.
Subscribe to these events to get webhook notifications for partially signed documents. See Webhook Events.
agreement.partial_generation.started— generation has startedagreement.partial_generation.failed— generation failed. The revision isfailedand has no file. You can POST again.agreement.partial_generation.finalized— generation succeeded. The revision iscurrentandfileis set.
POST returns an input validation error when nobody has signed or approved yet, when a generation is already queued, or when the latest revision is still current.
Current, stale, and deprecated
The revision you should use is the one with status current.
- current: this revision is up to date with the latest signatures and approvals.
- stale: a previous revision, generated before later signatures or approvals were collected.
- deprecated: 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.
Billing
Each successful generation is charged as a completed agreement whose only participants are the signers and approvers who had finished at that moment. A later generation, after more people have acted, is a separate charge for that larger subset.
Queued generations, failed generations, and GET requests are not charged. Fulfilling the agreement is still billed separately when everyone has finished.
Deleting a revision
DELETE schedules removal of that revision. Removal completes within about 30 minutes. POST to .../cancel-deletion clears that schedule before removal finishes.
Get started
These endpoints are available from API version 3.5.0. Upgrade your API client from the API client settings on zigned.se.