# n8n Workflows Scraper (`dadhalfdev/n8n-workflows-scraper`) Actor

This scraper extracts pre-built, free workflow templates directly from the n8n template library. Pick a category and sort order, and the scraper will navigate n8n's library to extract not only the metadata of each workflow but the full, raw JSON configuration. Get up to 150 workflows per run.

- **URL**: https://apify.com/dadhalfdev/n8n-workflows-scraper.md
- **Developed by:** [Marco Rodrigues](https://apify.com/dadhalfdev) (community)
- **Categories:** Agents, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$15.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🤖 n8n Workflows Scraper

Automating your business logic or building complex AI workflows from scratch can be a daunting task. This scraper simplifies that by extracting pre-built, **free** workflow templates directly from the [n8n template library](https://n8n.io/workflows/).

Simply choose a category and sort order, and the scraper will navigate n8n's library to extract not only the metadata of each workflow but the **full, raw JSON configuration**!

### 💡 Perfect for...

- **AI Agents & Builders:** Feed thousands of real-world workflow configurations to LLMs to train AI agents on how to construct, link, and mimic complex automation pipelines.
- **Automation Engineers:** Quickly discover, download, and analyze how other professionals are solving automation challenges using n8n.
- **RAG Systems:** Build a Retrieval-Augmented Generation database of automation nodes, structures, and use cases to help users troubleshoot or design their own pipelines.
- **Market Research:** Analyze the most popular automation trends—which nodes are used most frequently in "AI RAG" vs "CRM" vs "DevOps"?

### ✨ Why you'll love this scraper

- 🎯 **Raw JSON Extraction:** We use headless browser automation to explicitly copy the exact raw workflow JSON that you can instantly import into your own n8n instance.
- ⚙️ **Category Filtering:** Pinpoint exactly what you're looking for by selecting from 20+ specialized categories like `AI Chatbot`, `Lead Generation`, `SecOps`, or `Crypto Trading`.
- 🆓 **100% Free Templates Only:** The scraper automatically skips any paid/premium templates and focuses exclusively on workflows with a price of `0`, guaranteeing you get immediately usable data.
- 🚀 **Concurrent Processing:** The scraper handles listing extraction and deep-page JSON clipboard extraction efficiently in parallel.

### 📦 What's inside the data?

For every workflow extracted, you will get:
- **Core Details:** `id`, `name`, `category` (the library category you scraped, e.g. `AI Chatbot`), `workflow_url`, `description`, `created_at`, `total_views`
- **Creator Details:** `creator_id`, `creator_name`, `creator_username`, `creator_bio`, `creator_verified`
- **Pricing:** `price`, `purchase_url`
- **The Engine:** `workflow_json` — The complete, raw JSON object representing the nodes, connections, and metadata of the workflow itself.

### 🛠️ Configuration options

You can customize the scraper's run with the following parameters:
- **Category:** Pick from an extensive list of use cases (e.g., `AI Chatbot`, `AI RAG`, `DevOps`, `HR`, `Engineering`, etc.).
- **Sort By:** Determine the order of the results:
  - **Relevancy**
  - **Popularity**
  - **Most recent**
- **Max Workflows:** Set how many workflows you want to scrape (between 20 and 300).

### 🚀 Quick start

1. Select your desired **Category** from the dropdown.
2. Choose your **Sort by** preference.
3. Set your **Max Workflows** limit.
4. Click **Start**! 
5. Once complete, download your data in JSON format to ensure the nested `workflow_json` configurations remain perfectly structured.

---

#### Tech details for developers 🧑‍💻

**Input Example:**
```json
{
  "category": "AI Chatbot",
  "sort_by": "Popularity",
  "max_workflows": 50
}
````

**Output Example:**

```json
{
  "id": "14209",
  "name": "Build an omnichannel OTP verification flow",
  "category": "AI Chatbot",
  "workflow_url": "https://n8n.io/workflows/14209-build-an-omnichannel-otp-verification-flow/",
  "total_views": 1500,
  "price": 0,
  "purchase_url": null,
  "creator_id": 102798,
  "creator_name": "Yenire",
  "creator_username": "yenire",
  "creator_bio": "Founder of Swiftline...",
  "creator_verified": false,
  "description": "Receives user identity data from multiple channels (WhatsApp, Telegram, email)...",
  "created_at": "2026-03-20T23:18:52.112Z",
  "workflow_json": {
    "id": "o5tdn6I0A2mz6lbZ",
    "name": "Send advice from three AI personas via LINE, Gemini, and Google Sheets",
    "nodes": [
      {
        "id": "c4365520-63df-4041-93be-00bea975f4ec",
        "name": "Sticky Note — Overview",
        "type": "n8n-nodes-base.stickyNote",
        "position": [-960, 16]
      }
    ],
    "connections": {
      "Set config": {
        "main": [
          [{"node": "Parse LINE event", "type": "main", "index": 0}]
        ]
      }
    }
  }
}
```

**Parameters:**

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `category` | string | `AI Chatbot` | Category of the workflows to scrape. |
| `sort_by` | string | `Relevancy` | Sort the workflows by the given criteria. |
| `max_workflows` | integer | `100` | The maximum number of workflows to scrape (20 - 150). |

# Actor input Schema

## `category` (type: `string`):

Category of the workflows to scrape.

## `sort_by` (type: `string`):

Sort the workflows by the given criteria.

## `max_workflows` (type: `integer`):

The maximum number of workflows to scrape.

## Actor input object example

```json
{
  "category": "AI Chatbot",
  "sort_by": "Relevancy",
  "max_workflows": 100
}
```

# Actor output Schema

## `overview` (type: `string`):

Table view of scraped N8N workflows using the dataset 'overview' view.

## `results` (type: `string`):

All scraped N8N workflows from the default dataset without view transformation.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("dadhalfdev/n8n-workflows-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("dadhalfdev/n8n-workflows-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call dadhalfdev/n8n-workflows-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=dadhalfdev/n8n-workflows-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "n8n Workflows Scraper",
        "description": "This scraper extracts pre-built, free workflow templates directly from the n8n template library. Pick a category and sort order, and the scraper will navigate n8n's library to extract not only the metadata of each workflow but the full, raw JSON configuration. Get up to 150 workflows per run.",
        "version": "0.1",
        "x-build-id": "07ECbYKrrKOz6OPAm"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/dadhalfdev~n8n-workflows-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-dadhalfdev-n8n-workflows-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/dadhalfdev~n8n-workflows-scraper/runs": {
            "post": {
                "operationId": "runs-sync-dadhalfdev-n8n-workflows-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/dadhalfdev~n8n-workflows-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-dadhalfdev-n8n-workflows-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "category": {
                        "title": "Category",
                        "enum": [
                            "AI Chatbot",
                            "AI RAG",
                            "AI Summarization",
                            "Multimodal AI",
                            "CRM",
                            "Lead Generation",
                            "Lead Nurturing",
                            "SecOps",
                            "Engineering",
                            "DevOps",
                            "Content Creation",
                            "Market Research",
                            "Social Media",
                            "Document Extraction",
                            "File Management",
                            "Invoice Processing",
                            "Crypto Trading",
                            "HR",
                            "Miscellaneous",
                            "Personal Productivity",
                            "Project Management",
                            "Internal Wiki",
                            "Support Chatbot",
                            "Ticket Management"
                        ],
                        "type": "string",
                        "description": "Category of the workflows to scrape.",
                        "default": "AI Chatbot"
                    },
                    "sort_by": {
                        "title": "Sort by",
                        "enum": [
                            "Relevancy",
                            "Popularity",
                            "Most recent"
                        ],
                        "type": "string",
                        "description": "Sort the workflows by the given criteria.",
                        "default": "Relevancy"
                    },
                    "max_workflows": {
                        "title": "Max Workflows",
                        "minimum": 20,
                        "maximum": 150,
                        "type": "integer",
                        "description": "The maximum number of workflows to scrape.",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
