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

# Connect SmartAlex to Zapier, Make, and n8n

> Consume SmartAlex webhook events (call.completed, deal.stage_changed, and more) in Zapier, Make, and n8n, and call your own endpoints mid-call with Custom HTTP Tools.

You do not need a native app to automate SmartAlex. Two surfaces are live today: your agent can call your own HTTPS endpoints during a call with Custom HTTP Tools, and an AI client can drive your account through the MCP server. Signed webhook event delivery into Zapier, Make, and n8n is rolling out in private beta, and this page shows the exact setup so you are ready the moment your workspace is enabled.

This is the honest picture. We would rather you build on what actually ships than on a promise.

## What is live today

| Surface                                | Status       | What it does                                                                                               |
| -------------------------------------- | ------------ | ---------------------------------------------------------------------------------------------------------- |
| Custom HTTP Tools (Power Tools add-on) | Live         | Your agent calls your own HTTPS endpoint mid-call (look up an order, book a slot, check inventory)         |
| MCP server                             | Live         | An AI client operates your account: create and list webhook subscriptions, read calls, contacts, and deals |
| Webhook event delivery                 | Private beta | SmartAlex POSTs HMAC-signed events to a URL you own                                                        |
| Public REST API and TypeScript SDK     | Coming soon  | Direct programmatic access, currently private beta                                                         |
| Native Zapier, Make, or n8n app        | Coming soon  | One-click connection with prebuilt triggers and actions                                                    |

<Note>
  Webhook subscription management (create, list, remove) is live through the MCP server, and every subscription returns an HMAC signing secret. The outbound event push itself is in private beta. Until it is generally available, the most reliable live path is Custom HTTP Tools plus the MCP server.
</Note>

## How the pieces fit

```mermaid theme={null}
flowchart LR
  subgraph SmartAlex
    A[Live call or campaign]
    B[Deals pipeline]
  end
  A -->|call.completed| W[Webhook subscription]
  B -->|deal.stage_changed| W
  W -->|HMAC-signed POST| Z[Zapier, Make, or n8n webhook trigger]
  Z --> X[Your apps: Sheets, Slack, CRM, email]
  A -. mid-call .-> H[Custom HTTP Tool]
  H -->|HTTPS request| Y[Your HTTPS endpoint]
```

Two directions matter. Events flow out of SmartAlex into your automation tool, and your agent reaches into your systems during a live conversation. Most teams use both.

## Consume SmartAlex events in Zapier, Make, or n8n

The four named events you can subscribe to today are `call.completed`, `deal.stage_changed`, `contact.created`, and `campaign.completed`. Each automation tool exposes a generic webhook trigger, so the setup is the same three moves: create the trigger, register its URL with SmartAlex, then verify the signature.

<Steps>
  <Step title="Create a webhook trigger and copy its URL">
    Add a catch-all webhook trigger in your tool and copy the URL it generates.

    | Tool   | Trigger to add                          | Where to copy the URL                             |
    | ------ | --------------------------------------- | ------------------------------------------------- |
    | Zapier | Webhooks by Zapier, event "Catch Hook"  | The custom webhook URL shown in the trigger setup |
    | Make   | "Webhooks" app, "Custom webhook" module | Click "Add", then "Copy address to clipboard"     |
    | n8n    | "Webhook" node                          | The "Production URL" field on the node            |
  </Step>

  <Step title="Register the URL as a SmartAlex subscription">
    Create the subscription through the MCP server (the `smartalex_` webhook tools) or the Developer Portal in your dashboard. Point it at the URL from step 1 and choose the event, for example `call.completed`. The response includes an HMAC-SHA256 signing secret. It is shown once, so store it in your tool's secret manager immediately.
  </Step>

  <Step title="Verify every delivery">
    Reject any payload whose signature does not match. Use the snippet below in a Zapier Code step, a Make custom function, or an n8n Code node before you act on the event.
  </Step>
</Steps>

### Verify the HMAC signature

Each delivery is signed with HMAC-SHA256 over the raw request body, using the secret returned when you created the subscription. Recompute the digest and compare it in constant time.

<CodeGroup>
  ```js Node.js theme={null}
  import crypto from 'node:crypto';

  // Shown once when you create the subscription. Store it as a secret.
  const secret = process.env.SMARTALEX_WEBHOOK_SECRET;

  export function isValid(rawBody, signatureHeader) {
    const expected = crypto
      .createHmac('sha256', secret)
      .update(rawBody) // the exact raw body, before JSON parsing
      .digest('hex');
    const a = Buffer.from(signatureHeader);
    const b = Buffer.from(expected);
    return a.length === b.length && crypto.timingSafeEqual(a, b);
  }
  ```

  ```python Python theme={null}
  import hashlib
  import hmac
  import os

  SECRET = os.environ["SMARTALEX_WEBHOOK_SECRET"].encode()

  def is_valid(raw_body: bytes, signature_header: str) -> bool:
      expected = hmac.new(SECRET, raw_body, hashlib.sha256).hexdigest()
      return hmac.compare_digest(expected, signature_header)
  ```
</CodeGroup>

<Info>
  The exact signature header name and the full JSON payload shape for each event are confirmed at the moment you create the subscription (and in the Developer Portal). Wire the verification against those values rather than hardcoding assumptions.
</Info>

## Call your own endpoints during a call (Custom HTTP Tools)

This surface is fully live and is often more useful than one-way events, because it runs while the caller is still on the line. With the Power Tools add-on (\$29/month, included on Enterprise), you give an agent a Custom HTTP Tool that makes an HTTPS request to an endpoint you own, then speaks the result back.

Common patterns:

* A caller asks about an order. The agent calls your `/orders/lookup` endpoint and reads the status aloud.
* A caller wants to book. The agent posts to your scheduling endpoint and confirms the slot in the same breath.
* A qualified lead comes in. The agent pushes the details to your CRM's inbound webhook before the call ends.

Your endpoint can, of course, be a Zapier, Make, or n8n webhook. That gives you a live, in-call bridge into hundreds of downstream apps without waiting for the native SmartAlex app. See [Agent tools](/essentials/agent-tools) for the tool schema and [Add-ons](/essentials/add-ons) for what Power Tools unlocks.

## Drive your account from an AI client (MCP)

The MCP server lets Claude, Cursor, or any MCP client operate the account, including creating the webhook subscriptions above. Connect it once:

```bash theme={null}
claude mcp add --transport http smartalex https://api.getsmartalex.com/functions/v1/mcp-server
```

API keys are generated in the Developer Portal and require the Power Tools add-on plus a super-admin role. Full walkthrough in [Get started with MCP](/mcp/getting-started) and the [tools reference](/mcp/tools-reference).

## Example automations

Once events are flowing, these wire up in minutes:

* `call.completed`: append a row to a spreadsheet, post a summary to Slack, or create a follow-up task in your CRM.
* `deal.stage_changed`: notify the deal owner and update the matching record in your pipeline tool.
* `contact.created`: enrich the contact and drop it into an email sequence.
* `campaign.completed`: generate a run report and share it with the team.

<Tip>
  Keep the heavy logic in your automation tool, not in the agent. The agent handles the conversation. Zapier, Make, and n8n handle routing, enrichment, and fan-out to the rest of your stack.
</Tip>

## Coming soon

A native SmartAlex app for Zapier, Make, and n8n (prebuilt triggers and actions, no manual webhook wiring) is on the roadmap, alongside a public REST API and TypeScript SDK currently in private beta. If you want early access to signed webhook delivery or the API, ask through your workspace and we will enable it. Nothing on this page will need to change: the events and Custom HTTP Tools you build on now carry straight over.

## Related

<CardGroup cols={2}>
  <Card title="Get started with MCP" icon="plug" href="/mcp/getting-started">
    Connect an AI client and manage webhook subscriptions.
  </Card>

  <Card title="Custom HTTP Tools" icon="wrench" href="/essentials/agent-tools">
    Let an agent call your own HTTPS endpoints mid-call.
  </Card>

  <Card title="Add-ons and Power Tools" icon="puzzle-piece" href="/essentials/add-ons">
    What the \$29/month Power Tools add-on unlocks.
  </Card>

  <Card title="Build with SmartAlex" icon="hammer" href="/build-with/overview">
    Every integration surface in one place.
  </Card>
</CardGroup>
