Upwork Job Aggregator, AI Summarization & Multi-Channel Notification - n8n Workflow

Use this powerful n8n workflow to automatically scrape Upwork job listings, log them to Google Sheets, summarize key opportunities using OpenAI (GPT-4o mini), and receive daily email notifications via Gmail. Deploy these n8n templates today.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?

Freelancers and consultants who actively seek new projects on Upwork but want to avoid manual searching.
Automation specialists looking for advanced n8n templates combining external scraping (Apify), AI, and database logging.
Users needing a centralized, automatically updated Google Sheet database of potential job leads.
Teams requiring daily, AI-summarized digests of critical market opportunities delivered directly to their inbox.

Overview

This automation solves the problem of constant, manual job hunting by providing a completely automated, AI-enhanced lead aggregation system. This comprehensive n8n workflow starts with a daily n8n trigger, uses an external tool (Apify) to efficiently scrape Upwork job postings based on predefined criteria, and then processes the data. The immediate value is threefold: historical tracking (data stored in Google Sheets), intelligent filtering (summaries generated by OpenAI), and timely communication (digest sent via Gmail). This advanced use of the core n8n node types demonstrates how to integrate sophisticated external services into a reliable, hands-off business process. Utilizing these pre-built n8n templates drastically reduces the time spent on administrative tasks, allowing professionals to focus on bidding and client work.

How it Works

The entire process is initiated by the Daily Upwork Job Trigger, which is a scheduled n8n trigger set to run at 9 AM daily.


  1. Fetching Data: The workflow immediately executes an HTTP Request n8n node (Fetch Upwork Jobs (Apify)), calling an external Apify task ID to scrape the latest Upwork job listings.

  2. Preparation: The returned JSON array is passed to the Format Job Fields n8n node (Set node), which standardizes the data, extracting essential fields like title, url, description, budget, and datePosted.

  3. Logging: Next, the job details are logged permanently into a Google Sheet via the Log Jobs to Google Sheet n8n node, ensuring a continuous, historical database of leads.

  4. AI Summarization: The process then moves to the AI section, leveraging a Langchain Agent node (Summarize Job Listings) powered by the OpenAI Job Summarizer (using GPT-4o-mini). A structured prompt is created using data from the n8n workflow items.

  5. Structured Output: The AI response is enforced into a clean JSON structure (containing subject and Summary) using the Parse Summary Output n8n node.

  6. Notification: Finally, the extracted summary and subject are used by the Send Job Summary Email Gmail n8n node to deliver a concise, actionable digest directly to the user's defined email address.

Installation Guide

To deploy this powerful n8n workflow, follow these steps:


  1. Import the n8n Workflow: Copy the provided JSON data and paste it into your n8n instance using the 'New' -> 'Import from JSON' option.

  2. Apify Setup: In the Fetch Upwork Jobs (Apify) HTTP Request n8n node, replace TASKID> and APITOKEN> in the URL with your actual Apify task details. You must have an Upwork scraper setup on Apify.

  3. Google Sheets Credentials: Update the Log Jobs to Google Sheet n8n node. Connect your Google Sheets OAuth2 API credentials and ensure the Document ID and Sheet Name match your target logging sheet, which should have appropriate headers (Title, URL, Budget, etc.).

  4. OpenAI Credentials: In the OpenAI Job Summarizer n8n node, provide valid OpenAI API credentials.

  5. Gmail Credentials: In the Send Job Summary Email n8n node, configure your Gmail OAuth2 account and update the Send To field to your desired recipient email address.

  6. Activate: Once all n8n node credentials are set, activate the n8n workflow. The scheduled n8n trigger will handle the rest.

Node Details

This n8n workflow utilizes several key n8n node types:

Daily Upwork Job Trigger (Schedule Trigger n8n trigger):
Function: Starts the automation flow daily at 9:00 AM.
Key Configuration: rule: Interval set to run daily, triggering the entire n8n workflow.

Fetch Upwork Jobs (Apify) (HTTP Request n8n node):
Function: Requests the latest dataset of scraped Upwork jobs from a running Apify actor task.
Key Configuration: Uses the POST method and requires a dynamically generated URL containing the Apify Task ID and API Token.

Format Job Fields (Set n8n node):
Function: Standardizes and cleans the job data by mapping raw Apify output fields (e.g., title, description) to clean variables used downstream in the n8n workflow.
Key Configuration: Assignments set to extract specific fields for clean data management.

Log Jobs to Google Sheet (Google Sheets n8n node):
Function: Appends each fetched job as a new row in a designated Google Sheet document for historical record keeping.
Key Configuration: Operation: Append. Requires configuration of Document ID and column mapping.

Summarize Job Listings (Langchain Agent n8n node):
Function: Serves as the orchestrator for the AI summary process, chaining the job data, the prompt, the OpenAI model, and the parser.
Key Configuration: Contains a structured prompt passing the raw job fields (Title, URL, Description) to the AI model.

OpenAI Job Summarizer (Langchain ChatOpenAi n8n node):
Function: Provides the Large Language Model capabilities, generating the human-readable summary.
Key Configuration: Uses gpt-4o-mini for efficient and high-quality summarization.

Parse Summary Output (Langchain Structured Output Parser n8n node):
Function: Ensures the AI's output is reliable by forcing it into a specific JSON schema (containing subject and Summary).
Key Configuration: jsonSchemaExample defines the required output structure.

Send Job Summary Email (Gmail n8n node):
Function: Dispatches the final, AI-generated summary as a daily email digest.
Key Configuration: Recipient email ([email protected] in the JSON example) and dynamic use of the subject and Summary variables outputted by the previous n8n node.

Related n8n Workflows

Free

Nodes: 9 Nodes
Updated: December 26 2025
View all
Created by

Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host If you need any help with Automations, feel free to reach out via linkedin: https://www.linkedin.com/in/yaronbeen/ And check out my Youtube channel: https://www.youtube.com/@YaronBeen/videos

Featured*