> ## Documentation Index
> Fetch the complete documentation index at: https://help.emaillove.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Export Figma emails to Zapier

> Send your Figma email HTML to Zapier via a Catch Hook trigger to power thousands of automated workflows.

The Email Love Figma Plugin connects directly to Zapier via a Catch Hook trigger, so you can take a Figma email design and pipe it into anything Zapier supports: Gmail drafts, an ESP that doesn't have a built-in integration, a CMS, Slack notifications, a Google Sheet, whatever you can build a Zap for.

[Download the Email Love Figma Plugin here](https://www.figma.com/community/plugin/1387891288648822744/email-love-html-email-builder)

## How it works

1. You create a Zap with **Webhooks by Zapier → Catch Hook** as the trigger
2. Zapier gives you a webhook URL
3. You paste that URL into the Email Love plugin's Zapier export
4. When you click Export, the plugin POSTs each selected email (name, subject, preheader, HTML) to the Zap, which then runs whatever actions you set up

## Prerequisites

* A [Zapier](https://zapier.com/) account
* The Email Love Figma plugin installed
* At least one email designed in Figma using the plugin
* An Email Love Footer with an Unsubscribe link in your design

<Steps>
  <Step title="Create the Zap and Get a Webhook URL">
    There's a **How to get a Zapier webhook URL** link in the export panel that jumps straight to Zapier's docs. The short version:

    1. In Zapier, click **Create Zap**
    2. For the trigger, choose **Webhooks by Zapier**
    3. Select the **Catch Hook** event and click Continue
    4. Leave **Pick off a Child Key** blank. We send a flat JSON object.
    5. Click **Continue** and Zapier shows you a **Custom Webhook URL** like `https://hooks.zapier.com/hooks/catch/12345/abcdef/`
    6. Copy that URL
  </Step>

  <Step title="Set Up the Export in the Plugin">
    1. Select the email frame(s) you want to export. Multi-select to fire several templates through the same Zap.
    2. Click the **Export** button in the top right of the plugin
    3. Pick **Zapier** from the **Export** dropdown
    4. Paste the Zapier webhook URL into the **Zapier Webhook URL** field
    5. (Optional) **Custom headers**: JSON object merged into request headers (e.g. auth tokens). Most Zapier Catch Hooks don't need this.
    6. (Optional) **Extra JSON data**: JSON object merged into the payload body, e.g. tags or workspace IDs
    7. Give it a name in the **Zapier connection name** field so you can reuse this config later
    8. Click **Save Connection**

    The saved connection appears under **API Connections → Connect with an existing API Key** so you can switch between Zaps without re-entering URLs.
  </Step>

  <Step title="Set Output Options">
    Two toggles at the bottom of the panel:

    * **Upload hosted images URLs** (on by default): Uploads your images to Email Love's CDN and references them as `src` URLs in the HTML payload, so the email renders in any inbox. Leave on.
    * **HTML Minification** (off by default): Strips whitespace from the output HTML. Optional, mainly for smaller payloads.
  </Step>

  <Step title="Set Subject and Preheader per Frame">
    Each selected frame has its own **Email Subject line** and **Preheader text** inputs at the bottom of the export panel, with a **Preview** icon to see them in context. These values are sent in the payload as the `subject` and `preheader` fields, so set them before exporting.

    If you multi-select multiple frames, each frame gets its own subject and preheader inputs, so you can customise each one before a batch export.
  </Step>

  <Step title="Test the Zap Trigger">
    Before exporting for real, send Zapier a sample payload so it can show you the data shape when setting up later steps.

    1. In the plugin, click **Export to ZAPIER**
    2. Switch back to Zapier and click **Test trigger**
    3. You should see your template's `name`, `subject`, `preheader`, and `html` fields. Pick that record and continue building the Zap.
  </Step>

  <Step title="Build the Rest of Your Zap">
    Add whatever action(s) you need. A few common ones:

    * **Gmail → Create Draft** with `html` as the body
    * **HTTP → POST** to push the HTML into an ESP without a native Email Love integration
    * **Google Sheets → Create Row** to log every export
    * **Slack → Send Channel Message** to notify a #email channel when a new design ships

    Map the fields from Step 5 into your action. The `html` field is the full ready-to-send email.
  </Step>

  <Step title="Publish the Zap">
    Turn the Zap on. From then on, every time you click **Export to ZAPIER** in the plugin, your Zap fires.
  </Step>
</Steps>

## Payload Format

Each template is sent as its own POST request:

```json theme={null}
{
  "name": "Frame name from Figma",
  "subject": "Email subject line",
  "preheader": "Preheader text",
  "html": "<html><head>...</head><body>...</body></html>"
}
```

If you multi-select multiple frames, each one is POSTed individually. Your Zap fires once per template.

## Adding Custom Fields or Headers

The **Custom headers** and **Extra JSON data** fields work the same way as in the [Custom Webhook export](/plugin/export/custom-webhook). Use them to send auth headers, tags, workspace IDs, or any other data your Zap needs.

## Troubleshooting

**Zapier never received the test:** Make sure you copied the exact webhook URL from the Catch Hook step. The URL should start with `https://hooks.zapier.com/hooks/catch/`.

**Zap fires but `html` is empty:** Make sure your design has at least one Email Love section/component. Empty frames don't generate HTML.

**Subject or preheader is empty in Zapier:** Each frame has its own Subject and Preheader inputs at the bottom of the export panel. Scroll down to the frame's section and fill them in before clicking Export.

**"Pick off a Child Key" is set in Zapier:** Leave it blank. We send a flat object, not a wrapped one.

**Got several runs from one export:** Each frame is sent as its own request, so each frame triggers the Zap once. If you only wanted one, select a single frame before exporting.

**Multi-step Zap is hitting Zapier's task limit:** Each export = one task per Zap step. For high-volume sends, export fewer frames at a time or move to a paid Zapier plan.

**Unsubscribe link not working:** Make sure your design includes an Email Love Footer with an Unsubscribe link.

**Need help?** Reach out at [hello@emaillove.com](mailto:hello@emaillove.com) or join our [Discord community](https://discord.com/invite/ANv9PjVdzP).

## Related Articles

* [Export Figma emails to a Custom Webhook](/plugin/export/custom-webhook): Generic webhook export with full config reference
* [Export Figma emails to Make](/plugin/export/make): The Make equivalent of this flow
* [Export Overview](/plugin/export/overview): All export options
