Skip to main content
Signer-scoped endpoints are available to any user who has an active signer assignment in the Safeclose signing system. Every endpoint in this group enforces that the authenticated user is actually assigned to the package being accessed — you cannot read or sign documents on a package where you are not listed as a signer. If your Clerk account has no linked signer row, all endpoints in this group return 404. You can check caps.canViewSignerAssignments in the session payload before calling these routes.
Signer access is scoped strictly to packages you are assigned to. You cannot enumerate packages you are not assigned to, even if you also hold a manager role.

List your signing packages

Returns all signing packages you are assigned to as a signer, together with the parent signing rows. Results are ordered by most recently updated first and capped at 100 entries each.
No query parameters.

Response

array
required
Your signer stub rows. Each object contains the fields below.
array
required
The parent signing package records for all packages in the signers list, deduplicated. Ordered by most recently updated first.

Error responses


Get one signing package

Returns the full signing package record for a single package you are assigned to.
string
required
Numeric ID of the signing package (as a string, e.g. "3001").

Response

object
required
The signing package record for this package.

Error responses


List documents in a signing package

Returns all documents in the package, ordered by position ascending then by id ascending. Capped at 500 documents.
string
required
Numeric ID of the signing package.

Response

array
required
Array of document records for this package.

Error responses


Get one document

Returns a single document row from a package you are assigned to.
string
required
Numeric ID of the signing package.
string
required
Numeric ID of the document.

Response

The document record for the requested document.

Error responses


Record an e-signature

Records that you have electronically signed a specific document in a package. This is the primary signing action in the signer flow.
string
required
Numeric ID of the signing package.
string
required
Numeric ID of the document to sign.
This endpoint is idempotent. The e_sign_recorded_at timestamp on your signer row is written only on the first successful call. Subsequent calls for the same document return ok: true with firstESign: false and the same observedAt time from the first signing event—you will not receive an error.

Request body

The request body is optional. Omit it entirely or send an empty object {}.
object
Optional metadata about the client environment at the time of signing.
The server also reads the x-forwarded-for header to capture the client IP for the audit record. Your API gateway or load balancer should set this header.

Response

boolean
required
Always true on a successful call.
boolean
required
true if this call recorded the e-signature for the first time. false if the document had already been signed by you previously (idempotent repeat call).
string
required
ISO 8601 timestamp of when this signing event was observed by the server.
object or null
The updated document record after the signing action, or null if the document could not be re-fetched.
object or null
Your updated signer record for this package, reflecting the new status and timestamps, or null if the signer record could not be re-fetched.
boolean
required
true if a vault integration event was triggered for downstream processing. false if the signing package’s organization could not be resolved — the e-signature is still recorded regardless.

Error responses


List co-signers on a package

Returns all signer records on the same package. Useful for displaying the signing status of other parties in the transaction. Ordered by signer number ascending, capped at 200 entries.
string
required
Numeric ID of the signing package.

Response

array
required
All signer records for this package, including your own record and all co-signers.

Error responses


Get one co-signer

Returns a single signer record from the package.
string
required
Numeric ID of the signing package.
string
required
Numeric ID of the signer row to fetch.

Response

The signer record for the requested signer.

Error responses