Automate Google Docs into PDFs with Softr Workflows + Docs Automator (Full Tutorial)

Softr
/
November 2, 2025
/
00:14:30

Hello, my name is Hero Palma. I'm a Softr premium partner and expert, and today I’d like to show you a brand new feature of Softr Workflows.

I'm here with my friend Rupert from Docs Automator. He's going to explain how to use the workflows to trigger an API call to create PDFs and store them in the database.

I'm going to show you around in Softr. We will use some form fields and create PDFs out of that data.

My name is Rupert and I am the founder of Docs Automator, a document automation tool based on Google Docs templates that natively integrates with various tools.

Today we would like to show you how to automate professional-looking documents from Softr using Docs Automator.

We are here in Softr Workflows, and every workflow needs a trigger. In our case, we select a database and a table called incidents.

[.blog-callout]
While this tutorial shows how to connect external tools, you can manage your data natively and more efficiently using Softr Databases directly within the platform.
[.blog-callout]

On that table, we have a button called Generate PDF. When that button is clicked, the workflow runs and initiates the actions that come after the trigger step.

The first action is the call API step where we are triggering the Docs Automator API. While it might look complicated, it is actually relatively straightforward.

Most of these things, like the method and URL, just have to be copy-pasted. For instance, the method is always post.

The URL is static: api.docsautomator.co/createDocument. You can find all of this in the Docs Automator knowledge base under resources.

There are no URL parameters we want to pass, so we just leave that part as it is. Then we have to set two headers.

The first header is the content type, which is application JSON. We specify this because we are sending JSON data, or object notation.

[.blog-callout]
If setting up these API calls manually feels complex, remember that Softr Workflows offer many native ways to keep your logic close to your design without external tools.
[.blog-callout]

The second header is authorization. This is the key value we add to authenticate the request in Docs Automator.

The key is always authorization, followed by the word bearer, a space, and then your API key found in your Docs Automator settings.

Once that is done, the connection is active. We can reference the database and now we just need to map the fields.

We need to pass data to the API using placeholders from our Google Doc template. These placeholders are identified with double curly brackets.

When we reference them in Softr, we leave the curly brackets out. We only use them in the document to distinguish them from static data.

For example, a variable called reporter name in the template appears in the Softr workflow request body. This is sent with a data key and a doc ID.

[.blog-callout]
Looking for a starting point for your business tools? Check out our AI CRM template or ERP template to see how data structures work.
[.blog-callout]

The doc ID is the automation ID from Docs Automator. The document name can come from a Softr database field so it is unique for every record.

We can combine tables to create a name using the person's name, the date, and the time so it is named beautifully and dynamically.

Everything in the database can be written into the document. It could even be a static value that doesn't necessarily come from the database.

Usually, we want to automate data coming natively from every record. On the left side, we have the placeholder, and on the right side, we map the Softr field.

When mapping, the field must be in double quotes. We use the add button to find the record value, like an email address, from Softr Databases.

There is no limit to what you can map. You can even transfer image fields, like a signature, into the Google Doc.

This is great for creating product catalogs or damage reports because you can reference images uploaded directly in Softr.

[.blog-callout]
For advanced layouts like custom product catalogs that go beyond standard grids, the Vibe-Coding block lets you prompt for a custom component and connect it to your database.
[.blog-callout]

One small detail: your test record needs to have an image in the file field already so you can select the specific URL for the workflow.

There is validation built-in. If you make a mistake, like forgetting a comma in the JSON, the system will tell you something is not right.

Once the test is successful, we get a response back. We are mainly interested in the PDF URL provided in that response.

Finally, we add an update record step. We select the record ID from the previous step to identify which record to update.

We then update the file field in our database with the PDF URL we received from Docs Automator, and the loop is closed.

In Softr, we can build advanced Forms to collect this data, which is then mapped directly to our incidents table in the database.