# Make, Zapier, n8n

Make, Zapier and n8n all work with the API through their generic HTTP and webhook steps. These are plain HTTP setups, not official integrations.

## The pattern

1. **Start the job** with an HTTP step: `POST https://moleman.io/api/v1/find-contacts` (or `/verify`, `/deep-search`).
   Headers: `Authorization: Bearer mm_live_…`, `Content-Type: application/json`, and `Idempotency-Key` = the trigger's record id (so a re-run never charges twice).
2. **Small jobs:** add `"wait": 25` to the body. The answer already has `results`; use `results[0].email` and `results[0].result` in the next step.
3. **Big lists:** add `"webhookUrl"` with the URL of a webhook trigger (a second scenario / Zap / workflow). We POST the finished job there.

## Make

- Module **HTTP → Make a request**. URL, method `POST`, headers as above, body type **Raw**, content type **JSON**, **Parse response: Yes**.
- For webhooks: a second scenario starting with **Webhooks → Custom webhook**. Copy its address into `webhookUrl`. Click **Redetermine data structure** and call [`POST /api/v1/webhooks/test`](/docs/api/webhooks-test) with that address to send a sample.

## Zapier

- Action **Webhooks by Zapier → Custom Request** (method `POST`, data as raw JSON, headers as above). Zapier waits up to about 30 seconds, so keep `"wait": 25`.
- For webhooks: a Zap with trigger **Webhooks by Zapier → Catch Hook**. Use its URL as `webhookUrl`, and send a test with [`POST /api/v1/webhooks/test`](/docs/api/webhooks-test).

## n8n

- Node **HTTP Request**: method `POST`, authentication **Generic → Header Auth** (name `Authorization`, value `Bearer mm_live_…`), body JSON.
- For webhooks: a workflow starting with a **Webhook** node (method POST, use the production URL). To check the signature, add a **Code** node with the code from [Webhooks](/docs/webhooks) (enable "Raw body" on the Webhook node).

## Example body

```json
{
  "action": "companyInbox",
  "rows": [{ "company": "Example Dental", "website": "example.com" }],
  "wait": 25
}
```

Use a **test key** while you build: free, made-up results, and webhooks are really sent.

