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

# No-code integrations

> Connect Brandfetch to Zapier, Make, and n8n without writing code

Brandfetch connects to no-code automation platforms so any workflow can pull in logos, colors, fonts, and company data on demand, no API client, no glue code.

<Tabs>
  <Tab title="Zapier">
    Zapier connects Brandfetch to more than 9,000 apps through trigger-based workflows called Zaps. Once the Brandfetch app is added to your account, any Zap you build can pull in logos, colors, fonts, and company data on demand.

    In this guide you'll set up the connection and ship a working Zap: an Airtable CRM that auto-enriches every new lead with its company's brand data.

    **Prerequisites**

    * A [Zapier](https://zapier.com) account (the free tier is enough to follow along)
    * A [Brandfetch account](https://developers.brandfetch.com/) with an active API key

    **Getting started**

    <Steps>
      <Step title="Add the Brandfetch app in Zapier">
        Add the Brandfetch app from the Zapier App Directory. Once added, Brandfetch will appear in the app picker whenever you build a Zap.

        <Card title="Brandfetch on Zapier" icon="puzzle-piece" href="https://zapier.com/apps/brandfetch/integrations">
          Add the Brandfetch integration from the official Zapier App Directory.
        </Card>
      </Step>

      <Step title="Create a connection">
        A *connection* tells Zapier how to authenticate with Brandfetch. You only need to set it up once, and every Zap you build can reuse it.

        1. In Zapier, open any Zap and add a Brandfetch action step.
        2. Click **Sign in** under the **Account** dropdown.
        3. Give your account a memorable name (e.g. `Brandfetch - Production`).
        4. Copy your API key from the [API keys page](https://developers.brandfetch.com/dashboard/keys) and paste it into the **API Key** field.
        5. Click **Yes, Continue to Brandfetch**.
      </Step>

      <Step title="Build your first Zap">
        Let's enrich an Airtable CRM with brand data. Whenever a new lead is added with a company domain, the Zap fetches the company's logo, colors, and name, then writes them back to the same record.

        **High-level flow:**

        1. **Trigger:** Airtable *New Record* on your leads table.
        2. **Enrich:** Brandfetch *Find Brand by Domain Name*, using the domain field from the trigger.
        3. **Update:** Airtable *Update Record*, mapping the Brandfetch output (logo URL, primary color, company name) back to the original record.

        Test each step as you go to confirm the mapping works, then publish your Zap so it runs automatically as new leads come in.

        <Tip>
          The same pattern works with HubSpot, Pipedrive, Salesforce, Google Sheets, or any tool that stores a list of domains. Just swap the trigger and update steps.
        </Tip>
      </Step>
    </Steps>

    **Available actions**

    The Brandfetch app on Zapier exposes four **Search** actions. Search actions look up existing data and return it to the next step in your Zap.

    1. **Find Brand by Domain Name**
       * Input: Domain (e.g. `apple.com`)
       * Output: Brand data including logos, colors, and company information
    2. **Find Brand by Crypto Symbol**
       * Input: Crypto Symbol (e.g. `BTC`)
       * Output: Brand data including logos, colors, and company information
    3. **Find Brand by ISIN**
       * Input: ISIN identifier
       * Output: Brand data including logos, colors, and company information
    4. **Find Brand by Stock/ETF Ticker**
       * Input: Symbol/ETF Ticker (e.g. `AAPL`)
       * Output: Brand data including logos, colors, and company information

    **Common Zaps**

    A few patterns that work well with Brandfetch on Zapier:

    * **CRM enrichment**: Auto-populate Airtable, HubSpot, or Salesforce records with logos and brand data as new leads arrive.
    * **Lead alerts in Slack**: Post a new-lead message to Slack with the company's logo and brand colors inline.
    * **Branded asset pipelines**: Pull brand assets into Notion, Google Drive, or Figma whenever a new client is added.
    * **Create branded presentations**: Auto-generate Google Slides or Microsoft PowerPoint decks pre-populated with a prospect's logo, colors, and fonts.
    * **Financial dashboards**: Look up brand data by ticker or ISIN to enrich portfolio trackers and investor reports.

    **Error handling**

    When a Brandfetch action fails, Zapier surfaces the underlying API error code and message in the Zap History. The table below lists errors you might run into and how to resolve them.

    | Status | Title                            | Description                                                                                                                             |
    | ------ | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
    | `400`  | Bad Request                      | The request is malformed or missing required parameters.                                                                                |
    | `401`  | Unauthorized                     | The API key is missing, invalid, or expired. Manage your keys on the [API keys page](https://developers.brandfetch.com/dashboard/keys). |
    | `404`  | Not Found or Invalid Domain Name | No brand matches the input. Confirm it exists at [brandfetch.com](https://brandfetch.com/).                                             |
    | `429`  | API key quota exceeded           | You've hit your plan's request limit. Upgrade in the [developer dashboard](https://developers.brandfetch.com/).                         |

    Zapier automatically retries failed tasks for transient errors, and you can layer additional controls on top:

    * **Filters** stop a Zap when a condition isn't met.
    * **Paths** branch the workflow based on the Brandfetch response.
    * **Auto-Replay** retries held tasks once the underlying issue is resolved.

    You can also configure email or Slack notifications for failed Zaps from your account settings. For details on each, see Zapier's [error handling documentation](https://help.zapier.com/hc/en-us/articles/8496259603085).

    **Extract domain name from email**

    Most CRMs store an email but not a separate domain field. You can derive the domain on the fly using **Formatter by Zapier** before passing it to the Brandfetch action.

    Add a **Formatter by Zapier** step between your trigger and the Brandfetch action:

    1. Choose the **Text** event.
    2. Set **Transform** to **Split Text**.
    3. Map the email field from your trigger into **Input**.
    4. Set **Separator** to `@`.
    5. Set **Segment Index** to `Second`.

    Then map the formatter's output into the **Domain** field of the *Find Brand by Domain Name* action.
  </Tab>

  <Tab title="Make">
    Make.com is a no-code automation platform that lets you connect Brandfetch to thousands of other apps, including Airtable, HubSpot, Slack, and Google Sheets. With the Brandfetch integration installed, you can enrich any workflow with logos, colors, fonts, and company data without writing a line of code.

    This guide walks you through connecting Brandfetch to Make and building your first scenario: automatically enriching an Airtable CRM with brand data.

    **Prerequisites**

    * A [Make](https://www.make.com) account (the free tier is enough to follow along)
    * A [Brandfetch account](https://developers.brandfetch.com/) with an active API key

    **Getting started**

    <Steps>
      <Step title="Install the Brandfetch app in Make">
        Install the Brandfetch app from the Make integrations directory. Once installed, Brandfetch will appear in the module picker whenever you build a scenario.

        <Card title="Brandfetch on Make" icon="puzzle-piece" href="https://www.make.com/en/integrations/brandfetch">
          Install the Brandfetch integration from the official Make directory.
        </Card>
      </Step>

      <Step title="Create a connection">
        A *connection* tells Make how to authenticate with Brandfetch. You only need to set it up once, and every scenario you build can reuse it.

        1. In Make, open any scenario and add a Brandfetch module.
        2. Click **Create a connection**.
        3. Give it a memorable name (e.g. `Brandfetch - Production`).
        4. Copy your API key from the [API keys page](https://developers.brandfetch.com/dashboard/keys) and paste it into the **API Key** field.
        5. Click **Save**.
      </Step>

      <Step title="Build your first scenario">
        Let's enrich an Airtable CRM with brand data. Whenever a new lead is added with a company domain, the scenario fetches the company's logo, colors, and name, then writes them back to the same record.

        **High-level flow:**

        1. **Trigger:** Airtable *Watch Records* on your leads table.
        2. **Enrich:** Brandfetch *Get brand by domain*, using the domain field from the trigger.
        3. **Update:** Airtable *Update a Record*, mapping the Brandfetch output (logo URL, primary color, company name) back to the original record.

        Run the scenario once to confirm the mapping works, then turn on scheduling so it runs automatically as new leads come in.

        <Tip>
          The same pattern works with HubSpot, Pipedrive, Salesforce, Google Sheets, or any tool that stores a list of domains. Just swap the trigger and update modules.
        </Tip>
      </Step>
    </Steps>

    **Available modules**

    The Brandfetch app on Make exposes five modules:

    1. **Get brand by domain** (Action)
       * Input: Domain name (e.g. `apple.com`)
       * Output: Brand data including logos, colors, and company information
    2. **Get brand by crypto symbol** (Action)
       * Input: Crypto ticker (e.g. `BTC`)
       * Output: Brand data including logos, colors, and company information
    3. **Get brand by ISIN** (Action)
       * Input: ISIN identifier
       * Output: Brand data including logos, colors, and company information
    4. **Get brand by stock/ETF ticker** (Action)
       * Input: Stock or ETF ticker (e.g. `AAPL`)
       * Output: Brand data including logos, colors, and company information
    5. **Make an API call** (Universal)
       * Input: Any Brandfetch API endpoint and parameters
       * Output: Brand data including logos, colors, and company information

    **Common scenarios**

    A few patterns that work well with Brandfetch on Make:

    * **CRM enrichment**: Auto-populate Airtable, HubSpot, or Salesforce records with logos and brand data as new leads arrive.
    * **Lead alerts in Slack**: Post a new-lead message to Slack with the company's logo and brand colors inline.
    * **Create branded presentations**: Auto-generate Google Slides or Microsoft PowerPoint decks pre-populated with a prospect's logo, colors, and fonts.
    * **Financial dashboards**: Look up brand data by ticker or ISIN to enrich portfolio trackers and investor reports.

    **Error handling**

    When a Brandfetch module fails, Make surfaces the underlying API error code and message. The table below lists errors you might run into and how to resolve them.

    | Status | Title                            | Description                                                                                                                             |
    | ------ | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
    | `400`  | Bad Request                      | The request is malformed or missing required parameters.                                                                                |
    | `401`  | Unauthorized                     | The API key is missing, invalid, or expired. Manage your keys on the [API keys page](https://developers.brandfetch.com/dashboard/keys). |
    | `404`  | Not Found or Invalid Domain Name | No brand matches the input. Confirm it exists at [brandfetch.com](https://brandfetch.com/).                                             |
    | `429`  | API key quota exceeded           | You've hit your plan's request limit. Upgrade in the [developer dashboard](https://developers.brandfetch.com/).                         |

    Make offers five error handlers, **Ignore**, **Break**, **Resume**, **Commit**, and **Rollback**, that you can attach to any Brandfetch module. With the module's configuration dialog closed, right-click the module on the scenario canvas and choose **Add error handler**. For details on each handler, see Make's [error handling documentation](https://help.make.com/error-handling).

    **Extract domain name from email**

    Most CRMs store an email but not a separate domain field. You can derive the domain on the fly inside the Brandfetch module using Make's built-in functions.

    Paste the expression below straight into the **Domain** field:

    ```
    {{ifempty(split(trim(email); "@")[2]; "")}}
    ```

    `email` should reference the email field from the trigger module.
  </Tab>

  <Tab title="n8n">
    n8n is a workflow automation platform you can run in the cloud or self-host. Brandfetch ships as a **built-in node**, so there's nothing to install: search for *Brandfetch* in the node panel and it's there.

    This guide walks you through connecting your API key and building your first workflow: automatically enriching an Airtable CRM with brand data.

    **Prerequisites**

    * An [n8n](https://n8n.io) account, or a self-hosted instance
    * A [Brandfetch account](https://developers.brandfetch.com/) with an active API key

    <Note>
      This guide covers **version 2** of the Brandfetch node. If your node shows a single *Operation* list without a **Type** selector, you're on version 1, update your n8n instance to get v2. Existing v1 nodes keep working, n8n pins each node to the version it was created with.
    </Note>

    **Getting started**

    <Steps>
      <Step title="Add the Brandfetch node">
        In the n8n editor, click **+** to open the node panel, search for **Brandfetch**, and add it to your canvas.

        <Card title="Brandfetch on n8n" icon="puzzle-piece" href="https://n8n.io/integrations/brandfetch/">
          Browse the Brandfetch node in the official n8n integrations directory.
        </Card>
      </Step>

      <Step title="Create a credential">
        A *credential* tells n8n how to authenticate with Brandfetch. You only need to set it up once, and every workflow on your instance can reuse it.

        1. In the Brandfetch node, open the **Credential to connect with** dropdown and choose **Create new credential**.
        2. Copy your API key from the [API keys page](https://developers.brandfetch.com/dashboard/keys) and paste it into the **API Key** field.
        3. Click **Save**. n8n verifies the key immediately and shows **Connection tested successfully**.
        4. Rename the credential to something memorable (e.g. `Brandfetch - Production`).
      </Step>

      <Step title="Build your first workflow">
        Let's enrich an Airtable CRM with brand data. Whenever a new lead is added with a company domain, the workflow fetches the company's logo, colors, and name, then writes them back to the same record.

        **High-level flow:**

        1. **Trigger:** Airtable *Trigger* on your leads table.
        2. **Enrich:** Brandfetch, operation *Return All of a Brand's Data*, **Type** `Domain`, **Identifier** mapped to the domain field from the trigger.
        3. **Update:** Airtable *Update Record*, mapping the Brandfetch output (logo URL, primary color, company name) back to the original record.

        Use **Test workflow** to run it once and confirm the mapping, then activate the workflow so it runs automatically as new leads come in.

        <Tip>
          The Brandfetch node runs once per input item, so if the previous step returns 50 leads, one node enriches all 50 in a single execution. The same pattern works with HubSpot, Pipedrive, Salesforce, Google Sheets, or any tool that stores a list of domains.
        </Tip>
      </Step>
    </Steps>

    **Available operations**

    Unlike Zapier and Make, which expose a separate action per identifier type, the n8n node uses a single **Type** dropdown (`Domain`, `Stock/ETF Ticker`, `Crypto Symbol`, `ISIN`) plus a free-form **Identifier** field. Pick what you want back, then say how you're looking it up.

    1. **Return All of a Brand's Data**
       * Input: **Type** + **Identifier** (e.g. `apple.com`, `AAPL`, `BTC`, `US0378331005`)
       * Output: The full brand payload, name, description, logos, colors, fonts, company data, and more
    2. **Return Logos, Symbols and Icon**
       * Input: **Type** + **Identifier**, plus an optional **Download** toggle
       * Output: The `logos` array. With **Download** on, every logo variant is also attached to the item as binary data, ready to pass straight to Google Drive, S3, or an email node without a separate HTTP request
    3. **Return Accent and Brand Colors**
       * Input: **Type** + **Identifier**
       * Output: The `colors` array
    4. **Return Brand Context**
       * Input: **Domain** only, plus **Output Format** (`JSON` or `Markdown`) and a **Cached Only** toggle
       * Output: A structured, narrative-rich brand profile, identity, positioning, voice, and visual style. Choose **Markdown** to drop the result straight into an LLM prompt. See the [Brand Context API](/brand-context-api/overview) for details

    <Note>
      **Cached Only** returns a context only if one is already cached, responding instantly instead of crawling the domain. If nothing is cached, the node returns an empty item, so add an **IF** node downstream to handle that branch.
    </Note>

    **Use Brandfetch as an AI Agent tool**

    The Brandfetch node is tool-enabled. Connect it to the **Tool** input of an AI Agent node and the model can call it on its own, looking up a brand mid-conversation rather than on a fixed step in the flow.

    Pair it with the *Return Brand Context* operation set to **Markdown** for the cleanest grounding data: the agent gets a readable brand profile instead of raw JSON it has to interpret.

    **Common workflows**

    A few patterns that work well with Brandfetch on n8n:

    * **CRM enrichment**: Auto-populate Airtable, HubSpot, or Salesforce records with logos and brand data as new leads arrive.
    * **Bulk backfill**: Read a spreadsheet of domains, run them all through one Brandfetch node, and write the enriched rows back.
    * **Asset pipelines**: Use *Return Logos* with **Download** enabled to push brand files straight into Google Drive, S3, or Notion as binary data.
    * **On-brand content generation**: Feed *Return Brand Context* into an AI Agent or LLM Chain node to draft copy, emails, or landing pages in a prospect's voice.
    * **Lead alerts in Slack**: Post a new-lead message with the company's logo and brand colors inline.
    * **Financial dashboards**: Look up brand data by ticker or ISIN to enrich portfolio trackers and investor reports.

    **Error handling**

    When a Brandfetch node fails, n8n surfaces the underlying API error code and message in the node's output and in the execution log. The table below lists errors you might run into and how to resolve them.

    | Status | Title                            | Description                                                                                                                             |
    | ------ | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
    | `400`  | Bad Request                      | The request is malformed or missing required parameters.                                                                                |
    | `401`  | Unauthorized                     | The API key is missing, invalid, or expired. Manage your keys on the [API keys page](https://developers.brandfetch.com/dashboard/keys). |
    | `404`  | Not Found or Invalid Domain Name | No brand matches the input. Confirm it exists at [brandfetch.com](https://brandfetch.com/).                                             |
    | `429`  | API key quota exceeded           | You've hit your plan's request limit. Upgrade in the [developer dashboard](https://developers.brandfetch.com/).                         |

    You can control what happens on failure from the node's **Settings** tab:

    * **Retry On Fail** re-runs the node automatically, useful for transient errors.
    * **On Error → Continue (using error output)** sends failed items down a second branch so one bad domain doesn't stop a batch of 500.
    * **On Error → Continue** keeps the run going and passes an `error` field on the affected item.

    Add an **Error Trigger** workflow to get notified when an execution fails. For details, see n8n's [error handling documentation](https://docs.n8n.io/flow-logic/error-handling/).

    **Extract domain name from email**

    Most CRMs store an email but not a separate domain field. n8n expressions can derive the domain inline, no extra node needed.

    Paste this straight into the **Identifier** field:

    ```js theme={null}
    {{ $json.email.split("@")[1] }}
    ```

    `$json.email` should reference the email field from the previous node.
  </Tab>
</Tabs>
