# Screen candidates and send take-home assignments: n8n workflow

> Started by an event in a connected app, and works across Gmail, Google Sheets and in-memory vectors.

Source: https://millionrounds.com/workflow/screen-candidates-and-send-take-home-assignments (Millionrounds; every figure on the page links to its filing or article)

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

# Screen candidates and send take-home assignments

Started by an event in a connected app, and works across Gmail, Google Sheets and in-memory vectors. It puts Claude and OpenAI behind a retrieval step, so answers are drawn from documents you supply rather than from the model alone. 17 steps, 1 branch: a working afternoon to understand properly.

Medium Calls a model: Claude, OpenAI Retrieval

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fscreen-candidates-and-send-take-home-assignments)

**17 steps** Medium: a working afternoon

**1** Branch: places the flow splits

**0** Loops or waits

**3** Services it connects to

## The flow

Starts it 1 Model 8 Logic 3 Service 5

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

- 1 **Run manually** Manual trigger *Starts it*
- 2 **Rubric document loader** Document Default Data Loader *Model*
- 3 **Embeddings** Embeddings Open Ai *Model*
- 4 **Anthropic Chat Model** Lm Chat Anthropic *Model*
- 5 **Structured score parser** Output Parser Structured *Model*
- 6 **Set config + rubric** Set *Logic*
- 7 **Load rubric into vector store** Vector Store In Memory *Model*
- 8 **Rubric retriever (tool)** Vector Store In Memory *Model*
- 9 **Score candidate vs rubric** Agent *Model*
- 10 **Fix score format** Output Parser Autofixing *Model*
- 11 **Get candidates from Google Sheet** Google Sheets *Service*
- 12 **Flatten scores for Sheet** Code *Logic*
- 13 **Write scores back to Sheet** Google Sheets *Service*
- 14 **Get approved shortlist** Google Sheets *Service*
- 15 **Switch** Switch *Logic*
- 16 **Email the take-home assignment** Gmail *Service*
- 17 **Human evaluation** Gmail *Service*

## How it's built

- **Starts on:** An event in a connected app
- **Steps:** 17, with 1 branch
- **Size:** Medium: a working afternoon
- **Connects to:** Gmail, Google Sheets, in-memory vectors
- **Model:** Claude, OpenAI
- **Retrieval:** Answers are drawn from documents you supply, not from the model alone

## Questions

What does it need to run?

An n8n account, plus your own Gmail, Google Sheets and in-memory vectors accounts, and a key for Claude and OpenAI. You connect your own accounts after importing it; none are included.

What starts it?

It starts on an event in a connected app.

Does it use AI?

Yes. It calls Claude and OpenAI. Its answers draw on documents you give it, not on the model alone. Model calls are billed by the provider, not by n8n.

How long does it take to set up?

Plan an afternoon. 17 steps is enough that you should read each one before running it.

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 17 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%2Fscreen-candidates-and-send-take-home-assignments)
- **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 Sheets](https://millionrounds.com/workflows?service=Google+Sheets#library)[in-memory vectors](https://millionrounds.com/workflows?service=in-memory+vectors#library)

## Workflows like it

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

- [**AI resume screening & evaluation for HR with OpenAI** 17 steps · calls a model · Google Drive, Google Sheets](https://millionrounds.com/workflow/ai-resume-screening-and-evaluation-for-hr-with-openai)
- [**Automate job applicant screening with OpenAI and Gmail** 17 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/automate-job-applicant-screening-with-openai-and-gmail)
- [**Convert any file type into PDF and extract text** 17 steps · calls a model · Google Drive, Google Sheets](https://millionrounds.com/workflow/convert-any-file-type-into-pdf-and-extract-text)
- [**Log new hiring leads from Apify to Sheets with OpenAI** 17 steps · calls a model · Apify, Google Sheets](https://millionrounds.com/workflow/log-new-hiring-leads-from-apify-to-sheets-with-openai)
- [**Resume data extraction and storage** 17 steps · calls a model · Gmail, Supabase](https://millionrounds.com/workflow/resume-data-extraction-and-storage)
- [**Schedule interviews and send GPT-4 reminders** 17 steps · calls a model · Gmail, Google Calendar](https://millionrounds.com/workflow/schedule-interviews-and-send-gpt-4-reminders)
