Bento n8n Integration
Connect the published n8n-nodes-bento community package to n8n and run Bento subscriber syncs, schema updates, sequence and template management, broadcasts, analytics, validation, and enrichment from a single node.

Overview
The current Bento package ships one production node and one credential type:
| Item | Description |
|---|---|
Bento node | 25 operations covering subscribers, schema, sequences, templates, broadcasts, analytics, validation, and enrichment |
Bento API credential | Stores your Bento Publishable Key, Secret Key, and Site UUID |
- npm package:
n8n-nodes-bento - Source repository: bentonow/bento-n8n-sdk
- Bento docs: docs.bentonow.com
- Authentication docs: docs.bentonow.com/authentication
The repository includes helper and example files for development, but the published npm package currently registers a single production node in n8n: Bento.
What This Package Adds
- Audience schema operations for listing and creating Bento fields and tags
- Automation content operations for sequences, workflows, and email templates
- Broadcast operations for listing campaigns and queueing sends from n8n
- Analytics operations for site, segment, and report metrics
- Experimental validation and enrichment operations for email quality, blacklist checks, moderation, gender guess, and geolocation
- Safety controls including HTML sanitization, retry logic, rate-limit backoff, payload limits, and a required confirm step for broadcast sends
Prerequisites
Before getting started, you will need:
- n8n version
0.198.0or higher - Node.js
20.15or higher - An active Bento account
- Your Bento
Publishable Key,Secret Key, andSite UUID
Installation
- Open your n8n instance.
- Go to Settings → Community Nodes.
- Click Install a community node.
- Enter the package name
n8n-nodes-bento. - Click Install.
- Log into app.bentonow.com.
- Open API Keys.
- Copy your Publishable Key, Secret Key, and Site UUID.
Keep your Bento secret key private. n8n stores credentials encrypted when you use the built-in credential manager.
- Add a Bento node to your workflow.
- In Credential for Bento API, choose Create New Credential.
- Enter your Publishable Key, Secret Key, and Site UUID.
- Save and test the credential.
The Bento node automatically appends your site_uuid to each API
request, so you do not need to add it manually in node fields or query
strings.
Available Operations
The Bento node supports the following operations:
Operation Matrix
This package currently exposes 25 operations inside the Bento node:
| Category | Operations |
|---|---|
| Subscribers | Create Subscriber, Get Subscriber, Update Subscriber, Subscriber Command |
| Audience Schema | List Fields, Create Field, List Tags, Create Tag |
| Automation Content | List Sequences, Create Sequence Email, List Workflows, Get Email Template, Update Email Template |
| Messaging | Track Event, Send Transactional Email, List Broadcasts, Send Broadcast |
| Analytics | Site Metrics, Segment Metrics, Report Metrics |
| Validation & Enrichment | Validate Email, Blacklist Check, Content Moderation, Gender Guess, Geolocation Lookup |
Create Subscriber
Add a new subscriber to your Bento audience with email and profile data.
Required Parameters:
- Name
Email- Type
- string
- Description
The subscriber's email address
Optional Parameters:
- Name
First Name- Type
- string
- Description
Subscriber's first name for personalization
- Name
Last Name- Type
- string
- Description
Subscriber's last name for personalization
- Name
Custom Fields- Type
- object
- Description
Additional key-value pairs to store with the subscriber
Example Use Cases:
- Add new users from form submissions
- Import subscribers from external databases
- Create subscribers from webhook data
Example Configuration:
Node: Bento
Operation: Create Subscriber
Email: "={{ $json.email }}"
First Name: "={{ $json.first_name }}"
Last Name: "={{ $json.last_name }}"
Custom Fields:
- Key: plan_tier
Value: "={{ $json.plan }}"
- Key: signup_source
Value: "={{ $json.source }}"
The Bento node creates subscribers through Bento's batch events API using a
$subscribe event. That makes it a good fit for acquisition workflows where
profile creation and automation triggers should happen together.
Get Subscriber
Retrieve detailed information about an existing subscriber by email.
Required Parameters:
- Name
Email- Type
- string
- Description
The subscriber's email address
Returns: Complete subscriber profile including custom fields, tags, and subscription status
Example Use Cases:
- Look up subscriber information before sending personalized content
- Verify subscriber existence in conditional workflows
- Retrieve custom field data for personalization
Update Subscriber
Modify subscriber profile information and custom attributes.
Required Parameters:
- Name
Email- Type
- string
- Description
The subscriber's email address
Optional Parameters:
- Name
First Name- Type
- string
- Description
Updated first name
- Name
Last Name- Type
- string
- Description
Updated last name
- Name
Custom Fields- Type
- object
- Description
Updated or new custom field values
Example Use Cases:
- Update subscriber information from CRM changes
- Add new custom fields based on user behavior
- Sync subscriber data across platforms
Track Event
Record custom events and behaviors for subscriber segmentation and automation.
Required Parameters:
- Name
User ID- Type
- string
- Description
Unique identifier for the user (typically email address)
- Name
Event Name- Type
- string
- Description
Name of the custom event (e.g., "purchase_completed", "page_viewed")
Optional Parameters:
- Name
Event Properties- Type
- object
- Description
Additional key-value pairs with event data
Example Use Cases:
- Track purchase events with order details
- Record page views and user interactions
- Monitor feature usage and engagement
- Trigger automation based on user behavior
Example Event Properties:
{
"purchase_amount": 99.99,
"product_id": "SKU123",
"category": "electronics"
}
Example Configuration:
Node: Bento
Operation: Track Event
User ID: "={{ $json.email }}"
Event Name: purchase_completed
Event Properties:
- Key: purchase_amount
Value: "={{ $json.total }}"
- Key: order_id
Value: "={{ $json.order_id }}"
- Key: source
Value: checkout
Send Transactional Email
Send personalized transactional emails using HTML or text content.
Required Parameters:
- Name
Recipient Email- Type
- string
- Description
Email address of the recipient
- Name
From Email- Type
- string
- Description
Sender email address
- Name
Subject- Type
- string
- Description
Email subject line
- Name
Email Type- Type
- select
- Description
Choose between HTML or Text format
Content Parameters:
- Name
HTML Body- Type
- string
- Description
HTML content (when Email Type is HTML)
- Name
Text Body- Type
- string
- Description
Plain text content (when Email Type is Text)
Optional Parameters:
- Name
Transactional- Type
- boolean
- Description
Marks the send as transactional. In the SDK, this flag is passed through to Bento and described as affecting tracking and analytics.
- Name
Personalizations- Type
- object
- Description
Template variables for dynamic content using liquid-style placeholders
Example Use Cases:
- Send password reset emails
- Deliver order confirmations
- Send welcome emails to new users
- Notify users of account changes
Example Personalization:
{
"name": "John Doe",
"order_number": "12345",
"total": "$99.99"
}
Example Configuration:
Node: Bento
Operation: Send Transactional Email
Recipient Email: "={{ $json.email }}"
From Email: "hello@example.com"
Subject: "Your order confirmation"
Email Type: HTML Body
HTML Body: "<p>Hi {{ name }}, your order {{ order_number }} is confirmed.</p>"
Transactional: true
Personalizations:
- Key: name
Value: "={{ $json.name }}"
- Key: order_number
Value: "={{ $json.order_id }}"
Subscriber Command
Execute commands on subscribers to manage tags, fields, and subscription status.
Required Parameters:
- Name
Email- Type
- string
- Description
The subscriber's email address
- Name
Command- Type
- select
- Description
The action to perform
Available Commands:
- Add Tag: Add a tag to the subscriber
- Remove Tag: Remove a tag from the subscriber
- Add Tag via Event: Add a tag through event tracking
- Add Field: Add or update a custom field
- Remove Field: Remove a custom field
- Subscribe: Subscribe the email address
- Unsubscribe: Unsubscribe the email address
- Change Email: Update the subscriber's email address
Example Use Cases:
- Segment subscribers with tags based on behavior
- Manage subscription preferences
- Update subscriber data programmatically
- Handle unsubscribe requests
Example Command Mapping:
| Command | Extra Parameters |
|---|---|
| Add Tag | Tag/Field Name |
| Remove Tag | Tag/Field Name |
| Add Tag via Event | Tag/Field Name |
| Add Field | Field Key, Field Value |
| Remove Field | Tag/Field Name |
| Subscribe | None |
| Unsubscribe | None |
| Change Email | New Email |
Validate Email
Validate email addresses for spam and throwaway detection using Bento's validation service.
Required Parameters:
- Name
Email- Type
- string
- Description
The email address to validate
Optional Parameters:
- Name
Name- Type
- string
- Description
Associated name (improves validation accuracy)
- Name
IP Address- Type
- string
- Description
Associated IP address (improves validation accuracy)
Returns: The validation response returned by Bento for the provided email, plus echoed request inputs in the node output
Example Use Cases:
- Filter out invalid emails before adding subscribers
- Prevent spam signups
- Improve email deliverability rates
- Validate email quality in real-time
Audience Schema Operations
The new Bento node also covers field and tag management directly from n8n.
List Fields
Retrieve the Bento custom fields configured for the current site.
- Required Parameters: None
- Returns: The Bento field records returned for the current site
- Example Use Cases:
- Audit the custom field schema before syncing profile data
- Populate internal documentation or dropdowns with Bento field definitions
- Check whether a field exists before trying to write to it
Create Field
Create a new Bento custom field definition.
- Required Parameters:
Field Key - Returns: The Bento create-field response, plus a
fieldsarray when Bento returns one - Example Use Cases:
- Provision new profile fields before importing subscriber data
- Standardize field creation from infrastructure workflows
- Expand your Bento schema without leaving n8n
Node: Bento
Operation: Create Field
Field Key: plan_tier
List Tags
Retrieve the Bento tags configured for the current site.
- Required Parameters: None
- Returns: All Bento tags available for segmentation and automation
- Example Use Cases:
- Audit tagging conventions before launching campaigns
- Populate tag pickers in internal workflow tooling
- Check whether a tag exists before applying it to subscribers
Create Tag
Create a new Bento tag.
- Required Parameters:
Tag Name - Returns: The Bento create-tag response, plus a
tagsarray when Bento returns one - Example Use Cases:
- Provision tags during onboarding of new automation flows
- Standardize segmentation setup across environments
- Create campaign-specific tags on demand from n8n
Node: Bento
Operation: Create Tag
Tag Name: onboarding
Automation Content Operations
The Bento node can now inspect and update sequence, workflow, and template content directly from n8n.
List Sequences
- Optional Parameters:
Page - Returns: Sequence records with nested email template metadata
- Example Use Cases:
- Inspect available nurture sequences before appending emails
- Build reporting or approval workflows around sequence inventory
- Sync sequence metadata into internal tooling
Create Sequence Email
- Required Parameters:
Sequence ID,Subject,HTML - Optional Parameters:
Inbox Snippet,Delay Interval,Delay Interval Count,Editor Choice,To,CC,BCC - Returns: The created Bento email template payload
- Example Use Cases:
- Append onboarding or upsell emails to an existing sequence
- Generate sequence content programmatically from CMS or AI outputs
- Keep Bento sequence maintenance inside n8n deployment workflows
Node: Bento
Operation: Create Sequence Email
Sequence ID: seq_12345
Subject: "Day 2: Set up your first Bento workflow"
HTML: "<p>Hi {{ first_name }},</p><p>Here is your next setup step.</p>"
Inbox Snippet: "Finish the setup in five minutes"
Delay Interval: days
Delay Interval Count: 2
Editor Choice: classic
List Workflows
- Optional Parameters:
Page - Returns: Workflow records with embedded email templates
- Example Use Cases:
- Review live versus draft workflows before publishing related changes
- Feed workflow metadata into ops dashboards
- Inventory Bento automation assets without leaving n8n
Get Email Template
- Required Parameters:
Template ID - Returns: The Bento email template response for the requested numeric template ID
- Example Use Cases:
- Inspect a template before updating it
- Pull Bento email content into approval or review workflows
- Sync template metadata into internal systems
Update Email Template
- Required Parameters:
Template ID - Optional Parameters:
Subject,HTML - Returns: The updated Bento email template payload
- Behavior Note: The node requires at least one of
SubjectorHTML - Example Use Cases:
- Roll out copy changes across existing templates
- Update HTML from a centralized content workflow
- Patch production templates from automated release jobs
Node: Bento
Operation: Update Email Template
Template ID: 4821
Subject: "Updated onboarding lesson"
HTML: "<p>We revised this step to make setup easier.</p>"
Analytics Operations
The newer Bento node includes dedicated analytics operations for site, segment, and report-level metrics.
Site Metrics
- Required Parameters: None
- Returns: The Bento site metrics response, plus a compact totals summary when recognized totals are present
- Example Use Cases:
- Monitor list growth from dashboards or health checks
- Provide executives with a quick snapshot of site-wide performance
- Automate daily or weekly rollups without manual filtering
Segment Metrics
- Required Parameters:
Segment ID - Returns: The Bento segment metrics response, plus a compact summary when recognized metrics are present
- Example Use Cases:
- Evaluate segment performance before launching automation
- Compare engagement across high-value cohorts
- Spot drop-offs in segment engagement over time
Report Metrics
- Required Parameters:
Report ID - Returns: The Bento report metrics response, plus a compact summary when recognized metrics are present
- Example Use Cases:
- Summarize the results of a generated report for stakeholders
- Refresh dashboards that rely on Bento report data
- Monitor revenue and engagement contained in saved Bento reports
Site Metrics:
Operation: Site Metrics
Segment Metrics:
Operation: Segment Metrics
Segment ID: "segment_12345"
Report Metrics:
Operation: Report Metrics
Report ID: "report_98765"
Broadcast Operations
The updated node can also review existing broadcasts and queue new broadcast sends.
List Broadcasts
- Optional Parameters:
Status,Created After,Tag IDs - Returns: The Bento broadcast list plus node-level summary fields such as
totalandscheduledCount - Example Use Cases:
- Review scheduled broadcasts before deploying
- Audit campaigns tied to certain tags
- Build dashboards of historical broadcast activity
Send Broadcast
- Required Parameters:
Campaign Name,Subject,Content,Content Type,From Email,From Name,Confirm Send - Optional Parameters:
Approved,Inclusive Tags,Exclusive Tags,Segment ID,Batch Size Per Hour - Returns: Bento's API response including any broadcast objects returned or validation errors
- Parameter Note:
Inclusive TagsandExclusive Tagsare comma-separated strings in this node - Example Use Cases:
- Launch ad-hoc campaigns from n8n using Bento's batch API
- Enforce hour-based throttling for large broadcasts
- Target subsets of the audience with inclusive or exclusive tag filters while keeping workflows code-free
Node: Bento
Operation: Send Broadcast
Campaign Name: "April product launch"
Subject: "The new release is live"
Content Type: html
Content: "<h1>Launch day</h1><p>Everything is ready.</p>"
From Email: "hello@example.com"
From Name: "Bento Team"
Approved: true
Inclusive Tags: "launch,customers"
Exclusive Tags: "suppress_internal"
Segment ID: "segment_12345"
Batch Size Per Hour: 2000
Confirm Send: true
Send Broadcast will refuse to run unless Confirm Send is enabled. That
guard exists specifically to prevent accidental campaign launches from test
runs or incomplete workflows.
Validation And Enrichment Operations
The Bento node also includes experimental utility endpoints that are useful in intake, compliance, and enrichment workflows.
Blacklist Check
- Required Parameters: Provide at least one of
DomainorIP Address - Returns: The Bento blacklist response for the provided domain and/or IP
- Example Use Cases:
- Screen incoming leads or signup forms by their sending domain
- Enforce allow or deny rules in automations before triggering downstream actions
- Investigate suspicious traffic by cross-referencing domain activity with IP reputation
Content Moderation
- Required Parameters:
Content - Optional Parameters:
Metadata - Returns: The Bento moderation response plus echoed metadata when provided
- Example Use Cases:
- Review user-generated content before publishing or emailing
- Flag risky support tickets for manual review
- Audit campaign content for compliance keywords
Gender Guess
- Required Parameters: At least one of
First NameorLast Name - Optional Parameters:
Email - Returns: The Bento gender-guess response, plus a summary when Bento returns prediction fields
- Example Use Cases:
- Tailor messaging tone dynamically
- Enrich CRM profiles with probabilistic attributes
- Flag low-confidence guesses for manual review
Geolocation Lookup
- Required Parameters:
IP Address - Optional Parameters:
User Agent - Returns: The Bento geolocation response for the provided IP address
- Example Use Cases:
- Enrich analytics dashboards with regional context
- Detect mismatched login locations for security checks
- Personalize offers based on detected location
Example Validation And Moderation Flow:
1. Webhook
2. Bento → Validate Email
3. IF → reject disposable or risky addresses
4. Bento → Blacklist Check
5. Bento → Content Moderation
6. Continue to Create Subscriber or Send Transactional Email
Best Practices
Security Best Practices
- Always use n8n's credential system and never hardcode Bento keys
- Keep your Secret Key private and restrict who can edit production credentials
- Treat experimental enrichment endpoints as best-effort helpers rather than required steps
- Use HTTPS everywhere and avoid passing sensitive data in unnecessary custom fields or event properties
- Review any transactional send carefully before enabling the
Transactionaloption
Common Workflow Examples
User Registration Flow
- Trigger: New user signs up via webhook
- Create Subscriber: Add user to Bento with profile data
- Track Event: Send
signupevent with registration details - Send Email: Welcome email with onboarding instructions
E-commerce Purchase Tracking
- Trigger: Purchase completed webhook from ecommerce platform
- Track Event: Send
purchase_completedevent with order details - Update Subscriber: Add
customerdata and update fields such as LTV or plan - Subscriber Command: Apply a lifecycle tag such as
customer - Send Email: Order confirmation or post-purchase follow-up
Lead Scoring Workflow
- Trigger: User performs action such as downloading content or visiting the pricing page
- Track Event: Record engagement event
- Get Subscriber: Retrieve current subscriber data
- Subscriber Command: Add tags or fields based on behavior
- Conditional Logic: Trigger different flows based on lead score or lifecycle stage
Audience Provisioning Workflow
- Trigger: Manual or scheduled workflow before a new campaign launch
- List Fields: Check whether required profile fields already exist
- Create Field: Provision missing fields
- List Tags: Check the segmentation tags you expect to use
- Create Tag: Create any missing tags before the import or campaign starts
Sequence Content Management Workflow
- Trigger: Content release or approval event
- List Sequences: Inspect available sequences
- Create Sequence Email: Add the next step in a nurture sequence
- Get Email Template: Pull the new template back for approval or QA
- Update Email Template: Patch copy or HTML if changes are required
Broadcast Approval Workflow
- Trigger: Manual approval or internal review form
- List Broadcasts: Review queued or scheduled campaigns
- Conditional Logic: Confirm tags, segment, sender identity, and content
- Send Broadcast: Queue the approved campaign with
Confirm Sendenabled - Slack Or Email Notification: Notify the team after the broadcast is accepted
Validation And Moderation Workflow
- Trigger: Form submission or inbound support content
- Validate Email: Check risk before creating the subscriber
- Blacklist Check: Evaluate suspicious domains or IPs
- Content Moderation: Review message content for policy flags
- Branching Logic: Route risky traffic to manual review and send clean traffic downstream
Daily Metrics Digest
- Trigger: Schedule trigger each morning
- Site Metrics: Pull account-wide Bento metrics
- Segment Metrics: Evaluate one or more high-value segments
- Report Metrics: Attach saved report summaries
- Output: Post the digest to Slack, email, or your reporting system
Troubleshooting
Common Authentication Problems
Error: "Authentication Failed"
- Verify your Publishable Key, Secret Key, and Site UUID are correct
- Make sure the credential is attached to the Bento node you are testing
- Re-test the credential after rotating Bento keys
Error: "Invalid API Key"
- Confirm your Secret Key has not been regenerated or revoked
- Check that your Publishable Key and Secret Key belong to the same Bento account
Technical Limitations
API Limits
- Payload Size: Maximum request payload size is 1MB
- Concurrent Requests: Limited to 5 concurrent requests per node instance
- Field Limits: Custom field keys are limited to 50 characters and values to 500 characters
- Rate Limiting: Built-in retry and backoff behavior helps prevent API quota exhaustion
Security Features
- Input Validation: Key inputs are validated for length, format, and security before requests are sent
- HTML Sanitization: HTML content is sanitized to prevent unsafe email markup
- Email Validation: Email addresses are validated using RFC-compliant checks before supported operations run
- Secure Error Handling: Error messages are designed not to expose sensitive credential data
Reliability Features
- Automatic Retries: Retryable Bento errors are retried with exponential backoff
- Timeout Handling: Request timeouts prevent hung workflows
- Concurrent Request Management: The node limits concurrent requests per instance
- Broadcast Safety Check: Broadcast sends require explicit confirmation
API Endpoints Used
The Bento node automatically appends site_uuid from your credential to every request. The operation-specific paths are:
POST /api/v1/batch/eventsfor subscriber creation and event trackingPOST /api/v1/batch/subscribersfor subscriber updatesGET /api/v1/fetch/subscribers?email=...for subscriber lookupsPOST /api/v1/fetch/commandsfor subscriber commandsGET /api/v1/fetch/fieldsandPOST /api/v1/fetch/fieldsfor Bento field definitionsGET /api/v1/fetch/tagsandPOST /api/v1/fetch/tagsfor Bento tagsGET /api/v1/fetch/sequencesfor sequence inventoryPOST /api/v1/fetch/sequences/:sequenceId/emails/templatesfor sequence email creationGET /api/v1/fetch/workflowsfor workflow inventoryGET /api/v1/fetch/emails/templates/:idandPATCH /api/v1/fetch/emails/templates/:idfor template reads and updatesPOST /api/v1/batch/emailsfor transactional email sendsGET /api/v1/fetch/broadcastsandPOST /api/v1/batch/broadcastsfor broadcast review and sendGET /api/v1/stats/site,GET /api/v1/stats/segment, andGET /api/v1/stats/reportfor analyticsPOST /api/v1/experimental/validation,GET /api/v1/experimental/blacklist,POST /api/v1/experimental/content_moderation,POST /api/v1/experimental/gender, andGET /api/v1/experimental/geolocationfor validation and enrichment
