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

# Klaviyo

> Push finished emails from Denada to Klaviyo

Denada integrates with [Klaviyo](https://www.klaviyo.com) so you can design emails in Denada and push them directly to Klaviyo for your e-commerce campaigns.

## What you need

* A Denada project with an email ready to push
* A Klaviyo account where you can create a **private API key**

## Create a Klaviyo private API key

1. Log in to your Klaviyo account.
2. Click **Settings** on the account name in the lower left.
3. Under **Private API Keys**, click **Create PRIVATE API Key**.
4. Give the key a name like "Denada integration".
5. Grant it **Full Access** to at least **Templates** and **Images** (Templates is required; Images is only needed if you want Denada to upload images to Klaviyo).
6. Click **Save** and copy the key.

## Connect Denada to Klaviyo

<Steps>
  <Step title="Open the Integrations dialog">
    Click **Share** on any project, then under **Integrations**, click **Configure**. (You can also open your team's **Settings** page and click **Add integration** in the **Integrations** panel — manager access required.)
  </Step>

  <Step title="Select Klaviyo">
    Choose **Klaviyo** from the list of platforms.
  </Step>

  <Step title="Enter your credentials">
    * **Name** — optional, e.g. "Production".
    * **Private API key** — the key you created above.
  </Step>

  <Step title="Validate and save">
    Click **Validate** to confirm the key works, then click **Save**.
  </Step>
</Steps>

## Push an email to Klaviyo

1. Open the project and click **Share**.
2. Under **Integrations**, select **Export to Klaviyo**.
3. Fill in the export dialog:
   * **Template name** — the name that will appear in Klaviyo. Defaults to your project's name.
   * **Upload images - Klaviyo hosts images** — optional. When checked, Denada uploads your email's images to Klaviyo and rewrites the HTML to use Klaviyo-hosted URLs. When unchecked, images stay hosted on Denada's CDN.
4. Click **Export**.

Denada renders the final HTML and creates an HTML (code) template in Klaviyo, ready to use in your campaigns and flows.

## How updates work

* **Re-exporting updates in place.** If you've pushed this project to Klaviyo before, the export dialog shows a **Previous export** option: choose **Update existing** to update the same Klaviyo template, or **Create new** to make a separate one. If the previous one was deleted in Klaviyo, Denada creates a new one automatically.
* **Previously uploaded images are reused.** When re-exporting with image upload enabled, the **Previously uploaded images** option lets you reuse the existing Klaviyo-hosted copies (**Use existing uploads**) or upload fresh ones (**Upload new**). Reusing is the default.

<Note>
  Klaviyo allows multiple templates with the same name, so there is no overwrite confirmation like some other platforms — use the **Previous export** option to control whether you update or duplicate.
</Note>

## Troubleshooting

<AccordionGroup>
  <Accordion title="'Invalid API key' error during validation">
    Make sure you're using a **private** API key (they start with `pk_`), not a public key, and that it hasn't been revoked in Klaviyo.
  </Accordion>

  <Accordion title="Image upload fails but the export succeeds">
    Check that the API key has access to **Images** in addition to **Templates**. Without it, Denada can't create image assets in Klaviyo.
  </Accordion>
</AccordionGroup>

For general information about how integrations work, see [Integrations overview](/integrations/integrations-overview).

## Need help?

If you run into issues with the Klaviyo integration, reach out to [support@heydenada.com](mailto:support@heydenada.com) or ask in our [Community Slack](https://join.slack.com/t/denadacommunity/shared_invite/zt-33ermqnvl-kU9677V0eloK5Jf2SSNO5g).
