SpaceSign

Interact with the SpaceSign API

Document → Create Document

AI-generated

Summary

POST /api/v1/documents: creates a document shell in SpaceSign. Requires a title and at least one recipient. Recipients are provided as a fixed collection with email, name, role (options: APPROVER, ASSISTANT, CC, SIGNER, VIEWER), and signingOrder. Optional additional fields may include externalId, formValues, metadata, auth options, and sendEmail control. If uploadDocument is enabled, binary data from the item's binary property is uploaded to the API‑provided uploadUrl.

Inputs

  • title (required) — Title of the document to create
  • recipients (required) — Recipients for the document sign-off. At least one recipient is required. Each recipient includes email, name, role (options: APPROVER, ASSISTANT, CC, SIGNER, VIEWER), and signingOrder (min 1). Provided as a fixedCollection with multipleValues enabled.
  • additionalFields — Optional additional configuration for the document. Contains optional fields: authOptionsJson (json, default '{}'), externalId (string, default ''), formValuesJson (json, default '{}'), metaJson (json, default '{}'), sendEmail (boolean, default true). sendEmail is only included in the API body when explicitly set.
  • uploadDocument — When true, uploads document binary to the SpaceSign uploadUrl returned after document creation.
  • binaryPropertyName — Name of the item's binary property containing the document data. Default 'data'. Only used when uploadDocument is true.
  • contentType — MIME type of the document binary. Default 'application/pdf'. Only used when uploadDocument is true.

Output shape

The SpaceSign API returns the created document object. If uploadDocument is true, the binary is uploaded via PUT to the returned uploadUrl, and the final document resource is available after the PUT completes.

The node returns the JSON response from the API call. No additional transformation is applied beyond binary upload when enabled.

Examples

Example 1: Create a document titled 'Contract' with a single signer

title: 'Contract'; recipients: [{email: 'signer@example.com', name: 'Signer', role: 'SIGNER'}]; additionalFields: {}; uploadDocument: false

Example 2: Create a document and immediately upload a PDF binary

title: 'Report'; recipients: [{email: 'user@example.com', name: 'User', role: 'SIGNER'}]; additionalFields: {}; uploadDocument: true; binaryPropertyName: 'data'; contentType: 'application/pdf'

Discussion