Scrape Tunisia IT job listings with Groq, Firecrawl, Airtable, and Resend
Needs changesWhat this workflow does
This AI workflow has 16 nodes and runs when a chat message arrives (plus 1 other trigger). Along the way it connects Groq Chat Model and HTTP Request. It also calls api.resend.com and api.firecrawl.dev over HTTP.
How it runs
Trigger: When a chat message arrives (plus 1 other trigger).
- Configure API and Email Settings (Edit Fields (Set)): sets 6 fields: firecrawlApiKey, airtableApiKey, airtableBaseId…
- Rotate Company Selection (Code): runs custom JavaScript code
- Tunisia Job Analyzer Agent (AI Agent): runs an AI agent, with model: Groq Chat Interaction Model; 2 tools (Scrape Job Listings, Airtable Record Saver); memory: Memory Buffer Manager
- Check If Scheduled Run (If): checks a condition and branches into true / false
- Send Email Via Resend API (HTTP Request): calls api.resend.com (POST)
Services it uses
HTTP calls to: api.resend.com, api.firecrawl.dev
Before you upgrade to n8n 3.0
2 things in this workflow are removed in n8n 3.0. Fix them before you upgrade:
- AI Agent v1 (old agent modes) in Tunisia Job Analyzer Agent (v1.7): replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
- HTTP Request Tool (legacy) in Scrape Job Listings, Check Airtable Table Existence, Create Airtable Table…: replace with HTTP Request node connected to the AI Agent's Tool input.
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) Tunisia Job Analyzer Agent (v1.7) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
| HTTP Request Tool (legacy) Scrape Job Listings, Check Airtable Table Existence, Create Airtable Table, Save Jobs to Airtable | HTTP Request node connected to the AI Agent's Tool input |
Nodes used (12)
- Edit Fields (Set)
n8n-nodes-base.set - AI Agent
@n8n/n8n-nodes-langchain.agent - Groq Chat Model
@n8n/n8n-nodes-langchain.lmChatGroq - Simple Memory
@n8n/n8n-nodes-langchain.memoryBufferWindow - HTTP Request Tool
@n8n/n8n-nodes-langchain.toolHttpRequest - AI Agent Tool
@n8n/n8n-nodes-langchain.agentTool - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Code
n8n-nodes-base.code - Chat Trigger
@n8n/n8n-nodes-langchain.chatTrigger - If
n8n-nodes-base.if - No Operation, do nothing
n8n-nodes-base.noOp - HTTP Request
n8n-nodes-base.httpRequest
From the author
Quick overview This workflow runs daily or via chat to scrape Tunisia-focused IT job listings from predefined company career pages using Firecrawl, saves results into Airtable tables, and emails a daily digest through Resend, with job parsing and…