Telephony and contact center

Check phone numbers, country codes and IP addresses in 8x8

Format and type customer phone numbers before they reach an 8x8 agent screen or an outbound campaign, using a small service that sits beside your contact records.

Why the data matters in 8x8

In a contact center, an agent who sees a number in five different formats, or a campaign that dials a number missing its country code, loses time on every interaction. 8x8 Contact Center lets administrators add custom fields to the Local CRM customer object that agents then see in Agent Console, so a number normalized to one international form with a known type can sit in fields of its own and agents and dialing lists work from consistent data.

What LookValid checks

LookValid checks for 8x8
ProductWhat it does hereCredits
Phone Numbering-Plan ValidationParses any number against its country numbering plan and returns E.164, national and international formats plus the number type. It cannot tell if a line is active.1 credit per valid number
Country Calling CodesTurns a calling code or country name into dialing rules and example numbers, handy when agents have to guess the prefix for a caller abroad.1 credit per lookup (an unknown code, country or name is free)
IP IntelligenceReturns country, region and network details for the address behind a web callback request, which helps route it to a regional queue.1 credit per lookup

Connect it in four steps

  1. Get a LookValid account and an API key from its dashboard.
  2. Hold the key as the LOOKVALID_API_KEY environment variable of the service you host, so it stays on your server and out of Configuration Manager and anything agents can open.
  3. Post the customer number to the phone check when a record is saved; a found value of false means it could not be parsed, so flag the record for a person, and an error answer should be logged and retried later.
  4. In 8x8 Configuration Manager open CRM, then the Fields tab, and add three Customer custom fields named dialNumber, displayNumber and numberKind (Text type, names up to 32 alphanumeric characters; the type cannot be changed after saving). Your service then fills those values on each customer record it sends to the Local CRM.

A small service you host beside your CRM or contact store that checks a number when the record is saved and writes the formatted values for the three Customer custom fields back. The call is POST https://YOUR_API_HOST/v1/phone and costs 1 credit per valid number.

validateEightByEightPhone.mjs
const API_URL = "https://YOUR_API_HOST/v1/phone";
​
export async function validateEightByEightPhone(value) {
  const response = await fetch(API_URL, {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.LOOKVALID_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      "phone": value,
    }),
  });
  const result = await response.json();
  if (!response.ok) throw new Error(`${result.error.code}: ${result.error.fix}`);
  if (!result.found) return null;
  return {
      "dialNumber": result.data?.e164 ?? null,
      "displayNumber": result.data?.national_format ?? null,
      "numberKind": result.data?.number_type ?? null,
  };
}
Where each response field goes in 8x8
Response fieldGoes into
data.e164dialNumber
data.national_formatdisplayNumber
data.number_typenumberKind

The recipe returns nothing when the lookup finds nothing, which costs no credits for this product, and stops with the error code and fix on a failed request.

Without code

With an automation platform you can do the same through its generic HTTP request step: trigger when a contact is created in the system that feeds 8x8, post the number to the LookValid endpoint with the key in the Authorization header, and add an action that writes the three values back into the matching custom fields. No dedicated app is needed, and the field setup in Configuration Manager is a one-time admin task.

REST and MCPOne shared credit balance

Questions

What does it cost in credits per number?

Each phone check draws from your LookValid balance at the rate on the pricing page.

Will this tell agents whether the customer will pick up?

No. It checks formatting and the numbering plan only, so it says nothing about whether the line is active or who holds it today.

Where should the key be kept?

On the server that runs your service, as LOOKVALID_API_KEY. Do not place it in a screen or script that agents or customers can open.

Sources

LookValid is run by Meralume Labs. It is not connected to, endorsed by or a partner of any company or product named on this page, and every product name belongs to its owner.

LookValid bills every lookup in credits from one shared balance, so the same key works for each check above.

See Phone Numbering-Plan Validation