Skip to main content
POST
/
createDocument
Create Document from Google Sheets
curl --request POST \
  --url https://api.docsautomator.co/createDocument \
  --header 'Content-Type: application/json' \
  --data '
{
  "docId": "<string>",
  "rowNumber": 123,
  "async": true,
  "webhookParams": {},
  "skipEsign": true,
  "actingUserEmail": "<string>",
  "docTemplateLink": "<string>"
}
'
When your automation’s data source is set to Google Sheets, you only need to pass the row number. All field mapping, line items, and output settings are pulled from the DocsAutomator app automatically.
For setup instructions on connecting Google Sheets to DocsAutomator, see the Google Sheets integration guide.

Endpoint

POST https://api.docsautomator.co/createDocument

Request Body

docId
string
required
The automation ID. Find it on the automation’s settings page or via GET /automations.
rowNumber
integer
required
The row number in the Google Sheet to generate a document from (e.g., 2 for the first data row, assuming row 1 is the header).
async
boolean
default:"false"
When true, returns immediately with a jobId (HTTP 202). Poll GET /job/{jobId} for the result.
webhookParams
object
Custom parameters passed through to webhook notifications as webhookParams (plus an identical additionalParams copy kept only for legacy integrations). The triggering rowNumber is folded in automatically (positional at trigger time); your own keys are never overwritten.
skipEsign
boolean
default:"false"
When true, skips e-signing for this request even if the automation has e-signing enabled. The document is generated and delivered normally (Drive save, email, webhook), but no signing session is started and no signing invitations are sent. Useful for two-step approval flows: generate a draft for review first, then re-run without skipEsign to send the document for signing. Also accepted as a query parameter (?skipEsign=true) on GET requests.
actingUserEmail
string
Email address of the team member generating this document. When the automation’s email delivery (or e-signature email settings) has Send from the team member who generates the document enabled, the email is sent from this member’s own connected Gmail or Outlook account instead of the configured sender. The address must match a mailbox connected to the workspace; otherwise DocsAutomator falls back to the automation’s configured sender. Also accepted as a query parameter, which is handy in per-row generate links: append &actingUserEmail=member@company.com to the HYPERLINK formula URL. An X-Acting-User-Email request header is supported too and takes precedence. The in-app Generate button passes this automatically.
Override the automation’s Google Doc template URL for this request only.

Example

curl -X POST https://api.docsautomator.co/createDocument \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "docId": "YOUR_AUTOMATION_ID",
    "rowNumber": 2
  }'

Response

{
  "message": "success",
  "pdfUrl": "https://files.docsautomator.co/..."
}
Additional fields like googleDocUrl, savePdfGoogleDriveUrl, and e-signature fields are included depending on your automation’s configuration. See the API data source page for the full list.
Last modified on June 12, 2026