This is an n8n community node for Everyrow - AI-powered data operations for your workflows.
Everyrow enables you to perform intelligent data operations using AI, including ranking, deduplication, merging, screening, and research tasks.
n8n is a fair-code licensed workflow automation platform.
Follow the installation guide in the n8n community nodes documentation.
npm install n8n-nodes-everyrowOnce this node is verified, it will be available directly in n8n Cloud. Until then, you can use our HTTP Request workflow templates - see templates/n8n-cloud-or-no-extension/ for ready-to-import workflows that work on any n8n instance without installing custom nodes.
To test this node locally during development:
- Node.js 18+ - Install via nvm or nodejs.org
- pnpm - Install with
npm install -g pnpm - n8n - Install globally with
npm install -g n8n - Everyrow API Key - Get one at everyrow.io/settings/api-keys
git clone https://github.com/futuresearch/n8n-nodes-everyrow.git
cd n8n-nodes-everyrow
# Install dependencies
pnpm install
# Build the node
pnpm build# Create n8n custom nodes directory
mkdir -p ~/.n8n/nodes
cd ~/.n8n/nodes
# Install the local package
npm init -y
npm install /path/to/n8n-nodes-everyrown8n startOpen http://localhost:5678 in your browser.
- Create an account - n8n will prompt you to create a local account (email + password)
- Skip or complete onboarding - You can skip the onboarding wizard
- Go to Credentials (left sidebar) → Add Credential
- Search for "Everyrow"
- Enter your API key from everyrow.io/settings/api-keys
- Click Save
Import a template from templates/self-hosted-with-extension/ or build manually:
- Click Add Workflow
- Add a Manual Trigger node
- Add a Code node with sample data:
const companies = [ { name: "OpenAI", description: "AI research company" }, { name: "Stripe", description: "Payment processing" }, { name: "Anthropic", description: "AI safety company" } ]; return companies.map(c => ({ json: c }));
- Add the Everyrow node:
- Select Data Operations → Rank
- Task: "Score by AI relevance, 0-100"
- Field Name:
score
- Add a Wait node (5 seconds)
- Add another Everyrow node:
- Select Task → Get Status
- Task ID:
{{ $('Everyrow').item.json.task_id }}
- Add an If node to check
{{ $json.status }} equals "completed" - On true branch, add Everyrow → Task → Get Result
- On false branch, loop back to the Wait node
- Connect the nodes and click Test Workflow
Tests require a valid API key. Create a .env file (gitignored):
cp .env.example .env
# Edit .env and add your API keyThen run:
pnpm test # Run tests once
pnpm test:watch # Run tests in watch modepnpm build # Build the node
pnpm dev # Watch mode for development
pnpm lint # Run linter
pnpm test # Run tests (requires .env with API key)Node not appearing in n8n?
- Ensure the package is built (
pnpm build) - Check n8n logs for loading errors:
N8N_LOG_LEVEL=debug n8n start - Verify the symlink exists:
ls -la ~/.n8n/nodes/node_modules/
"Everyrow" credential type not found?
- Restart n8n after installing the package
- Check that
dist/credentials/EveryrowApi.credentials.jsexists
API errors?
- Verify your API key is correct
- Check the API URL (should be:
https://engine.futuresearch.ai/api/v0)
| Operation | Description |
|---|---|
| Rank | Score and rank rows based on AI-evaluated criteria. Useful for prioritizing leads, scoring content relevance, or ranking search results. |
| Dedupe | Remove duplicate rows using AI matching. Handles fuzzy matching, name variations, and semantic similarity. |
| Screen | Filter rows based on complex criteria that require AI understanding. Filter companies by funding stage, filter products by features, etc. |
| Merge | Join two tables using AI-powered matching. Merge customer lists, match products across databases, etc. |
| Operation | Description |
|---|---|
| Agent Map | Run an AI research agent on each row to enrich data with web research, analysis, or complex reasoning. |
| Operation | Description |
|---|---|
| Get Status | Check the status of a submitted task (pending, running, completed, failed). |
| Get Result | Retrieve the results of a completed task. |
Note: All operations return a
task_idimmediately. Use the Task operations with a polling loop to wait for completion and retrieve results. See the workflow templates for examples.
To use this node, you need an Everyrow API key:
- Sign up at everyrow.io
- Go to Settings > API Keys
- Create a new API key
- Add the credentials in n8n
Ready-to-import workflow templates are available in the templates/ directory.
[Data Source] → [Everyrow: Rank] → [Wait 5s] → [Everyrow: Get Status] → [If Completed?]
↓ Yes
[Everyrow: Get Result]
↓ No
[Loop back to Wait]
- Add a data source node (Google Sheets, Airtable, etc.)
- Add the Everyrow node with Data Operations → Rank
- Set the task: "Score each company by their relevance to enterprise AI infrastructure"
- Add a Wait node, then poll with Task → Get Status
- Use an If node to check if
status == "completed" - Get results with Task → Get Result
- Import your contact list
- Add the Everyrow node with Data Operations → Dedupe
- Set the equivalence relation: "Two contacts are duplicates if they represent the same person, even if names are spelled differently or companies have changed"
- Add the polling loop (Wait → Get Status → If → Get Result)
- Output the deduplicated list
- Add your data source
- Add the Everyrow node with Agent Operations → Agent Map
- Set the task: "Research each company and find their latest funding round, founding year, and key products"
- Define the response schema with the fields you want
- Add the polling loop to wait for completion
- Get enriched data with AI-researched information
Everyrow operations are asynchronous. The recommended workflow pattern is:
- Submit Operation - Returns a
task_idimmediately - Wait - Use n8n's Wait node (e.g., 5-10 seconds)
- Check Status - Use Task → Get Status to poll
- Loop or Continue - If not completed, loop back to Wait; if completed, continue
- Get Results - Use Task → Get Result to retrieve data
See templates/self-hosted-with-extension/ for complete workflow examples.
- Session Name: Name for the Everyrow session (visible in dashboard)
- Task ID: Reference to a previously submitted task (for Get Status / Get Result)
Each operation has specific configuration options - see the node UI for details.