
- ClickFlare → n8n. ClickFlare’s Custom Webhook sends an event (a conversion, a purchase, a click) to an n8n Webhook node. The workflow stores it, enriches it or passes it on.
- n8n → ClickFlare. An HTTP Request node posts a conversion to ClickFlare’s postback endpoint as JSON, so any app or webhook n8n receives can report conversions. The same node calls the ClickFlare REST API, so one workflow can catch an event, check a report and act on it.
At a glance
To set up n8n with ClickFlare:- Add a Webhook node.
- Map the event in ClickFlare.
- Test, then publish.
- Post conversions to ClickFlare.
- Call the ClickFlare API.
How the data flows
What you’ll need
- A ClickFlare account with your own tracking domain for postbacks. See Tracking domains.
- An n8n instance, cloud or self-hosted. A self-hosted instance must be reachable from the internet over HTTPS for ClickFlare to call it.
- For n8n → ClickFlare: the click ID stored somewhere the trigger can return it.
- For API calls: an API key from Settings → API Keys.
Send ClickFlare events to n8n
Add a Webhook node
- HTTP Method: POST, to match the ClickFlare mapping. GET works too if you send values in the URL only.
- Path: n8n fills in a random path. You can replace it with something readable, such as
clickflare-conversions. - Authentication: Header auth is a good choice. Create a credential with a header name and a secret value. You’ll add the same header in ClickFlare.
- Respond: Immediately is enough. ClickFlare only needs to know the request arrived.
Add a Webhooks integration in ClickFlare
Map the event

Test with the test URL
query, values sent in the body under body.Publish and switch to the production URL
N8N_PAYLOAD_SIZE_MAX.
Report conversions from n8n to ClickFlare
ClickFlare accepts conversions as a JSON POST on the same endpoint as its postback:cf_click_id (required), payout, ct, txid and param1 to param20. ct must match a custom conversion created under Settings → Custom Conversions. See Custom conversions.
Set up the trigger
{cf_click_id} in the offer or lander URL and have the platform store it.Add an HTTP Request node
Skip events you don't want
Test the node
Call the ClickFlare API from n8n
Create a Header Auth credential
api-key and Value your key from Settings → API Keys. n8n adds the header to every request that uses the credential. See API overview.Import the request
Pull a report
https://public-api.clickflare.io/api/report with a JSON body:groupBy must also be in metrics. conversionTimestamp (visit or postback) and currency are optional. For long reports, turn on the node’s Pagination option and raise page until no rows come back.roi below your floor and a Slack or email node sends the list. A request without the api-key header returns 401.
Verify the setup
ClickFlare → n8n
n8n → ClickFlare
Troubleshooting
ClickFlare events don't reach n8n
ClickFlare events don't reach n8n
- ClickFlare points at the test URL. Use the production URL after you publish.
- The workflow isn’t published, so the production URL isn’t registered.
- The header in ClickFlare’s Advanced configuration doesn’t match the Webhook node’s Header Auth credential. n8n rejects the request.
- An IP allowlist on the node blocks ClickFlare.
- A self-hosted instance isn’t reachable from the internet, or has no valid HTTPS certificate.
The POST to ClickFlare runs but no conversion appears
The POST to ClickFlare runs but no conversion appears
- The expression for
cf_click_idreturns nothing. Check the path in the input panel: webhook data sits underbody. ctdoesn’t match a custom conversion exactly.- The URL isn’t your tracking domain with
/cf/cv.
The API returns 401
The API returns 401
api-key header is missing or wrong. Check the credential’s name and value, and that the node uses it.FAQ
Does ClickFlare integrate with n8n?
Does ClickFlare integrate with n8n?
Which n8n URL do I paste into ClickFlare?
Which n8n URL do I paste into ClickFlare?
Can I send each campaign to its own workflow?
Can I send each campaign to its own workflow?
Can n8n use the ClickFlare MCP server instead of the API?
Can n8n use the ClickFlare MCP server instead of the API?