Get an envelope's audit trail
The signing evidence for one envelope, oldest first, one page at a time. page is 1-based, limit defaults to 20 and is capped at 100, and the response carries the standard pagination block. Rows with the same timestamp are ordered by their internal sequence, so walking a stable trail does not repeat or skip an entry.
Because the trail names every signer and everything they did, it costs both envelopes:read and account:read. Either grant alone is weaker than the answer.
Actions taken through a service credential are recorded with actorType: "service" and actorName set to the credential's agent identity; signer activity is actorType: "signer"; dashboard activity is user; scheduled jobs are system. metadata is the parsed JSON the action recorded, or null.
Four events are recorded about a recipient rather than by an actor: signer.notified, signer.reminder_sent, envelope.cc_delivered and envelope.cc_delivery_failed. Those rows carry the person written to as metadata.recipientName and metadata.recipientEmail, and their actor fields are null unless a person triggered the send, in which case the actor is that person. Never read a recipient out of actorEmail.
Request
- Base URL: https://inkseal.net/api/v1
- URL: https://inkseal.net/api/v1/envelopes/{envelopeId}/audit-trail
- Auth: HTTP bearer
Query parameters
1-based page number.
Items per page.
Response
The envelope's audit entries, oldest first.
Example response
{
"data": [
{
"action": "signer.viewed",
"actorType": "signer",
"actorEmail": "dana@acme.test",
"actorName": "Dana Reyes",
"ipAddress": "198.51.100.7",
"metadata": {
"recipientName": "Dana Reyes",
"recipientEmail": "dana@acme.test"
},
"createdAt": "2026-08-21T10:02:11.000Z",
"credential": {
"id": "V1StGXR8_Z5jdHi6B-myT",
"name": "Contract intake agent"
},
"agentIdentity": "intake-bot@ops.example.com"
}
]
}Changes
No recorded changes to this operation across all 1 revision of this API.