Bento
  • Go to Marketing Site
  • Go to App
  • User Work Laptop Streamline Icon: https://streamlinehq.comAccount

  • Graduation Cap Streamline Icon: https://streamlinehq.comGet Started

  • Migration Guides

  • DNS Setup

  • Connection Integration System Api Streamline Icon: https://streamlinehq.comAPI for Developers

  • Package Streamline Icon: https://streamlinehq.comSDK Guides

  • Plugs Streamline Icon: https://streamlinehq.comIntegrations

    • Developers
    • Bento Forms
    • Bubble
    • ClickFunnels
    • Google Tag Manager
    • Make.com
    • N8N
    • Segment
    • SendOwl
    • Shift4Shop
    • Shopify
    • SMS and WhatsApp (Twilio)
    • Stripe
    • Supabase
    • Webflow
    • Wordpress
    • Zapier
  • Horizontal Menu Streamline Icon: https://streamlinehq.comMisc

  • Sign in

Bento Bubble Integration

Learn how to set up and use Bento's Bubble plugin for server-side actions, events, subscriber management, and transactional emails.

Background Pattern
Bento Logo
Vendor Icon

Overview

Bento's Bubble plugin enables server-side actions within your Bubble workflows, providing:

  • Bento Events - Track user actions and behaviors
  • Subscriber Management - Import and manage subscribers with commands
  • Transactional Emails - Send dynamic emails from Bubble workflows
  • Real-time Integration - Seamless data flow between Bubble and Bento

Prerequisites

  • An active Bento account
  • A Bubble account with the ability to install plugins
  • Your Bento API keys (publishable key, secret key, and site UUID)

Setup Guide

1
Install the Bento Plugin
  1. In your Bubble app, navigate to the Plugins tab
  2. Search for "Bento" in the plugin marketplace
  3. Install the Bento plugin
2
Configure Plugin Settings

The plugin requires three settings to be set in the plugin settings:

  • publishable_key: Your Bento publishable key
  • secret_key: Your Bento secret key
  • site_uuid: Your Bento site UUID

These will be used across all Bento actions in your workflows.

Keep your API keys secure and never expose them in client-side code.
Note for testing you will want to enter the same keys in the test settings fields, if you use a separate bento site for testing use that site uuid.

Available Actions

1. Bento - Send Event (Dynamic)

Category: Data (Things)

Track user actions and behaviors in your Bubble app. Events sent will add the subscriber via the email address if they do not already exist. If the subscriber does exist, the event will be added to the existing subscriber. Events can also start flows, and other automations.

Required Parameters:

  • Name
    email
    Type
    dynamic text
    Description

    User's email address

  • Name
    type
    Type
    static text
    Description

    Event type (e.g., "$completed_onboarding", "$purchase")

Optional Parameters:

  • Name
    detail_data
    Type
    dynamic json text
    Description

    Event details json, e.g., { plan: "pro", quantity: 10 }

  • Name
    first_name
    Type
    dynamic text
    Description

    User's first name

  • Name
    last_name
    Type
    dynamic text
    Description

    User's last name

  • Name
    company_name
    Type
    dynamic text
    Description

    User's company name (e.g., "Acme Inc")

  • Name
    job_title
    Type
    dynamic text
    Description

    User's job title (e.g., "CEO")

  • Name
    phone_number
    Type
    dynamic text
    Description

    User's phone number (e.g., "+1 555-555-5555")

  • Name
    source
    Type
    dynamic text
    Description

    Sign-up source (e.g., "website", "event", "app")

  • Name
    status
    Type
    dynamic text
    Description

    User status (e.g., "active", "inactive")

Example Usage:

email: Input Email's value
type: "$completed_onboarding"
first_name: Input First Name's value
last_name: Input Last Name's value
detail_data: {"purchase_amount": 99.99, "product_id": "SKU123"}

2. Subscriber Action

Category: Data (Things)

Manage subscribers with various commands. This is effective for managing subscriber status (subscribed or unsubscribed), or fields and tags for updating subscriber metadata in one-off cases. This action should not be used for batch updates, and is heavily rate limited.

Required Parameters:

  • Name
    email
    Type
    dynamic text
    Description

    Target subscriber email address

  • Name
    command
    Type
    static select
    Description

    The command to execute

Available Commands:

  • subscribe - Add subscriber to list
  • unsubscribe - Remove subscriber from list
  • add_tag - Add tag to subscriber
  • remove_tag - Remove tag from subscriber
  • add_field - Add custom field value
  • remove_field - Remove custom field

Optional Parameters:

  • Name
    query
    Type
    dynamic text
    Description

    Command parameter (required for most commands, e.g., tag name or field value)

  • Name
    field_name
    Type
    dynamic text
    Description

    Used with "add_field" to define the field key

  • Name
    field_value
    Type
    dynamic text
    Description

    Used with "add_field" to define the field value

Example Usage:

command: "add_tag"
email: "[email protected]"
query: "purchased"
If you need to updated many tags, fields at once, use the subscriber update action instead, this will allow you to make all the changes in one request.

3. Subscriber Update

Category: Data (Things)

Update subscriber information during import.

Required Parameters:

  • Name
    email
    Type
    dynamic text
    Description

    Subscriber email address (validated)

Optional Parameters:

  • Name
    first_name
    Type
    dynamic text
    Description

    Subscriber's first name

  • Name
    last_name
    Type
    dynamic text
    Description

    Subscriber's last name

  • Name
    tags
    Type
    dynamic text
    Description

    Comma-separated string of tags to add (e.g., "lead,mql")

  • Name
    remove_tags
    Type
    dynamic text
    Description

    Comma-separated string of tags to remove

  • Name
    custom_fields
    Type
    dynamic object
    Description

    Any additional custom fields, automatically handled

Features:

  • Automatic custom field handling
  • Tag management during import
Subscriber update is a bulk update action, so it can take a momemnt before all changes are applied.

4. Bento Transactional

Category: Data (Things)

Send transactional emails from Bubble workflows.

Required Parameters:

  • Name
    to
    Type
    dynamic text
    Description

    Recipient email address

  • Name
    from
    Type
    static text
    Description

    Sender email address. MUST be an existing author in your account

  • Name
    subject
    Type
    dynamic text
    Description

    Email subject line

  • Name
    html_body
    Type
    dynamic text
    Description

    HTML content of the email

  • Name
    transactional
    Type
    boolean
    Description

    Set to true to send a transactional email that ignores if the user has unsubscribed. USE WITH CAUTION

Optional Parameters:

  • Name
    text_body
    Type
    dynamic text
    Description

    Plain text version of the email

  • Name
    personalizations
    Type
    dynamic object
    Description

    Dynamic variables for the email

Example Usage:

to: "[email protected]"
from: "[email protected]"
subject: "Welcome to our platform!"
html_body: "

Welcome {{name}}!

Thanks for signing up.

" personalizations: '{"name": "John Doe", "link": "https://example.com"}'
Don't use transactional emails directly from public forms. Always validate and sanitize input data.

Best Practices

Event Best Practices

  • Use descriptive event types (e.g., "$purchase", "$signup")
  • Include relevant detail_data for segementation of subscribers
  • Track user journey milestones
  • Use consistent naming conventions

Common Use Cases

User Registration Flow

  1. User signs up in Bubble
  2. Send "Subscriber Update" action to add to Bento
  3. Send "$signup" event with user details
  4. Event triggers welcome email and starts onboarding journey

E-commerce Purchase

  1. User completes purchase
  2. Send "$purchase" event with order details
  3. Send order confirmation email via event and Bento flow

User Engagement

  1. User completes onboarding
  2. Send "$completed_onboarding" event
  3. Add "onboarded" tag via Bento flow
  4. Trigger next steps in workflow

Troubleshooting

Authentication Issues

  • Verify API keys are correct
  • Check site UUID format

Error Handling

The plugin includes comprehensive error handling with detailed messages for troubleshooting:

  • Authentication errors: Check API keys and permissions
  • Validation errors: Verify input data format
  • Network errors: Check connectivity and API status
  • Rate limiting: Implement appropriate delays

Advanced Features

Custom Fields

  • Automatically handle any additional properties in detail_data for easy enrichment
  • Support for complex data structures
  • Flexible field naming conventions

Tag Management

  • Use comma-separated strings for easy Bubble integration
  • Support for bulk tag operations
  • Automatic tag validation, if it doesn't exist it will be created

Personalizations

  • Accept JSON strings
  • Dynamic content injection in emails

Support

Contact Bento support via:

  • Email: [email protected]
  • Discord: Bento Community
PreviousBento Forms
NextClickFunnels

© Copyright 2025. All rights reserved.

Follow us on XFollow us on GitHubJoin our Discord server

What's on this page

  • Overview
  • Prerequisites
  • Setup Guide
  • Available Actions
  • Best Practices
  • Common Use Cases
  • Troubleshooting
  • Error Handling
  • Advanced Features
  • Support