Upsert Signing Profile

Update signing profile

Creates or updates the client's signing profile. Provide a display name, signer email,
and optionally upload signature and initials image files. Existing images are replaced
when new files are uploaded.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Create or update your client's signing profile — the default signing identity (display name and signer email) and the signature and initials images applied when your client signs a document. If no profile exists yet it is created; otherwise the existing one is updated in place. Returns the saved profile.

This endpoint accepts multipart/form-data, not JSON, because it carries optional file uploads.

Authentication & access

  • Requires a client API token: Authorization: Bearer <token>.
  • The caller must hold the contracts.signing_profile.write permission and have the OWNER or OPERATIONS role.
  • Contract signing must be enabled for your client. If the feature is disabled the request returns 403.

Request body (multipart/form-data)

FieldTypeRequiredNotes
display_nametextyesDisplay name shown on signed documents. Leading/trailing whitespace is trimmed.
signer_emailtextyesEmail used for the client's signing identity. Stored trimmed and lower-cased.
default_fieldstext (JSON)noA JSON object of default field values pre-filled when the client signs. Must parse to a JSON object; anything else is rejected (400). Omitted or empty resets to {}.
signature_filefilenoSignature image to store on the profile.
initials_filefilenoInitials image to store on the profile.

Image upload behavior

  • A file field is only processed when a file is actually sent. Omitting signature_file or initials_file leaves the corresponding stored image unchanged.
  • Uploading a new file replaces the previously stored image of that kind; the old file is deleted.
  • An uploaded file with empty contents is rejected (400).

Response

200 — the upsert succeeded. The body is the full saved signing profile:

  • id, display_name, signer_email
  • signature_file_id, initials_file_id — IDs of the stored images, or null when none is set
  • default_fields — the stored default field object
  • created_at, updated_at

Error responses

StatusWhen
400default_fields is not valid JSON or is not a JSON object; an uploaded signature_file or initials_file is empty
403Contract signing is disabled for the client
422Form validation failed (e.g. missing display_name or signer_email)
500The profile could not be persisted

Standard 401 (authentication), 403 (insufficient permission or role), and 429 (rate limit) responses apply to every endpoint and are documented in the Error reference.

Body Params
string
required
string
required
Responses

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json