This page documents the n8n-nodes-base package, which provides over 400 pre-built integrations with third-party services and core workflow functionality. This includes nodes for cloud platforms, communication tools, databases, CRMs, security platforms, and utility operations.
For AI and LangChain-specific nodes, see AI and LangChain Nodes. For creating custom nodes, see Node Development and Community Packages. For the underlying node type system, see Node Type System and Registration.
The n8n-nodes-base package is a monorepo workspace package that contains the complete catalog of standard n8n integrations. It follows a conventional structure where nodes and credentials are TypeScript classes compiled to JavaScript with accompanying metadata.
Sources: packages/nodes-base/package.json1-25
All nodes and credentials in the package are explicitly registered in the package.json n8n field, which the n8n core reads during initialization to discover available integrations.
The package.json contains two key arrays:
"dist/credentials/SlackApi.credentials.js")"dist/nodes/Slack/Slack.node.js")Sources: packages/nodes-base/package.json24-414 packages/nodes-base/package.json415-683
| Category | Examples | Count Range |
|---|---|---|
| Communication | Slack, Discord, Telegram, Microsoft Teams, WhatsApp | 15-20 nodes |
| Cloud Storage | AWS S3, Google Drive, Dropbox, Box, OneDrive | 10-15 nodes |
| CRM | Salesforce, HubSpot, Pipedrive, Zoho, Freshworks | 15-20 nodes |
| Marketing | Mailchimp, SendGrid, ActiveCampaign, Brevo | 10-15 nodes |
| Databases | MySQL, PostgreSQL, MongoDB, Redis, Snowflake | 10-15 nodes |
| Security | QRadar, Splunk, CrowdStrike, Elasticsearch Security | 10-15 nodes |
| Project Management | Asana, Jira, Trello, Monday, ClickUp, Notion | 15-20 nodes |
| Development | GitHub, GitLab, Jenkins, CircleCI, Bitbucket | 10-15 nodes |
| Cloud Platforms | AWS (10+ services), Google Cloud (10+ services), Azure (10+ services) | 30+ nodes |
| E-commerce | Shopify, WooCommerce, Magento, Stripe, PayPal | 10-15 nodes |
| Analytics | Google Analytics, Mixpanel, PostHog, Segment | 5-10 nodes |
| Authentication | Auth0, Okta, LDAP | 3-5 nodes |
| Utilities | HTTP Request, Code, Set, Merge, Split | 10-15 nodes |
Sources: packages/nodes-base/package.json415-683
Nodes reference credentials by their registered name. Multiple authentication methods are supported:
SlackApi, GithubApi)SlackOAuth2Api, GoogleOAuth2Api)HttpBasicAuth)JwtAuth, HttpHeaderAuth)Sources: packages/nodes-base/package.json25-414
The build process creates several artifacts:
.node.js and .credentials.js files.node.json files describing node properties.d.ts files for TypeScript consumersSources: packages/nodes-base/package.json6-19
Each node generates a .node.json metadata file during build that describes its properties for the n8n runtime:
The metadata generation process:
These CLI tools are defined in n8n-core:
Sources: packages/nodes-base/package.json11 packages/core/package.json8-11
Most nodes in n8n-nodes-base follow this structure:
| Type | Description | Examples |
|---|---|---|
| Regular Node | Standard execute() method | HTTP Request, Slack, Google Sheets |
| Trigger Node | Starts workflows via webhook/poll | Webhook, GitHub Trigger, Schedule |
| Webhook Node | Receives HTTP callbacks | HTTP Trigger, Typeform Trigger |
| Polling Trigger | Periodically checks for data | RSS Feed Trigger, Email Trigger |
Sources: packages/nodes-base/package.json415-683
The package includes custom validation scripts to ensure node quality:
Validation ensures:
loadOptions methods existSources: packages/nodes-base/package.json14
Sources: packages/nodes-base/package.json44-46 packages/nodes-base/package.json435-449
Sources: packages/nodes-base/package.json141-157
Many nodes support triggering workflows via webhooks:
Examples include:
Sources: packages/nodes-base/package.json454 packages/nodes-base/package.json467
| Node | Purpose | Credential |
|---|---|---|
| MongoDB | Document database | MongoDb.credentials.js |
| Redis | Key-value store | Redis.credentials.js |
| DynamoDB | AWS NoSQL | Aws.credentials.js |
| Firestore | Google NoSQL | GoogleFirebaseCloudFirestoreOAuth2Api |
| CouchDB | Document store | (via HTTP Request node) |
Sources: packages/nodes-base/package.json259 packages/nodes-base/package.json294 packages/nodes-base/package.json244 packages/nodes-base/package.json339
The HTTP Request node is one of the most versatile nodes, supporting:
It uses multiple authentication credential types:
HttpBasicAuth, HttpBearerAuth, HttpDigestAuthHttpHeaderAuth, HttpQueryAuth, HttpCustomAuthOAuth2Api, OAuth1ApiSources: packages/nodes-base/package.json174-181 packages/nodes-base/package.json271-272
Core utility nodes provide essential workflow operations without requiring external credentials.
Sources: packages/nodes-base/package.json415-683
The watch mode enables rapid development:
Sources: packages/nodes-base/package.json16
Testing scripts:
pnpm test: Run all testspnpm test:dev: Watch mode for TDDpnpm test:integration:skip: Vitest integration tests (currently skipped)Sources: packages/nodes-base/package.json17-19
Nodes support versioning to maintain backward compatibility while adding new features. The version is specified in the node description:
| Version Field | Purpose |
|---|---|
version | Current node version (e.g., 2.0, 3.0) |
codex.categories | UI categorization |
credentials | Compatible credential versions |
The validate-schema-versions.js script ensures version consistency during build.
Sources: packages/nodes-base/package.json14
| Package | Purpose | Usage |
|---|---|---|
n8n-workflow | Core workflow types | Node interfaces, data structures |
n8n-core | Execution runtime | Helper functions, request utilities |
axios | HTTP client | API requests across nodes |
| Various SDKs | Service integrations | AWS SDK, Google APIs, etc. |
The package serves as a bridge between the n8n runtime and external services, providing standardized interfaces for diverse integrations.
Sources: packages/nodes-base/package.json1-25
Refresh this wiki
This wiki was recently refreshed. Please wait 2 days to refresh again.