Integrations
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
- 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, andIdempotency-Key= the trigger's record id (so a re-run never charges twice). - Small jobs: add
"wait": 25to the body. The answer already hasresults; useresults[0].emailandresults[0].resultin the next step. - 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 callPOST /api/v1/webhooks/testwith 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 withPOST /api/v1/webhooks/test.
n8n
- Node HTTP Request: method
POST, authentication Generic → Header Auth (nameAuthorization, valueBearer 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 (enable "Raw body" on the Webhook node).
Example body
{
"rows": [{ "firstName": "Sarah", "lastName": "Miller", "website": "brightsmiledental.com" }],
"wait": 25
}Use a test key while you build: free, made-up results, and webhooks are really sent.