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

# Zapier

> How to connect ChatNorris with Zapier: triggers, the send-message action and the permissions it uses.

ChatNorris has a public app in the Zapier directory (**status: Beta**). It isn't a separate integration with its own logic: it connects using an **API v2 API key** and exposes a subset of those same endpoints as Zapier triggers and actions, without you having to build HTTP requests by hand.

> [!NOTE]
>
> Requires an API key with access to the API v2 — available on the **Standard** and **Premium** plans (see [Introduction to the API](https://docs.chatnorris.ai/en/api-referencia/introduccion.md)).

***

## Connect your account

1. In ChatNorris, go to **Settings → API Keys** and create a key. Write it down: it's shown only once.
2. In Zapier, search for the **ChatNorris** app when you create a Zap.
3. Paste the API key into the connection's **API Key** field. Zapier tests the connection against `GET /api/v2/project` and, if it's valid, shows your organization's name.
4. You can reuse the same connection in several Zaps.

> [!TIP]
>
> Use a dedicated API key for Zapier (not the one you already use for another integration) so you can revoke it independently from **Settings → API Keys** if you ever need to.

***

## Triggers

Triggers work by **polling**: Zapier queries the API at the interval that applies to your Zapier plan, and automatically deduplicates results it has already seen.

| Trigger | What fires it | Optional filter | Required scope |
| - | - | - | - |
| **New Contact** | A new lead captured by an agent | Agent (all by default) | `leads:read` |
| **New Conversation** | A new conversation started | Agent (all by default) | `conversations:read` |

The **Agent** field is a dropdown that loads the actual list of your agents (it uses `chatbots:read` internally); leave it empty to listen to all of the organization's agents.

> [!NOTE]
>
> **New Conversation** also fires for conversations created through the API itself (`api` channel) — for example, if another integration uses the **Send Message** action to start a new conversation.

***

## Action: Send Message

Sends a message to an agent and waits for its reply — the same `POST /api/v2/chatbots/:id/chat` from the API.

| Field | Required | Description |
| - | - | - |
| Chatbot | Yes | Agent that will reply (dropdown) |
| Message | Yes | Text of the message to send |
| Conversation ID | No | If you provide it, it continues an existing conversation instead of creating a new one |

The action returns `reply` (the agent's reply) and `conversation_id`, which you can chain into the rest of the Zap — for example, to forward the reply by email or Slack, or to reuse it as `Conversation ID` in a later step to keep the thread.

Requires the `chat:write` scope.

***

## Permissions each part uses

| Use in Zapier | Scope |
| - | - |
| New Contact | `leads:read` |
| New Conversation | `conversations:read` |
| Agent dropdown (in triggers and in the action) | `chatbots:read` |
| Send Message | `chat:write` |

API keys created in **Settings → API Keys** have full access (`*`), so they cover all these uses: you don't need to choose permissions.

***

## Known limitations

* There's no "new message" trigger within a conversation — only new conversation and new lead.
* There's no action to update an existing lead: the public API v2 doesn't expose that endpoint yet.
* Lead data comes with the base fields (name, email, phone, date) plus `contact_properties` (company, job title, city, etc.) and `custom_fields`; they don't come flattened field by field unless you map them manually in the Zap.

***

## See also

* [Introduction to the API](https://docs.chatnorris.ai/en/api-referencia/introduccion.md) — authentication, scopes and response format.
* [n8n](https://docs.chatnorris.ai/en/api-referencia/n8n.md) — a self-hosted or open-source alternative to Zapier, with more operations (knowledge base included).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.