# Generate and track offer letters with Google Sheets and Docs: n8n workflow

> Started by another system calling it, and works across Gmail, Google Docs, Google Drive and Google Sheets.

Source: https://millionrounds.com/workflow/generate-and-track-offer-letters-with-google-sheets-and-docs (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Data collection](https://millionrounds.com/workflows?category=Data+collection#library)

# Generate and track offer letters with Google Sheets and Docs

Started by another system calling it, and works across Gmail, Google Docs, Google Drive and Google Sheets. 21 steps, 3 branches: large, and worth reading before you trust it with anything live.

Large

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fgenerate-and-track-offer-letters-with-google-sheets-and-docs)

**21 steps** Large: read it before trusting it with anything live

**3** Branches: places the flow splits

**0** Loops or waits

**4** Services it connects to

## The flow

Starts it 2 Logic 4 Service 15

The steps in the order they run, from what starts it.

- 1 **Google Sheets Trigger** Google Sheets trigger *Starts it*
- 2 **Webhook1** Webhook *Starts it*
- 3 **If4** If *Logic*
- 4 **Get row(s) in sheet2** Google Sheets *Service*
- 5 **Copy Template1** Google Drive *Service*
- 6 **Check Response is Locked?1** If *Logic*
- 7 **Update a offer letter1** Google Docs *Service*
- 8 **Code in JavaScript3** Code *Logic*
- 9 **Document to PDF1** Google Drive *Service*
- 10 **Switch1** Switch *Logic*
- 11 **Save PDF to drive1** Google Drive *Service*
- 12 **Update Status to Accepted1** Google Sheets *Service*
- 13 **Update Status to Rejected1** Google Sheets *Service*
- 14 **Update Status Timeout1** Google Sheets *Service*
- 15 **Assign Sharing Rights1** Google Drive *Service*
- 16 **Ack. Candidate1** Gmail *Service*
- 17 **Ack. Hr1** Gmail *Service*
- 18 **Thank you to Candidate2** Gmail *Service*
- 19 **Thank you to Candidate3** Gmail *Service*
- 20 **Send a message1** Gmail *Service*
- 21 **Update status in sheet1** Google Sheets *Service*

## How it's built

- **Starts on:** Another system calling it
- **Steps:** 21, with 3 branches
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** Gmail, Google Docs, Google Drive, Google Sheets
- **Model:** None. This is plumbing, not judgement

## Questions

What does it need to run?

An n8n account, plus your own Gmail, Google Docs, Google Drive and Google Sheets accounts. You connect your own accounts after importing it; none are included.

What starts it?

It starts on another system calling it.

Does it use AI?

No. Every step is fixed logic or a call to a service, so it does the same thing every time.

How long does it take to set up?

Take your time. At 21 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 21 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fgenerate-and-track-offer-letters-with-google-sheets-and-docs)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Connects to

Each opens the other workflows that use it.

[Gmail](https://millionrounds.com/workflows?service=Gmail#library)[Google Docs](https://millionrounds.com/workflows?service=Google+Docs#library)[Google Drive](https://millionrounds.com/workflows?service=Google+Drive#library)[Google Sheets](https://millionrounds.com/workflows?service=Google+Sheets#library)

## Workflows like it

Also data collection, with the same services where possible, closest in size first.

- [**Automation of creative testing and campaign launching** 21 steps · Google Drive, Google Sheets](https://millionrounds.com/workflow/automation-of-creative-testing-and-campaign-launching)
- [**Filter and label Gmail emails with Google Sheets** 21 steps · Gmail, Google Sheets](https://millionrounds.com/workflow/filter-and-label-gmail-emails-with-google-sheets)
- [**Get a daily financial news digest on Telegram with Mistral** 21 steps · Google Sheets, RSS](https://millionrounds.com/workflow/get-a-daily-financial-news-digest-on-telegram-with-mistral)
- [**Manage vendor onboarding and compliance with Google Sheets** 21 steps · Gmail, Google Sheets](https://millionrounds.com/workflow/manage-vendor-onboarding-and-compliance-with-google-sheets)
- [**Send daily Zillow new-listing digests to Gmail with ScraperAPI** 21 steps · Gmail, n8n data table](https://millionrounds.com/workflow/send-daily-zillow-new-listing-digests-to-gmail-with-scrapera)
- [**Send daily price-drop digest emails** 21 steps · Email, Gmail](https://millionrounds.com/workflow/send-daily-price-drop-digest-emails)
