Contact usTry for free
Developer documentation API keys
Developers/n8n guide

n8n implementation guide

Build a TargetWise enrichment workflow in n8n

Configure the n8n HTTP Request node, send one TargetWise lookup and branch on matched, partial, missing and error responses before updating your CRM.

Updated 10 September 2026 · Documentation and review policy

Create a single-record workflow.

Start with Manual Trigger and an Edit Fields node containing first_name, last_name and company_domain. Add an HTTP Request node. Configure generic Header Auth in n8n’s credential store: header name Authorization, value Bearer YOUR_TARGETWISE_KEY. Do not put a real key in a shared workflow export.

The n8n HTTP Request documentation covers authentication, JSON bodies and response options.

Configure the TargetWise request.

SettingValue
MethodPOST
URLhttps://targetwise.ai/api/v1/contacts/enrich
AuthenticationGeneric credential type → Header Auth
Send bodyJSON
Response formatJSON
Include response headers and statusOn
Never ErrorOn, followed by explicit status branches
JSON body · replace the illustrative identity
{
  "first_name": "Alex",
  "last_name": "Reed",
  "company_domain": "example.com",
  "include_email": true,
  "include_phone": false,
  "include_profile": false
}

After the first manual test, map the three identity values from Edit Fields using n8n expressions. Keep include_phone: false for an email-only task. Process one item first; do not turn on a scheduled batch until the result handling works.

Branch before the CRM write.

With full-response output enabled, read $json.statusCode and $json.body. Use an If or Switch node: require HTTP 200, a matched or partial body status and a non-empty body.data.work_email. Send not_found or a missing email to a completed-without-update branch.

Expression · email available
{{ $json.statusCode === 200 && ["matched", "partial"].includes($json.body.status) && typeof $json.body.data?.work_email === "string" && $json.body.data.work_email.length > 0 }}

Use your existing CRM node to read the contact again. Fill an empty email field after reviewing the identity; store the request ID and workflow event ID. Use the HubSpot mapping or Salesforce mapping for downstream writes.

Test error branches before scheduling.

  • Use a valid owned record, an unresolved identifier, an invalid key and a record whose email is already filled.
  • With Never Error enabled, 401, 402, 429 and 5xx must go to an error branch. They must never reach the CRM update node.
  • Bound batch size and retries. Keep a completed-event store; exclude completed events from a rerun.
  • Limit access to workflow execution history because it can contain contact data. Set retention appropriate to your workflow.

The request and result shape match the locally tested REST contract. n8n instance execution and your CRM credentials must be checked in your own environment.