---
title: "Validate contact data in n8n"
url: "https://lookvalid.com/integrations/n8n.md"
canonical_url: "https://lookvalid.com/integrations/n8n"
last_updated: "2026-10-22"
type: "how-to"
summary: "Add the carrier originally assigned to a US phone number block to a workflow, so lead routing can use state and rate center."
related: ["https://lookvalid.com/integrations.md", "https://lookvalid.com/docs/api/carrier-lookup.md", "https://lookvalid.com/docs/quickstart.md"]
---

# Validate contact data in n8n

Add the carrier originally assigned to a US phone number block to a workflow, so lead routing can use state and rate center.

In an n8n workflow each item flows through every node, so a phone number with no usable state or carrier hint sends the lead to the wrong queue or to none. Because you run the workflow yourself, a bad batch also ends up in your own database, where it stays until someone writes a cleanup flow.

## What LookValid checks

- [Carrier Lookup (original carrier)](https://lookvalid.com/products/carrier-lookup.md): Returns the carrier originally assigned a US number block, plus state and rate center. Ported numbers still show the original carrier, and Canada and the Caribbean are not covered. (1 credit per lookup (numbers outside the covered numbering plan areas are free))
- [Phone Numbering-Plan Validation](https://lookvalid.com/products/phone.md): Checks the number against its country numbering plan and returns E.164 and the number type. It does not say whether the line is active. (1 credit per valid number)
- [IP Intelligence](https://lookvalid.com/products/ip.md): Returns country, region, network owner and risk flags from open data for an address a sign-up came from. (1 credit per lookup)

## Connect it in four steps

1. Create a LookValid account and an API key from the dashboard, which a person does once.
2. Create a generic credential of the Header auth type in your n8n instance and choose it under Authentication on the HTTP Request node, so the key is held as a credential and not typed into the node's Send Headers list.
3. Set Method to POST, switch on Send Body with a JSON body that carries the phone number from the incoming item; on found false let the item continue with empty fields, and on an error stop the branch and read the code and fix.
4. Copy the state, rate center and block in service values onto the item with an Edit Fields (Set) node, so later nodes can route on them.

An HTTP Request node that sits after the trigger node and before the node that writes the item. The call is `POST https://YOUR_API_HOST/v1/carrier-lookup`.

```
POST https://YOUR_API_HOST/v1/carrier-lookup
Authorization: Bearer {{LOOKVALID_API_KEY}}
Content-Type: application/json

{
  "phone": "{{value}}"
}
```

| Response field | Goes into |
| --- | --- |
| `data.state` | state |
| `data.rate_center` | rate_center |
| `data.in_service` | block_in_service |

## Without code

n8n does not need a dedicated LookValid node. The HTTP Request node can send the POST shown above and pass the JSON on to the next node, and it can sit after a Webhook trigger or any other starting node. It also has an Import curl command option, so you can paste a curl call from our docs to fill the fields. The same node works for every product we serve.

## Questions

### What does a lookup cost in credits?

The pricing page lists the credits for carrier-lookup. One item through the node is one lookup.

### What does the carrier lookup not do?

It reports the original block assignment from public records. It cannot tell you the current carrier after a port or whether the number is active.

### Where does the key go in n8n?

In a Header auth credential selected under Authentication on the HTTP Request node, not in the node's Send Headers list.

## Sources

- [HTTP Request node (n8n docs)](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/), read 2026-10-18

## Related

- [LookValid integrations](https://lookvalid.com/integrations.md)
- [Carrier Lookup (original carrier) reference](https://lookvalid.com/docs/api/carrier-lookup.md)
- [Quickstart](https://lookvalid.com/docs/quickstart.md)
