Envelopes
The Envelopes API allows you to create, retrieve, update, and complete envelopes.
Create Envelope
Creating an envelope is a multi-step process. First, you must obtain an upload URL to upload your document.
Get Upload URL
Endpoint: POST /api/GetUploadUrl
Request Body:
{
"filename": "contract.pdf",
"mimetype": "application/pdf"
}
Response (201 Created):
{
"uploadUrl": "https://storage.blob.core.windows.net/uploads/...",
"envelopeId": "uuid-envelope-id",
"blobName": "uuid/contract.pdf"
}
Next Step: Use the uploadUrl to PUT the binary file content directly to Azure Blob Storage.
Get Envelope
Retrieve details of a specific envelope.
Endpoint: GET /api/envelopes/{id}
Response (200 OK):
{
"id": "uuid-envelope-id",
"status": "draft",
"ownerId": "user-id",
"documentUrl": "https://...",
"signers": [],
"createdAt": "2023-...",
"updatedAt": "2023-..."
}
List Envelopes
List all envelopes owned by the authenticated user.
Endpoint: GET /api/envelopes
Response (200 OK):
[
{
"id": "uuid-1",
"status": "sent",
...
},
{
"id": "uuid-2",
"status": "draft",
...
}
]
Update Envelope
Update an envelope's properties, such as adding recipients or changing status.
Endpoint: PUT /api/envelopes/{id} (or PATCH)
Request Body:
{
"signers": [
{
"id": "signer-1",
"email": "[email protected]",
"name": "John Doe",
"role": "signer"
}
]
}
Response (200 OK): Returns the updated envelope object.
Complete Envelope
Finalize the envelope, allowing the system to flatten the PDF and seal it.
Endpoint: POST /api/envelopes/{id}/complete
Response (200 OK):
{
"message": "Envelope completed",
"signedUrl": "https://storage.../signed.pdf",
"hash": "sha256-hash-of-document"
}