Integration

PQ + n8n — Custom workflows with PQ webhook triggers

Trigger n8n workflows from PQ Intel buying signals and build sophisticated automations with conditional routing, data enrichment, and multi-destination sync — all from n8n's visual workflow canvas.

Setup time: ~60 seconds Auth method: Webhook URL + API key Plan: Growth+

What this integration does

The PQ + n8n integration connects PQ Intel's signal detection engine to your self-hosted or cloud n8n instance via a webhook trigger node. When PQ Intel detects a prospect signal matching your ICP criteria, it sends a structured JSON payload to your n8n webhook. From there, you can chain any of n8n's 400+ nodes to enrich the lead data, apply conditional logic based on signal score, route to multiple destinations, or trigger downstream business processes.

Unlike simpler integrations that offer fixed output formats, the n8n webhook approach gives you complete control over the data pipeline. Each signal arrives as a full JSON payload with company context, contact details, signal metadata, and ICP scoring — ready for transformation and routing inside your n8n workflow. You determine exactly which fields to process, what enrichment APIs to call, and where the final enriched record lands.

The integration supports both one-way signal delivery and request-response patterns. For request-response, n8n can send back a transformed or enriched payload that PQ Intel incorporates into the signal record — enabling bidirectional data enrichment loops between PQ Intel and your n8n automation layer.

What you can build with n8n + PQ

Multi-step enrichment workflows that call external APIs (Clearbit, Hunter, Apollo) to augment PQ's signal data, conditional branching that routes hot leads to senior SDRs while warm leads enter nurture sequences, parallel sync to CRM + data warehouse + Google Sheets, and custom notification logic with Slack, Telegram, or email. You can also build multi-stage approval workflows where a lead must pass through qualification gates before reaching sales, or aggregate signals across time to detect account-level buying momentum before triggering an alert.

Set it up in 60 seconds

  1. 1

    Add a Webhook node in n8n

    In your n8n workflow, add a Webhook node as the trigger. Set the method to POST and configure the response to accept JSON. Copy the generated webhook URL from the node's configuration panel. For testing, keep the workflow in inactive mode — you'll activate it after connecting PQ Intel.

    Tip: Name your webhook node descriptively (e.g., "PQ Intel Signals Webhook") for easy identification in complex workflows.
  2. 2

    Configure webhook authentication in n8n

    In your Webhook node settings, enable Add Header under the authentication section. Create a custom header name (e.g., X-PQ-API-Key) and set a strong, unique API key value. This header-based authentication ensures that only PQ Intel payloads are processed by your workflow — any request without the matching header will be rejected by n8n before reaching your workflow logic. PQ Intel includes this header in every webhook request it sends.

    Tip: Use a UUID or a randomly generated 32-character string for your API key. Store it in n8n's credential vault for reuse across workflows.
  3. 3

    Register the webhook in PQ Intel

    In PQ Intel, go to Settings > Integrations > n8n. Paste your n8n webhook URL, enter the same header name and API key value you configured in n8n, and give the connection a descriptive name. Click Save & Test to send a sample payload. If authentication is configured correctly, the test payload appears in your n8n workflow execution log.

  4. 4

    Build your n8n workflow

    Use the sample payload from PQ Intel to design your workflow. Add enrichment nodes to look up company data (Clearbit, Hunter, Apollo), IF nodes to branch by ICP score threshold, and destination nodes to write to your CRM, database, or communication channels. n8n's visual builder makes it easy to chain complex logic. Refer to the field mapping table below to understand which PQ payload fields map to which n8n node types.

    Tip: Use n8n's Set node to transform PQ's signal data into the format your destination app expects.
  5. 5

    Add data transformation functions

    PQ Intel's raw signal payload may need restructuring before it can be consumed by downstream nodes. Use n8n's Function or Set nodes to: rename fields to match destination schema, compute derived values (e.g., convert ICP score to a tier label like "Hot" / "Warm" / "Cold"), merge signal metadata with enrichment API results, or filter out fields you don't need before sending to storage. For complex transformations, n8n's Function node supports JavaScript with full access to the incoming payload via $input and $json.

    Tip: Create a reusable sub-workflow for your standard PQ signal transformation pipeline and import it into any new workflow that consumes PQ Intel data.
  6. 6

    Activate your workflow

    Toggle your n8n workflow to Active. PQ Intel will now send new signals to your webhook as they are detected. n8n handles retries and error handling automatically — check the execution log to monitor your workflow's performance. You can also set up n8n error workflows to handle failures gracefully, such as sending an alert when a signal processing step fails.

PQ Intel webhook payload fields & n8n node types

When PQ Intel sends a signal to your n8n webhook, the JSON payload includes the following fields. Use this reference to map incoming data to the appropriate n8n node types and functions in your workflow.

Payload Field Type Description n8n Node Type
signal_id string (UUID) Unique identifier for the signal event IF dedup logic
lead.name string Full name of the identified prospect Set → CRM
lead.email string Email address associated with the lead Set → enrichment
lead.title string Job title of the prospect IF role filter
company.name string Name of the lead's company HTTP Request → Clearbit
company.domain string Company website domain HTTP Request → enrichment
company.industry string Industry classification IF industry gate
company.size string Employee count range (e.g., "51-200") IF company filter
icp.score integer (0-100) ICP match confidence score IF score routing
icp.tier string Tier label (hot / warm / cold) Switch branch
icp.matched_criteria array[string] List of ICP criteria the lead matched Function → tag
signal.type string Signal category (hiring, funding, product, etc.) Switch routing
signal.source string Public source where the signal was detected Set → attribution
signal.detected_at string (ISO 8601) Timestamp of signal detection Function → format
signal.url string (URL) Direct link to the source signal Set → notification
metadata.campaign string PQ Intel campaign this signal belongs to Set → CRM tag
metadata.account_id string PQ Intel account identifier IF multi-account

Common workflows

Enrichment

Enrich Leads Through Multi-Step Workflow

When PQ Intel fires a signal, your n8n workflow automatically enriches the lead through a pipeline of third-party APIs — pull company data from Clearbit, find direct dials from Lusha, score intent with Apollo, and append technographic data from BuiltWith. The enriched record is then written to your CRM with every data point in place.

Sync

Sync to Multiple Destinations

Broadcast each PQ signal to multiple systems simultaneously — create a HubSpot contact, log a row in Google Sheets, and post a formatted message to Slack. n8n's parallel node execution lets you send to all destinations at once with individual error handling per branch.

Routing

Conditional Routing by Signal Score

Use n8n's IF node to route leads based on PQ's ICP match score. Hot signals (score ≥ 85) go directly to senior SDRs via urgent Slack DM and create a high-priority deal in your CRM. Warm signals (score 60-84) enter a nurture sequence with automated email outreach. Low-scoring signals are logged to a review queue for later triage.

Common issues & how to fix them

!

Webhook not firing — no signals reaching n8n

PQ Intel signals are detected but your n8n workflow never receives them.

Check 1: Verify the n8n webhook URL is correct and your workflow is in Active state. An inactive webhook silently drops all incoming requests.

Check 2: In PQ Intel, navigate to Settings > Integrations > n8n and confirm the connection status shows "Connected." Click Test to send a sample payload — if it fails, the URL or auth header may be misconfigured.

Check 3: If self-hosting n8n, verify that your n8n instance is reachable from PQ Intel's IP range. Check firewall rules, network ACLs, and whether the webhook endpoint is exposed on a public URL or behind a VPN. For private network deployments, configure an ingress tunnel or use n8n's built-in tunnel feature.

!

Empty payload received by downstream nodes

The webhook fires but subsequent nodes receive empty or null data.

Check 1: Review your n8n Webhook node's Response settings. If "Response Data" is set to Empty Response or All Entries, the payload may not be passed through to the next node. Set it to First Entry JSON or All Entries depending on your workflow design.

Check 2: Confirm that the webhook's POST method is selected and the payload type is set to JSON. If set to Form Data or Raw, n8n may fail to parse the incoming JSON body.

Check 3: Inspect the execution data in n8n's execution log. Click on the Webhook node in the workflow editor and view the input data tab — this shows exactly what PQ Intel sent. If the input is empty, the issue is upstream; if populated but downstream nodes show empty, check your node connections.

!

Expression errors when referencing PQ payload fields

n8n expressions like {{$json.lead.name}} return undefined or throw errors.

Cause: n8n uses a specific expression syntax that differs from JavaScript dot notation in some contexts. The correct syntax for accessing a field from the incoming webhook payload is {{$json.lead.name}} or {{$json["lead"]["name"]}}.

Check 1: Verify the field path matches the actual payload structure. PQ Intel wraps lead data under a lead object, company data under company, and ICP data under icp. Access nested fields with dot notation: {{$json.company.name}}.

Check 2: For Function nodes, use items[0].json.lead.name to access the field. The Function node receives an items array where each item has a json property containing the parsed payload.

Check 3: If using n8n's Set node, the expression field requires wrapping in curly braces: {{$json.icp.score}}. Omitting the braces treats the input as a literal string.

!

Authentication fails — webhook requests rejected

n8n returns 401 or 403 errors when PQ Intel sends signal payloads.

Check 1: Verify that the header name and API key value in PQ Intel exactly match the header validation configured in your n8n Webhook node. The comparison is case-sensitive — X-PQ-API-Key is not the same as x-pq-api-key.

Check 2: Confirm that your webhook node's authentication is configured under the Add Header or Authentication section, not as a general node setting. n8n validates incoming headers only when header-based auth is explicitly enabled on the Webhook node.

Check 3: If you recently rotated your API key, update it in both PQ Intel and the n8n webhook node. An unmatched key causes all subsequent requests to fail until the values are synchronized. Test the connection in PQ Intel after making changes.

Frequently asked questions

Q: Does PQ Intel work with n8n Cloud, or only self-hosted instances?
Both. PQ Intel sends webhook payloads to any publicly reachable HTTP endpoint. If you use n8n Cloud, your webhook URL is provided by n8n and is publicly accessible by default. For self-hosted instances behind a firewall, you can use n8n's built-in tunnel feature, expose via a reverse proxy with TLS, or configure network routing to allow PQ Intel's outbound IP range. Both deployment modes receive the same payload structure and support the same workflow capabilities.
Q: What data does PQ Intel send in the webhook payload?
Each webhook payload contains a structured JSON object with the lead's name, email, and job title; company information including name, domain, industry, and employee count; ICP matching details with a numeric score (0-100), tier label, and matched criteria; signal metadata including type, source URL, and detection timestamp; and campaign context. The full field reference is available in the field mapping table above. PQ Intel sends only the fields that are populated — optional fields may be omitted from the payload.
Q: Can I test my n8n workflow before activating it with live signals?
Yes. PQ Intel includes a Save & Test button in the integration settings that sends a sample payload to your webhook URL. This sample payload matches the real signal schema so you can design and validate your entire workflow with representative data. You can trigger additional test payloads at any time without waiting for a live signal. n8n also supports manual execution — you can paste a sample JSON payload directly into the Webhook node's test panel to iteratively build and debug your workflow.
Q: Does PQ Intel handle retries if my n8n webhook is temporarily down?
Yes. If PQ Intel receives a non-2xx response or a connection timeout from your n8n webhook, it retries the delivery with exponential backoff. The retry schedule starts at 30 seconds and increases up to a maximum interval of 30 minutes, with delivery attempts continuing for up to 24 hours. After the retry window expires, the signal is marked as failed in PQ Intel and logged for manual review. For critical workflows, we recommend setting up n8n's error workflow handler to catch any in-workflow failures and alert your team.
Q: Can I connect multiple PQ Intel campaigns to different n8n workflows?
Absolutely. You can create separate connections from PQ Intel to distinct n8n webhook URLs, each routing signals from specific campaigns. In PQ Intel's integration settings, each connection can be configured with a different webhook URL and API key, and you can set per-campaign routing rules. On the n8n side, you can also use a single webhook and branch internally by inspecting the metadata.campaign field with an IF or Switch node, routing different campaigns to different workflow branches.
Q: What n8n plan do I need to use webhook triggers with PQ Intel?
Webhook trigger nodes are available on all n8n plans, including the free Community Edition (self-hosted) and all n8n Cloud tiers. However, if your workflow makes external HTTP requests for enrichment (e.g., Clearbit, Apollo), those are counted against n8n's execution quota on cloud plans. Self-hosted n8n instances have no execution limits. PQ Intel's n8n integration is available on the Growth plan and above — see our pricing page for plan details and limits.

Permissions & security

Self-hosted or cloud

PQ Intel works with both self-hosted n8n instances and n8n Cloud. For self-hosted deployments, PQ sends data directly to your infrastructure — no third-party intermediary touches the signal data.

API key verification

You can configure a custom API key header that PQ Intel includes in every webhook request. Your n8n webhook node validates this header before processing the payload, ensuring only authorized data enters your workflows.

Data in transit

All webhook payloads are sent over TLS 1.3. If you self-host n8n behind a VPN or private network, PQ Intel can send to private endpoints via configured network routing.

Full workflow control

You control exactly what happens with PQ's signal data inside n8n. No PQ Intel code runs inside your n8n instance. You choose which enrichment APIs to call, what data to persist, and where to send results.

Start automating with PQ + n8n

Connect your n8n instance to PQ Intel's signal engine and build custom automation workflows in minutes. Available on the Growth plan and above.

See plans & pricing
No credit card required to start. Setup takes about 60 seconds.

Related integrations