# n8n Workflow Templates API (`johnvc/n8n-workflow-templates-scraper`) Actor

Extract n8n workflow templates and creator analytics via API. Search 10,000+ automation templates, rank the most viewed workflows, pull importable workflow JSON, and analyze any creator's full portfolio with view counts.

- **URL**: https://apify.com/johnvc/n8n-workflow-templates-scraper.md
- **Developed by:** [John](https://apify.com/johnvc) (community)
- **Categories:** Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.01 / 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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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 Workflow Templates API

Find and extract n8n templates, view counts, and creator analytics from the public [n8n workflow library](https://n8n.io/workflows/) with one API call. Search 10,000+ n8n workflow templates, rank the most viewed n8n workflows, analyze any creator's full portfolio, and download importable workflow JSON you can paste straight into your own n8n instance.

Most template tools just dump the library. This one is built for research: it ranks n8n templates by popularity (total and recent views), analyzes creators, and tells you which automations people actually use.

> Not affiliated with, endorsed by, or connected to n8n. This API reads the public n8n workflow template library and returns it as structured data.

### What this API returns

- One clean JSON row per template: name, description, link, categories, apps and node types used, node count, paid-template price, and publish date
- Popularity signals on every row: **totalViews** (all-time) and **recentViews** (trending)
- Creator analytics: profile, verified status, portfolio size, and every workflow a creator has published, sorted by views
- Optional **importable workflow JSON** (nodes, connections, settings) for every template
- Stable `result_type` discriminator (`template`, `creator_profile`, `error`) so agents and pipelines can filter reliably

### Use cases

- **Find the most viewed n8n workflows** in any category to see which automations are worth building or selling
- **Analyze a competitor creator** on the [n8n creators directory](https://n8n.io/creators/): portfolio size, most popular templates, paid vs free mix
- **Research template gaps** before publishing your own: search a niche, sort by views, and study what ranks
- **Bulk-download importable workflow JSON** for an internal template catalog or an AI agent that assembles automations
- **Track trending automations** by comparing recentViews against totalViews over scheduled runs

### Input parameters

| Parameter | Type | Required | Description |
|---|---|---|---|
| `mode` | string | no | `search` (default), `creator`, or `details` |
| `queries` | array | no | Search terms for search mode. Empty = browse the whole library with the chosen sort |
| `sortBy` | string | no | `most_viewed` (default), `newest`, or `relevance` |
| `categories` | array | no | Library category names, e.g. `["AI"]`, `["Marketing"]` |
| `apps` | array | no | App slugs, e.g. `["openai", "slack", "google-sheets"]` |
| `nodes` | array | no | Full node type names, e.g. `["n8n-nodes-base.httpRequest"]` |
| `usernames` | array | creator mode | Creator usernames or creator page URLs |
| `workflowIds` | array | details mode | Workflow ids or template URLs |
| `includeWorkflowJson` | boolean | no | Attach the importable workflow definition to each row |
| `maxResults` | integer | no | Cap on template rows returned. Default 25 |

Run it with all defaults and you get the 25 most viewed n8n workflows in the entire library.

#### Field completeness (summary vs full detail)

Search mode returns a fast summary for each template. Two fields, **recentViews** and **categories**, live only on a template's full detail record, so in search mode they come back empty unless you enable `includeWorkflowJson`, which fetches the detail (and the importable JSON) for every row and backfills them. Creator mode and details mode already include recentViews and categories. `price` and `purchaseUrl` are null for free templates, which is most of them.

#### Scrape the entire library in one run

The library holds about 10,800 workflows and paginates cleanly to the end. To capture all of them in a single run, use search mode with an empty query and set `maxResults` to `0` (retrieve everything):

```json
{ "mode": "search", "sortBy": "most_viewed", "maxResults": 0 }
````

`maxResults: 0` means "return every matching result." It works the same way for a filtered search (all results for that query) and for creator mode (a creator's full portfolio).

Add `"includeWorkflowJson": true` if you also want every workflow's categories, recentViews, and importable JSON (this makes the run longer and adds the per-workflow add-on charge).

### Example output

```json
{
  "result_type": "template",
  "id": 1951,
  "url": "https://n8n.io/workflows/1951/",
  "name": "Scrape and summarize webpages with AI",
  "totalViews": 390701,
  "recentViews": 12094,
  "createdAt": "2023-10-03T17:04:44.645Z",
  "price": null,
  "creatorUsername": "n8n-team",
  "creatorVerified": true,
  "categories": ["AI"],
  "nodes": ["n8n-nodes-base.httpRequest", "@n8n/n8n-nodes-langchain.openAi"],
  "nodeCount": 8,
  "query": "ai agent",
  "workflowJson": null
}
```

Creator mode adds one profile row per creator:

```json
{
  "result_type": "creator_profile",
  "creatorUsername": "oneclick-ai",
  "creatorName": "Oneclick AI Squad",
  "creatorVerified": true,
  "workflowsCount": 237,
  "url": "https://n8n.io/creators/oneclick-ai/"
}
```

### 🔌 Integrations: turn n8n templates into a recurring data pipeline

This API is most useful on a schedule, not as a one-off. Point it at the [n8n workflow library](https://n8n.io/workflows/) and let the results flow into whatever you already use.

- **Tasks and Schedules (start here):** save your search as a task and run it on a schedule (daily, weekly) to track which n8n templates are trending over time. Configure both from the Apify Console.
- **n8n:** yes, you can use this from n8n itself. Call it with the HTTP Request node or the Apify integration to pull the most viewed n8n workflows into your own automations.
- **Make and Zapier:** connect the Apify app to push template rows into a spreadsheet, Airtable, or a Slack digest of the week's top workflows.
- **Storage and databases:** write the dataset straight to Google Sheets, Supabase, or any warehouse via the Apify integrations, then dedupe on `id`.
- **MCP and AI agents:** expose the API as a tool so Claude or another LLM can fetch and reason over n8n templates on demand (see the MCP section below).
- **Webhooks:** fire a webhook when a run finishes to trigger downstream jobs the moment fresh data lands.

### Pricing

Pay per result, with a free tier and no subscription. Two events are charged:

- `template_returned`: one charge per template or creator-profile row in your dataset
- `workflow_json_returned`: a small add-on per importable workflow JSON, only when `includeWorkflowJson` is enabled

This is one of the lowest-cost ways to pull n8n template intelligence at scale; see the Pricing tab on the store card for current per-event rates.

### How to get started

1. Open the actor and press Start with the default input: you get the 25 most viewed n8n workflows in the library
2. Switch `mode` to `creator` and add a username to analyze a publisher's portfolio
3. Enable `includeWorkflowJson` when you want ready-to-import workflow definitions

[View on Apify Store](https://apify.com/johnvc/n8n-workflow-templates-scraper?fpr=9n7kx3)

### 🔌 Use this API from Claude (MCP)

Add this actor as a tool in [Claude Code](https://claude.ai/referral/uIlpa7nPLg) (free trial), [Claude Cowork](https://claude.ai/referral/uIlpa7nPLg) (free trial), or any other MCP client, via the hosted Apify MCP server. Use this actor-specific URL:

https://mcp.apify.com/?tools=actors,docs,johnvc/n8n-workflow-templates-scraper

Setup walkthrough:

https://www.youtube.com/watch?v=jREWahDGhJM

Apify MCP integration docs: https://docs.apify.com/platform/integrations/mcp

### 🔗 Related tools

Other APIs from the same publisher that pair well with an n8n automation stack:

- [RapidAPI Marketplace API](https://apify.com/johnvc/rapidapi-marketplace-api?fpr=9n7kx3): discover and compare APIs the way this actor discovers workflow templates.
- [Google News API](https://apify.com/johnvc/GoogleNewsAPI?fpr=9n7kx3): a clean news feed to pipe into your n8n workflows.
- [LinkedIn Posts API](https://apify.com/johnvc/linkedin-posts-api?fpr=9n7kx3): structured social data for content and lead-gen automations.

Compared to a plain dump like the [n8n-template-scraper](https://apify.com/louisdeconinck/n8n-template-scraper?fpr=9n7kx3), this API adds the two things research actually needs: view-ranked popularity and creator analytics.

### 💡 Example tasks

Ready-to-run examples of this API solving a specific job:

- [Find the most viewed n8n workflows](https://apify.com/johnvc/n8n-workflow-templates-scraper/examples/find-most-viewed-n8n-workflows?fpr=9n7kx3): rank the whole library by popularity.
- [Analyze an n8n creator's workflow portfolio](https://apify.com/johnvc/n8n-workflow-templates-scraper/examples/analyze-n8n-creator-workflow-portfolio?fpr=9n7kx3): profile, portfolio size, and every workflow a creator published, ranked by views.
- [Export importable n8n workflow JSON](https://apify.com/johnvc/n8n-workflow-templates-scraper/examples/export-importable-n8n-workflow-json?fpr=9n7kx3): pull the full workflow definitions ready to import.
- [Find the best n8n AI agent workflows](https://apify.com/johnvc/n8n-workflow-templates-scraper/examples/find-best-n8n-ai-agent-workflows?fpr=9n7kx3): the top AI-category workflows by views.
- [Browse the n8n workflow library by category](https://apify.com/johnvc/n8n-workflow-templates-scraper/examples/browse-n8n-workflow-library-by-category?fpr=9n7kx3): filter to Marketing, Sales, IT Ops, and more.

### FAQ

#### Where do I find n8n templates and the most popular ones?

Run the actor with the default input. `sortBy` defaults to `most_viewed`, so the dataset comes back ranked by all-time views across the whole [n8n workflow library](https://n8n.io/workflows/). Add `queries` or `categories` to rank the most popular n8n workflows inside a niche.

#### Is this an API or a web scraper?

Both, depending on how you look at it. It reads the public n8n template library the way a scraper does, but you call it like an API: structured JSON in, structured JSON out, on the Apify platform, with no HTML parsing on your side. For background on what n8n is, see [n8n on Wikipedia](https://en.wikipedia.org/wiki/N8n).

#### How do I use this from an MCP client or an AI agent?

Add the actor as an MCP tool with the `mcp.apify.com` URL in the section above. Claude or any other [Model Context Protocol](https://modelcontextprotocol.io/) client can then search n8n templates, rank the most viewed n8n workflows, and pull importable JSON on demand, without you writing any glue code.

#### How do I import an n8n template into my instance?

Set `includeWorkflowJson` to true and each row carries a `workflowJson` object with the full nodes, connections, and settings. In n8n, use Import from JSON (or Import from URL) and paste it in; the workflow appears on your canvas ready to configure.

#### How do I scrape all workflows from one n8n creator?

Set `mode` to `creator` and put the creator's username or [creator page URL](https://n8n.io/creators/) in `usernames`. You get one `creator_profile` row plus one row per published workflow, sorted by views. Raise `maxResults` above the creator's portfolio size to capture everything.

#### Can I schedule this and integrate it with other apps?

Yes. Save the run as a task and put it on a schedule, then use the Apify integrations (n8n, Make, Zapier, webhooks, Google Sheets, Supabase) to route the results wherever you need them. See the Integrations section above.

#### What does it mean when a template has a price?

Some community templates are paid. The `price` and `purchaseUrl` fields carry the listed price and checkout link; free templates have `null` in both.

#### Why did I get fewer rows than maxResults?

The query, category, or app filter matched fewer templates than your cap, or the run hit its charge limit. In the second case the log shows a clear "Charge limit reached" warning; raise the run's budget to fetch more.

#### What happens if a workflow id or creator does not exist?

The run keeps going and pushes an `error` row with a readable `error_message` for that item, so one bad id never kills a batch.

Last Updated: 2026.07.26

# Actor input Schema

## `mode` (type: `string`):

What to fetch. 'search' browses or searches the template library (default). 'creator' returns a creator's profile plus every workflow they published, with view counts. 'details' fetches full records for specific workflow ids or template URLs.

## `queries` (type: `array`):

Search terms for search mode, e.g. \["ai agent", "slack"]. Leave empty to browse the entire library using the selected sort order (great for 'most viewed workflows' research). Ignored in creator and details modes.

## `sortBy` (type: `string`):

Ranking for search mode. 'most\_viewed' surfaces the most popular workflows of all time, 'newest' the latest published templates, 'relevance' the library's default ranking for the query.

## `categories` (type: `array`):

Optional category filter for search mode, using library category names, e.g. \["AI"], \["Marketing"], \["Sales"], \["IT Ops"], \["Document Ops"], \["Support"], \["Other"].

## `apps` (type: `array`):

Optional app/integration filter for search mode, using app slugs, e.g. \["openai"], \["slack"], \["google-sheets"], \["telegram"]. Returns only templates that use those apps.

## `nodes` (type: `array`):

Optional node-type filter for search mode, using full node type names, e.g. \["n8n-nodes-base.slack"] or \["n8n-nodes-base.httpRequest"]. More precise than the apps filter.

## `usernames` (type: `array`):

Creator mode only. Creator usernames or full creator page URLs, e.g. \["oneclick-ai"] or \["https://n8n.io/creators/oneclick-ai/"]. Each creator returns one profile row plus one row per published workflow, sorted by views.

## `workflowIds` (type: `array`):

Details mode only. Numeric workflow ids or full template URLs, e.g. \["1951"] or \["https://n8n.io/workflows/1951-scrape-and-summarize-webpages-with-ai/"].

## `includeWorkflowJson` (type: `boolean`):

Fetch each template's full detail record. This attaches the importable workflow definition (nodes, connections, settings) as workflowJson, AND backfills the fields the fast search listing does not include: recentViews, categories, and description. Enable this in search mode whenever you need those fields populated. Slower (one extra request per row) and charged as a separate add-on event per workflow. Not needed in creator or details mode, which already return recentViews and categories.

## `maxResults` (type: `integer`):

Maximum number of template rows to return across all queries or creators. Creator profile rows do not count against this limit. Set to 0 to retrieve every matching result (the whole n8n template library is about 10,800 workflows, so 0 scrapes it all in one run). Default: 25.

## Actor input object example

```json
{
  "mode": "search",
  "queries": [],
  "sortBy": "most_viewed",
  "categories": [],
  "apps": [],
  "nodes": [],
  "usernames": [],
  "workflowIds": [],
  "includeWorkflowJson": false,
  "maxResults": 25
}
```

# Actor output Schema

## `allResults` (type: `string`):

All dataset items from this run.

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

Template rows with names, view counts, creators, and links.

## `creators` (type: `string`):

Creator profile rows with portfolio sizes and links.

# 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("johnvc/n8n-workflow-templates-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("johnvc/n8n-workflow-templates-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 johnvc/n8n-workflow-templates-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "n8n Workflow Templates API",
        "description": "Extract n8n workflow templates and creator analytics via API. Search 10,000+ automation templates, rank the most viewed workflows, pull importable workflow JSON, and analyze any creator's full portfolio with view counts.",
        "version": "0.0",
        "x-build-id": "fCxbgU8LrRdhccdOO"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/johnvc~n8n-workflow-templates-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-johnvc-n8n-workflow-templates-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/johnvc~n8n-workflow-templates-scraper/runs": {
            "post": {
                "operationId": "runs-sync-johnvc-n8n-workflow-templates-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/johnvc~n8n-workflow-templates-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-johnvc-n8n-workflow-templates-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": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "search",
                            "creator",
                            "details"
                        ],
                        "type": "string",
                        "description": "What to fetch. 'search' browses or searches the template library (default). 'creator' returns a creator's profile plus every workflow they published, with view counts. 'details' fetches full records for specific workflow ids or template URLs.",
                        "default": "search"
                    },
                    "queries": {
                        "title": "Search queries",
                        "type": "array",
                        "description": "Search terms for search mode, e.g. [\"ai agent\", \"slack\"]. Leave empty to browse the entire library using the selected sort order (great for 'most viewed workflows' research). Ignored in creator and details modes.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "sortBy": {
                        "title": "Sort by",
                        "enum": [
                            "most_viewed",
                            "newest",
                            "relevance"
                        ],
                        "type": "string",
                        "description": "Ranking for search mode. 'most_viewed' surfaces the most popular workflows of all time, 'newest' the latest published templates, 'relevance' the library's default ranking for the query.",
                        "default": "most_viewed"
                    },
                    "categories": {
                        "title": "Categories",
                        "type": "array",
                        "description": "Optional category filter for search mode, using library category names, e.g. [\"AI\"], [\"Marketing\"], [\"Sales\"], [\"IT Ops\"], [\"Document Ops\"], [\"Support\"], [\"Other\"].",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "apps": {
                        "title": "Apps",
                        "type": "array",
                        "description": "Optional app/integration filter for search mode, using app slugs, e.g. [\"openai\"], [\"slack\"], [\"google-sheets\"], [\"telegram\"]. Returns only templates that use those apps.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "nodes": {
                        "title": "Nodes",
                        "type": "array",
                        "description": "Optional node-type filter for search mode, using full node type names, e.g. [\"n8n-nodes-base.slack\"] or [\"n8n-nodes-base.httpRequest\"]. More precise than the apps filter.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "usernames": {
                        "title": "Creator usernames or URLs",
                        "type": "array",
                        "description": "Creator mode only. Creator usernames or full creator page URLs, e.g. [\"oneclick-ai\"] or [\"https://n8n.io/creators/oneclick-ai/\"]. Each creator returns one profile row plus one row per published workflow, sorted by views.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "workflowIds": {
                        "title": "Workflow ids or template URLs",
                        "type": "array",
                        "description": "Details mode only. Numeric workflow ids or full template URLs, e.g. [\"1951\"] or [\"https://n8n.io/workflows/1951-scrape-and-summarize-webpages-with-ai/\"].",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "includeWorkflowJson": {
                        "title": "Include importable workflow JSON and full detail",
                        "type": "boolean",
                        "description": "Fetch each template's full detail record. This attaches the importable workflow definition (nodes, connections, settings) as workflowJson, AND backfills the fields the fast search listing does not include: recentViews, categories, and description. Enable this in search mode whenever you need those fields populated. Slower (one extra request per row) and charged as a separate add-on event per workflow. Not needed in creator or details mode, which already return recentViews and categories.",
                        "default": false
                    },
                    "maxResults": {
                        "title": "Maximum results (0 = all)",
                        "minimum": 0,
                        "maximum": 20000,
                        "type": "integer",
                        "description": "Maximum number of template rows to return across all queries or creators. Creator profile rows do not count against this limit. Set to 0 to retrieve every matching result (the whole n8n template library is about 10,800 workflows, so 0 scrapes it all in one run). Default: 25.",
                        "default": 25
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
