Overview
Lovable is a platform that builds full-stack web apps from natural language prompts. You can integrate Brew into any Lovable project to send on-brand emails triggered by user actions in your app. Brew works with Lovable through its REST API. The API needs an API key, so the call runs in a backend Edge Function. Your key never reaches the browser.What Brew Handles for You
Building email into an app usually means writing HTML templates, handling unsubscribes, managing bounces, and worrying about deliverability. Brew takes care of all of that so you can focus on your app.- On-brand design without HTML. Describe your email in plain language. Brew generates production-ready, responsive emails that match your brand’s colors, fonts, logo, and tone of voice. No HTML coding or email design skills needed.
- Compliance built in. Marketing emails (both one-off Emails and Automations) automatically include a physical address and unsubscribe link in the footer. The address comes from your brand’s Details → Mailing address on the Brand page, and the pre-send audit warns when it’s missing.
- Unsubscribe management. Brew handles the entire unsubscribe flow: a branded unsubscribe page, contact status updates, and automatic suppression from future marketing sends. You don’t need to build any of this yourself.
- Bounce and complaint handling. Hard bounces are automatically suppressed, protecting your sender reputation without any code on your end.
- Contact auto-creation. When you trigger an automation, Brew automatically creates or updates the contact record. No separate contact creation step needed in your app.
- Works across every email client. Email HTML is notoriously tricky across Gmail, Outlook, Apple Mail, Yahoo, and mobile. Every email Brew generates is responsive and tested across clients.
- Analytics without instrumentation. Opens, clicks, bounces, and deliverability are tracked automatically in Brew’s dashboard. No event tracking code required in your Lovable app.
Ways to Send Emails with Brew
Brew has two types of email, Emails and Automations, and a transactional email is a kind of automation. Here’s how each one works in the context of a Lovable app:
Automations are triggered directly from your Lovable app using the setup below. Emails are usually designed and sent in Brew, so most apps need nothing in Lovable for those.
Prerequisites
Brew Account
Sign up at brew.new and set up your brand.
Verified Domain
Verify your sending domain to send emails from your own address.
API Key
Create a new API key at
brew.new/settings/api. For this
single-brand integration, create a brand-scoped key while the
intended brand is active.
Lovable Backend
Use Lovable Cloud or connect your own Supabase project. Either one runs Edge Functions.
Connect Brew to Lovable
These steps wire your Lovable app up to trigger automations.1
Set up a backend for your project
Edge Functions need a backend. In your Lovable project, open More → Cloud.Use Lovable Cloud, or click Already have a Supabase project? Connect it here to use your own. Then click Continue and Connect next to your Supabase project.A workspace owner or admin must link your Supabase organization to the Lovable workspace before you can connect a project.
2
Add your Brew API key as a secret
In your Lovable project, go to More → Cloud → Secrets:
- Add a new secret with the name
BREW_API_KEY - Paste your Brew API key as the value
Automations
Automations are multi-step email flows you design in Brew. Your Lovable app triggers them when something happens, like a user signing up, placing an order, or abandoning a cart. Brew handles the entire sequence: delays, branching, follow-ups.Set Up in Brew
1
Create your automation
In Brew, go to the Create page, select Automation, and describe the flow you want. For example: “Create a 3-email welcome series for new users. First email welcomes them, second shares a quick-start guide, third nudges them to book a demo.”
2
Create the trigger and define your payload
Open Automations, click Triggers, then New custom trigger. Give it a descriptive name like
user_signup or order_placed.Define the payload fields your app will send, for example email, firstName, and plan. Brew assigns the trigger an ID; copy it for the Lovable prompt.3
Publish
Publish your automation to make it available through the API.
Learn more about building automations in the Build an Automation guide.
Prompt Lovable
Copy and paste this prompt into Lovable’s chat:When to Use Automations
- User signup. Trigger
user_signupto start a welcome series - Onboarding. Trigger
onboarding_startedto send a multi-step getting started sequence - Trial ending. Trigger
trial_endingto send a reminder sequence nudging users to upgrade - Re-engagement. Trigger
user_inactiveto win back users who haven’t logged in recently
Transactional Emails
Password resets, receipts, and account notifications have to reach unsubscribed contacts and skip the unsubscribe footer. Brew has no separate API for them. A transactional email is an automation whose Send Email step uses a sending domain with a transactional purpose. The domain purpose is what removes the unsubscribe requirement and delivers to unsubscribed contacts. The wiring from Lovable matches the automations flow above:- Create the trigger
- Build a one-step automation
- Pick the transactional-purpose domain on its Send Email step
- Publish
- Fire it from the same Edge Function pattern
{{ trigger.* }} variables, such as {{ trigger.resetUrl }}. See Transactional Email for the model.
Event-driven marketing emails (welcome, onboarding, re-engagement) use the same flow from a marketing-purpose domain and respect unsubscribes. A trial-ending reminder is transactional, like a receipt, so send it from the transactional-purpose domain.
Test Your Integration
Once Lovable finishes generating the code, trigger the email flow in your app (for example, submitting a signup form). Check your email analytics in Brew to confirm the email was delivered.Troubleshooting
Emails are not being sent
Emails are not being sent
Check that
BREW_API_KEY is set under More → Cloud → Secrets (or in the Supabase dashboard for your own project). Also verify that your sending domain is verified in Brew by checking Domains in the Brew sidebar.Missing required payload fields
Missing required payload fields
Make sure the
payload includes email and every required field defined in your trigger schema. Field names are case-sensitive.Automation not triggering
Automation not triggering
Verify that at least one bound automation is Live in Brew (Draft automations are inert). Check that the event ID in your API call matches the trigger configured in Brew. If
brew.automations.triggers.fire(...) returns NO_PUBLISHED_AUTOMATION, publish at least one bound automation and retry.Emails landing in spam
Emails landing in spam
Make sure you have completed domain verification including DKIM and SPF records. We recommend using a subdomain like
updates.yourdomain.com for sending.Lovable shows build errors
Lovable shows build errors
Lovable may sometimes show false positive build errors. Test your app live by triggering the actual email flow. If the Edge Function deploys successfully, the integration is likely working.
Need Help?
Our team is ready to support you at every step of your journey with Brew. Choose the option that works best for you:- Self-Service Tools
- Talk to Our Team
Search Documentation
Type in the “Ask any question” search bar at the top left to instantly find relevant documentation pages.
Ask ChatGPT or Claude
Click here to open the Copy page menu at the top of this page, then send the page to ChatGPT, Claude, or your editor.