---
title: "How to use Carrier Lookup"
url: "https://lookvalid.com/help/products/carrier-lookup.md"
canonical_url: "https://lookvalid.com/help/products/carrier-lookup"
last_updated: "2026-10-22"
type: "how-to"
summary: "What Carrier Lookup takes in, which fields it returns and how credits are charged for each lookup."
related: ["https://lookvalid.com/help/products/phone.md", "https://lookvalid.com/help/products/country-code.md", "https://lookvalid.com/help/products/email-domain-check.md", "https://lookvalid.com/help/billing/plans-and-credits.md"]
---

# How to use Carrier Lookup

What Carrier Lookup takes in, which fields it returns and how credits are charged for each lookup.

## What it does

The carrier originally assigned a US number block: company name, operating company number (OCN), rate center and state, from the public NANPA central office code and thousands-block reports, with the report date. Porting is not reflected (ported: unknown), so a number moved to another carrier still shows its original one. NANPA data has no carrier category, so line type is only a hint from the carrier name. Canada and the Caribbean are not covered.

## What you send

Send these fields in the JSON body of the request.

Request fields for Carrier Lookup

| Field | Type | Required | Limits |
| --- | --- | --- | --- |
| phone | string | Required | up to 64 characters |

## What you get back

The `data` object of a successful response carries these fields. Every response also lists its `sources`, the `credits_charged` and whether it was a `cache_hit`.

Each field is described in the [API reference](https://lookvalid.com/docs/api/carrier-lookup.md).

Response fields for Carrier Lookup

| Field | Type |
| --- | --- |
| phone_e164 | string |
| npa_nxx_block | object |
| original_carrier | object |
| rate_center | string |
| state | string |
| assignment_level | "thousands_block" or "central_office_code" |
| code_holder | object |
| in_service | boolean |
| assigned_since | string |
| line_type | "mobile" or "unknown" |
| line_type_basis | string |
| ported | string |
| data_date | string |
| blocks_data_date | string |
| notes | string |

## What it costs

1 credit per lookup (numbers outside the covered numbering plan areas are free).

What each outcome costs

| Case | Charge |
| --- | --- |
| Found | 1 credit |
| Nothing found | 0 credits |
| Repeat inside 7 days | 0 credits |
| Errors and invalid requests | 0 credits |

## Run it

You can try it without an account in the [free tool](https://lookvalid.com/tools.md). The free tools share a limit per visitor.

From code, send a POST request to `https://YOUR_API_HOST/v1/carrier-lookup` with your API key.

A request to Carrier Lookup

```bash
curl -X POST https://YOUR_API_HOST/v1/carrier-lookup \
  -H "Authorization: Bearer $LOOKVALID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone":"+12024561111"}'
```

Full parameters and response fields are in the [API reference](https://lookvalid.com/docs/api/carrier-lookup.md). To run a list of values, use a [bulk CSV job](https://lookvalid.com/help/api/bulk-csv-jobs.md).

## Good to know

- A repeat of the same lookup within 7 days is served from your cache and costs 0 credits.
- When the lookup finds nothing it returns `found: false` and costs 0 credits.
- Invalid input and errors are never charged.
- The API allows 200 requests per 10 seconds per key.

## Related

- [How to use Phone Numbering-Plan Validation](https://lookvalid.com/help/products/phone.md)
- [How to use Country Calling Codes](https://lookvalid.com/help/products/country-code.md)
- [How to use Email Domain Check](https://lookvalid.com/help/products/email-domain-check.md)
- [Plans, credits and how they are spent](https://lookvalid.com/help/billing/plans-and-credits.md)
