Zoho Flow
Zoho Flow Integration
Step-by-step setup guide for the Phone Validator Zoho Flow integration

Prerequisites

Before setting up the integration, make sure you have the following:

A Zoho Flow account on the Standard plan or higher. Auth Profiles and outgoing webhook connections — both required for this integration — are not available on Zoho Flow's Free plan.
A phonevalidator.com account. Don't have one? Join here.
Sufficient validation credits for your expected usage (pay-per-validation). New accounts receive $0.50 in free credits, which equates to 125 free searches at $0.004 each.
Getting Your API Key

Before connecting Phone Validator to Zoho Flow, you will need your API key.

  1. Log in to your account at phonevalidator.com.
  2. Click your name in the top right corner and select My Account.
My Account menu

Click your name in the top right corner and select My Account.

  1. On the My Account page, locate the API Keys row and click Manage API Keys.
My Account page showing API Keys row

Click Manage API Keys on the My Account page.

  1. In the Manage API Keys window, copy the key next to your Primary entry. Keep this key safe — you will need it in the next step.
Manage API Keys window

Copy the API key next to your Primary entry.

Setting Up the Connection in Zoho Flow

The integration is built using Zoho Flow's Auth Profile and Connection system, which lets any external API — including Phone Validator — be called securely from your flows.

Step 1: Create an Auth Profile
  1. In Zoho Flow, go to Settings (left sidebar, gear icon) → Auth Profiles (under “Flow Setup”) → Create Auth Profile.
  2. Select API Key as the Authentication Method.
  3. Fill in the fields:
    • Auth Profile Name: Phone Validator API
    • Field Label: API Key
    • Field Type: Password
    • Parameter Name: apikey
    • API Key Placement: Token in Query String
  4. Click Save.
Auth Profile API Key configuration

Configure the Auth Profile with API Key authentication and the correct parameter name.

Step 2: Create a Connection
  1. Go to Settings → Connections → Create Connection.
  2. Select the Phone Validator API Auth Profile you just created, then click Next.
  3. Enter a Connection Name (e.g. Phone Validator Connection) and paste your Phone Validator API key into the API Key field.
  4. Click Authorize.
  5. Your connection now appears in the Connections list with an Auth Profile tag. Click Test to confirm it says “Connection is working.”

Your connection is now saved and ready to use across all your Zoho Flow flows.

Using the Integration — Send Webhook Action

Once your connection is set up, add a Send Webhook action to any flow to validate a phone number.

  1. In your flow's Builder, go to Built-ins → Outbound Utility → Webhooks → Send Webhook and drag it onto the canvas.
  2. Under Authorization, select Use a connection, then choose your Phone Validator Connection.
  3. Configure the request:
    • Method: GET
    • URL: https://api.phonevalidator.com/api/zoho/v1/phonesearch
  4. Under the Params tab, add:
    • Phone Number — map this from a previous step in your flow (e.g. a form submission, CRM record, or spreadsheet row). Phone numbers can be entered with or without punctuation.
    • Region — there are three region options: 1, 2, or 3. Region 1 searches both the U.S. and outside the U.S. Region 2 searches U.S. and Canada only, and will mark any numbers outside as fake. Region 3 searches outside the U.S. and Canada only, and any U.S./Canada numbers will be automatically marked as fake. If you don't know where your numbers are located, or they could be anywhere in the world including the U.S., use Region 1.
  5. Set Response Type to JSON.
  6. Click Save.
Note: your API key does not need to be entered manually here — it's injected automatically by the connection.
A note on testing: the isolated Test button on this action can sometimes fail with a false “missing parameters” error, because it doesn't always resolve mapped variables the way a live run does. Always confirm using Test & Debug on the whole flow, or a real live trigger run, rather than relying on the single-action Test button.
Validation Results

Because Zoho Flow returns the raw JSON response as a single string rather than individual mapped fields, a small Custom Function is used to parse it into usable, individually mappable values. (Full setup instructions are in the Custom Function section below.) Once parsed, the following data is available to map into subsequent actions in your flow:

FieldDescription
Phone NumberThe phone number that was validated
Line TypeCELL PHONE, LANDLINE, VOIP, TOLL-FREE, UNKNOWN, or FAKE
CompanyThe carrier (e.g. T-Mobile, Verizon, AT&T)
LocationCity and state/region of the number
CountryFull country name
Country CodeTwo-letter country code (e.g. US, GB, CA)
Outside USYES or NO
FakeYES or NO
Fake ReasonReason if the number is flagged as fake
CostCost of the search in dollars
Search DateDate and time the search was performed
Status Code200 = success, all other codes indicate an error
Status MessageOK or error description
Parsing the Response: Custom Function

Zoho Flow's Send Webhook action only exposes the response as a flat string — not as individually clickable fields. This Custom Function parses that response so its fields can be mapped normally in subsequent steps of your flow.

  1. Go to Built-ins → Developer Tools → Custom Functions → +Custom Function.
  2. Function Name: parse_pv_response
  3. Return Type: map
  4. Input Parameters: response_text, type string
  5. Click Create. Zoho auto-generates a function signature with opening and closing braces — write your code inside these braces, don't replace them.
Custom function auto-generated signature and braces

Zoho auto-generates the function signature and braces — your code goes inside them.

Enter the following code inside the braces:

map parse_pv_response(string response_text)
{
    resp = response_text.toMap();
    basic = resp.get("PhoneBasic");
    result = Map();
    result.put("line_type", basic.get("LineType"));
    result.put("company", basic.get("PhoneCompany"));
    result.put("location", basic.get("PhoneLocation"));
    result.put("outside_us", basic.get("OutsideUS"));
    result.put("country", basic.get("Country"));
    result.put("country_code", basic.get("CountryCode"));
    result.put("fake", basic.get("FakeNumber"));
    result.put("fake_reason", basic.get("FakeNumberReason"));
    return result;
}
  1. Click Save.
  2. In your flow, drag this function onto the canvas after Send Webhook, and map its response_text input to Send Webhook's Response output.
Custom function Execute output showing correctly parsed fields

Execute the function with sample data to confirm the parsed output fields.

Important: in any new flow, this Custom Function's output fields (line_type, company, location, etc.) won't be available to map into later steps until you Execute it at least once. Click Execute next to the function, paste a sample response into response_text, and run it once — then Use this test data. Here is a sample response you can use for testing:
{"Phone":"5551234567","Cost":0.3,"SearchDate":"2026-07-16T10:38:00.66348-07:00","StatusCode":"200","StatusMessage":"OK","PhoneBasic":{"ReportDate":"2026-07-16T10:38:00.66348-07:00","LineType":"CELL PHONE","PhoneCompany":"AT&T","PhoneLocation":"LOS ANGELES, CA","OutsideUS":"NO","Country":"UNITED STATES","CountryCode":"US","FakeNumber":"NO","FakeNumberReason":""}}

Once wired in, the parsed fields (Line Type, Company, Location, Outside US, Country, Country Code, Fake, Fake Reason) become individually mappable in any action that follows, such as updating a Google Sheet or a CRM record.

Example Scenario — Lead Validation with Google Sheets

This example shows how to automatically validate phone numbers entered into a Google Sheet and record the results in the same row — a common lead-validation workflow.

Important — follow this order: create your spreadsheet with just the column headers (no data rows yet), set up and turn on the flow below, and only then paste or enter your phone numbers. Zoho Flow's trigger only detects rows added after it's turned on — data already in the sheet before that point will not be picked up automatically.
Steps Used
  1. Google Sheets — Row added (trigger)
  2. Send Webhook — Phone Validator lookup
  3. Custom Function — parse_pv_response
  4. Google Sheets — Update row
How It Works
  1. A phone number is entered into a new row in your Google Sheet.
  2. Zoho Flow's polling trigger picks up the new row (checks every 15 minutes).
  3. Phone Validator validates the number and returns line type, carrier, location, and fake number status.
  4. The parsed results are written back into that same row.
Step 1: Create Your Spreadsheet

Create a new Google Sheet with just the column headers: Phone Number, Line Type, Company, Location, Outside US, Country, Country Code, Fake, Fake Reason. Do not enter any phone numbers yet — leave the sheet with just the header row for now.

Step 2: Build the Flow
  1. Create the trigger: create a new flow, choose App trigger → Google Sheets → Row added, and connect your Google account.
Important: Google's consent screen offers three permission levels. You must select “See, edit, create, and delete all your Google Sheets spreadsheets” — the narrower, file-scoped option does not work with Zoho's Sheets connector.
Google OAuth consent screen showing the three Sheets permission levels

Select the broadest Sheets permission option — the file-scoped option will not work.

  1. Point the trigger at the spreadsheet you just created in Step 1, and select the correct worksheet.
  2. Add the Send Webhook action (as configured above), mapping the Phone Number param to the row's Phone Number column.
  3. Add the parse_pv_response Custom Function, mapping its input to the Send Webhook response.
  4. Add a Google Sheets — Update row action, mapping each result field to the parsed output:
Update Row action with fields correctly mapped to the custom function's output

Map each result field to the parsed custom function output — not the original trigger row.

  1. Turn the flow ON.
Step 3: Add Your Phone Numbers

With the flow live, you can now enter or paste phone numbers into the sheet. Each new row — whether added one at a time or pasted in as a large batch — triggers its own separate, independent validation run. There's no limit on how many rows you can paste in at once; Zoho Flow queues each one and processes them individually, spread across one or more 15-minute poll cycles depending on volume.

Credits & Billing

Phone Validator uses a pay-per-search credit system. Each phone number lookup consumes one credit from your phonevalidator.com account.

$0.50 free credits — All new accounts receive $0.50 in free credits, which equates to 125 free searches.
Pay-as-you-go — Searches are $0.004 each after your free credits are used. No monthly fees or contracts.
Add funds manually — Log in to your phonevalidator.com account at any time to purchase additional credits.
Automatic billing — Set up automatic billing to keep your balance replenished so your Zoho flows never stop running.
Managing Your Account & Adding Funds

To manage your credit balance, log in to phonevalidator.com, click your name in the top navigation bar, and select My Account.

Navigate to My Account

Click your name in the top navigation bar and select My Account.

On the My Account page you can view your current balance and click Add Funds to purchase additional credits.

Account Details - Add Funds

Click Add Funds to purchase additional credits.

Setting Up Auto Refill

To ensure your Zoho flows never stop running due to insufficient credits, set up Auto Refill. This automatically adds credits to your account when your balance falls below a set threshold. Note: Auto Refill requires a credit card on file. Add your card under Credit Cards on File before enabling Auto Refill.

Auto Refill settings

Enable Auto Refill and set your Refill Amount and Balance Threshold. A credit card on file is required.

Ready to get started? Create a free account today.

GET STARTED!