Reference Guide#

2-Step Configuration#

Follow the instruction to get the app and details about installation in Native App Installation.

Events and Logs#

To observe and troubleshoot app behavior, you can enable Logging and Event Tracing for your account and share the app logs with us. For more information, please check Snowflake Documentations below:


Stored Procedures#

VERIFY_SINGLE_PHONE#

The VERIFY_SINGLE_PHONE procedure validates and standardizes individual phone using the Global Phone. It returns the verification results in JSON format or optional output table, supporting optional fields for flexible and accurate phone validation.

There are 2 ways to verify an phone in Native App Global Phone for Snowflake:

  1. Fill in the Verification Form on the Native App interface.

  2. Manually run a Snowflake SQL script to call the stored procedure.

Verification Form#

In your Snowflake account, select Data Products > Apps > GLOBAL_PHONE > Menu > Verify Single Phone > Try It Now > Verification Form.

Input Example#
  1. Enter the License Key and phone number you want to verify.

    ../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Try-Now.png
  2. Select Verify.

  3. Result will be displayed on the left sidebar.

Output Examples#

Some common output examples are shown below.

Verify a single phone

Result will be displayed in JSON format.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Try-Now-Result.png

Verify a single phone and insert the result to an output table

You can choose to insert the result to an output table for later use with our Default Output Fields.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Try-Now-Default.png

Verify a single phone with selected output table fields

You can choose which fields to be included in the output table.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Try-Now-Selected-Fields.png

Verify a single phone with ‘ALL’ output table fields

You can choose to have All fields to be included in the output table.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Try-Now-All-Fields.png

SQL Script#

Manually call our procedures using a Snowflake SQL script.

Setup and Sample Script#
  1. Select Projects > Worksheets on the left panel in your Snowflake account.

    You can find the installed application database in Projects > Worksheets > Databases.

    ../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Sample-Structure.png
  2. Select + to create a new SQL worksheet.

    ../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-Add-SQL-Worksheet.png
  1. Copy and paste the usage example below onto your worksheet to call the stored procedure, replace with your values.

    Check Input Parameters for more information.

    /******************************************************************
    Global Phone - Verify Single Phone Usage Example
    ******************************************************************/
    USE GLOBAL_PHONE.CORE;
    
    /* Verify a single phone, replace with your values*/
    CALL VERIFY_SINGLE_PHONE(
        LICENSE             => '<REPLACE_WITH_YOUR_LICENSE_KEY>'
       ,OPTIONS             => '<OptionName_1:Parameter,OptionName_2:Parameter>'
       ,PHONENUMBER         => '949-858-3000'
       ,COUNTRY             => 'US'
       ,COUNTRYOFORIGIN     => ''
       ,OUTPUT_TABLE_NAME   => '<OUTPUT_TABLE_NAME>'
       ,OUTPUT_TABLE_FIELDS => '<Field_1,Field_2>'
    );
    
    /* Result view, if Output Table is provided */
    SELECT *
    FROM <OUTPUT_TABLE_NAME>;
    

    Example of a stored procedure call from a SQL worksheet. Highlight the SQL statement then select Run button on the right top corner.

    ../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Sample.png
Input Parameters#

Input parameters when calling stored procedure VERIFY_SINGLE_PHONE.

Parameter

Data Type

Description

Example

LICENSE

VARCHAR

Required.
The License Key with Credits issued by Melissa.

Get it here.

REPLACE_WITH_YOUR_LICENSE_KEY

OPTIONS

VARCHAR

Required. Empty string is accepted.
[OptionName:Parameter], separate by comma(,)

See more information about endpoint options here.
If omitted, Default Input Options will be applied.

TimeToWait:5

PHONENUMBER

VARCHAR

Required.
Phone number need to be verified.

949-858-3000

COUNTRY

VARCHAR

Required. Empty string is accepted.
The country code.

US

COUNTRYOFORIGIN

VARCHAR

Required. Empty string is accepted.
The country of origin code.

US

OUTPUT_TABLE_NAME

VARCHAR

Required. Empty string is accepted.
The output table name.

A new table will be created in the same application database if it doesn’t exist.
If the table exists, its structure must remain unchanged.

YOUR_OUTPUT_TABLE_NAME

OUTPUT_TABLE_FIELDS

VARCHAR

Required. Case-sensitive. Empty string is accepted.

Only valid when OUTPUT_TABLE_NAME provided.

Fields in the output table; fields separates by comma(,) if not ‘All’.
Field name must match in one or all in an example list.
If omitted, see Default Output Fields.

RecordID,
Results,
PhoneNumber,
AdministrativeArea,
CountryAbbreviation,
CountryName,
Carrier,
CallerID,
DST,
InternationalPhoneNumber,
Language,
Latitude,
Locality,
Longitude,
PhoneInternationalPrefix,
PhoneCountryDialingCode,
PhoneNationPrefix,
PhoneNationalDestinationCode,
PhoneSubscriberNumber,
UTC,
TimeZoneCode,
TimeZoneName,
PostalCode,
DeliveryIndicator,
DeliveryPointCheckDigit,
DeliveryPointCode,
MelissaAddressKey,
MoveEffectiveDate,
MoveTypeCode,
MoveReturnCode,
PostalCode,
Suggestions,
Response,
Timestamp

Output Examples#

Some common output examples are shown below.

Verify a single phone

/******************************************************************
Global Phone - Verify Single Phone Usage Example
******************************************************************/
USE GLOBAL_PHONE.CORE;

/* Verify a single phone, replace with your values*/
CALL VERIFY_SINGLE_PHONE(
    LICENSE             => '<REPLACE_WITH_YOUR_LICENSE_KEY>'
   ,OPTIONS             => ''
   ,PHONENUMBER         => '949-858-3000'
   ,COUNTRY             => 'US'
   ,COUNTRYOFORIGIN     => ''
   ,OUTPUT_TABLE_NAME   => ''
   ,OUTPUT_TABLE_FIELDS => ''
);

Output will be displayed in JSON format.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-JSON.png

Verify a single phone and insert the result into an output table

If OUTPUT_TABLE_NAME is provided, a new table will be created if not already existed in the same application database with Default Output Fields.

  • Call stored procedure VERIFY_SINGLE_PHONE.

CALL VERIFY_SINGLE_PHONE(
    LICENSE             => '<REPLACE_WITH_YOUR_LICENSE_KEY>'
   ,OPTIONS             => ''
   ,PHONENUMBER         => '949-858-3000'
   ,COUNTRY             => 'US'
   ,COUNTRYOFORIGIN     => ''
   ,OUTPUT_TABLE_NAME   => '<OUTPUT_TABLE_NAME>'
   ,OUTPUT_TABLE_FIELDS => ''
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-Default.png
  • Query output table.

SELECT *
FROM <OUTPUT_TABLE_NAME>;
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-Default-Table-View.png

Verify a single phone with selected output fields

  • Call stored procedure VERIFY_SINGLE_PHONE.

CALL VERIFY_SINGLE_PHONE(
    LICENSE             => '<REPLACE_WITH_YOUR_LICENSE_KEY>'
   ,OPTIONS             => ''
   ,PHONENUMBER         => '949-858-3000'
   ,COUNTRY             => 'US'
   ,COUNTRYOFORIGIN     => ''
   ,OUTPUT_TABLE_NAME   => '<OUTPUT_TABLE_NAME>'
   ,OUTPUT_TABLE_FIELDS => '<Field_1,Field_2>'
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-Selected-Fields.png
  • Query output table.

SELECT *
FROM <OUTPUT_TABLE_NAME>;
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-Selected-Fields-Table-View.png

Verify a single phone with ‘ALL’ output table fields

  • Call stored procedure VERIFY_SINGLE_PHONE.

CALL VERIFY_SINGLE_PHONE(
    LICENSE             => '<REPLACE_WITH_YOUR_LICENSE_KEY>'
   ,OPTIONS             => ''
   ,PHONENUMBER         => '949-858-3000'
   ,COUNTRY             => 'US'
   ,COUNTRYOFORIGIN     => ''
   ,OUTPUT_TABLE_NAME   => '<OUTPUT_TABLE_NAME>'
   ,OUTPUT_TABLE_FIELDS => 'All'
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-All-Fields.png
  • Query output table.

SELECT *
FROM <OUTPUT_TABLE_NAME>;
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Single-SQL-Result-All-Fields-Table-View.png

VERIFY_MULTIPLE_PHONES#

The VERIFY_MULTIPLE_PHONES procedure processes phone number records in batches, validating and standardizing key components using the Global Phone.

It can handle tables of any size, returning the results in a specified output table and supports optional fields for flexible, accurate phone validation.

Requirements#

To use this feature, you need to prepare an input table in Snowflake beforehand referencing our default input fields below.

Default Input Fields#

Column Name

Data Type

Description

RECORDID

NUMBER

Required.
Record identifier, primary key.

PHONENUMBER

VARCHAR

Required.
The phone number to be verified.

COUNTRY

VARCHAR

Required.
The country code.

COUNTRYOFORIGIN

VARCHAR

Required. Empty string is accepted.
The country of origin code.

SQL Script#

You can find the installed application database in Projects > Worksheets > Databases.

../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-SQL-Sample-Structure.png
Setup and Sample Script#

The step-by-step example below shows how to use our stored procedure VERIFY_MULTIPLE_PHONES with the default values. Replace with your values.

  • Step 0 - Prepare an input table.

Assume that the input table has the signature below:

CREATE TABLE IF NOT EXISTS <INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE> (
   RecId INT IDENTITY
   ,Company VARCHAR DEFAULT ('')
   ,PhoneNumber VARCHAR DEFAULT ('')
   ,Country VARCHAR DEFAULT ('')
   ,CountryOfOrigin VARCHAR DEFAULT ('')
) CLUSTER BY (RecId);

This input table has different column names from the Default Input Fields. Mapping column names in Step 2 is necessary for the program to get the correct parameters.

  • Step 1 - Grant Required Privileges.

Ensure the application has the necessary access to the input table. Replace placeholders with your actual values.

/**********************************************************************
Global Phone - Verify Multiple Phones Usage Example
**********************************************************************/
/* Grant usage on input table to the application, replace with your values.*/
GRANT USAGE ON DATABASE <INPUT_DATABASE> TO APPLICATION GLOBAL_PHONE;
GRANT USAGE ON SCHEMA <INPUT_DATABASE>.<INPUT_SCHEMA> TO APPLICATION GLOBAL_PHONE;
GRANT SELECT ON TABLE <INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE> TO APPLICATION GLOBAL_PHONE;
  • Step 2 - Map Input Columns with the Default Input Fields.

Set the required parameters and map your input columns to our Default Input Fields.
You can skip the mapping step if your input table matches our Default Input Fields exactly.

USE GLOBAL_PHONE.CORE;

/* Set input parameters, replace with your values */
SET LICENSE             = '<REPLACE_WITH_YOUR_LICENSE_KEY>';
SET OPTIONS             = '<OptionName_1:Parameter,OptionName_2:Parameter>';
SET INPUT_TABLE_NAME    = '<INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE_NAME>';
SET OUTPUT_TABLE_NAME   = '<OUTPUT_TABLE_NAME>';
SET OUTPUT_TABLE_FIELDS = '<Field_1,Field_2>';

/* Map your input columns with our default input fields, replace with your actual column names if they differ from our default values */
CREATE OR REPLACE TEMPORARY VIEW INPUT_RECORDS AS
SELECT
   RecId                            AS RECORDID
   ,COALESCE(PhoneNumber, '')       AS PHONENUMBER
   ,COALESCE(Country, '')           AS COUNTRY
   ,COALESCE(CountryOfOrigin, '')   AS COUNTRYOFORIGIN
FROM IDENTIFIER($INPUT_TABLE_NAME);
  • Step 3 - Call stored procedure VERIFY_MULTIPLE_PHONES to verify your data.

Check Input Parameters for more information.

/* Call the verify procedure */
CALL VERIFY_MULTIPLE_PHONES(
    LICENSE                => $LICENSE
   ,OPTIONS                => $OPTIONS
   ,INPUT_TABLE_NAME       => TABLE(INPUT_RECORDS)
   ,OUTPUT_TABLE_NAME      => $OUTPUT_TABLE_NAME
   ,OUTPUT_TABLE_FIELDS    => $OUTPUT_TABLE_FIELDS
   -- Size limit for variables is 256. If your input string exceeds the limit, parse the string directly in the call
   -- e.g. OUTPUT_TABLE_FIELDS    => 'Field_1,Field_2'
);

/* Output table view */
SELECT TOP 100 *
FROM IDENTIFIER($OUTPUT_TABLE_NAME)
ORDER BY (RECORDID);
Full SQL Script
/**********************************************************************
Global Phone - Verify Multiple Phones Usage Example
**********************************************************************/
/* Grant usage on input table to the application, replace with your values.*/
GRANT USAGE ON DATABASE <INPUT_DATABASE> TO APPLICATION GLOBAL_PHONE;
GRANT USAGE ON SCHEMA <INPUT_DATABASE>.<INPUT_SCHEMA> TO APPLICATION GLOBAL_PHONE;
GRANT SELECT ON TABLE <INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE> TO APPLICATION GLOBAL_PHONE;

USE GLOBAL_PHONE.CORE;

/* Set input parameters, replace with your values */
SET LICENSE             = '<REPLACE_WITH_YOUR_LICENSE_KEY>';
SET OPTIONS             = '<OptionName_1:Parameter,OptionName_2:Parameter>';
SET INPUT_TABLE_NAME    = '<INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE_NAME>';
SET OUTPUT_TABLE_NAME   = '<OUTPUT_TABLE_NAME>';
SET OUTPUT_TABLE_FIELDS = '<Field_1,Field_2>';

/* Map your input columns with our default input fields, replace with your actual column names if they differ from our default values */
CREATE OR REPLACE TEMPORARY VIEW INPUT_RECORDS AS
SELECT
   RecId                            AS RECORDID
   ,COALESCE(PhoneNumber, '')       AS PHONENUMBER
   ,COALESCE(Country, '')           AS COUNTRY
   ,COALESCE(CountryOfOrigin, '')   AS COUNTRYOFORIGIN
FROM IDENTIFIER($INPUT_TABLE_NAME);

/* Call the verify procedure */
CALL VERIFY_MULTIPLE_PHONES(
    LICENSE                => $LICENSE
   ,OPTIONS                => $OPTIONS
   ,INPUT_TABLE_NAME       => TABLE(INPUT_RECORDS)
   ,OUTPUT_TABLE_NAME      => $OUTPUT_TABLE_NAME
   ,OUTPUT_TABLE_FIELDS    => $OUTPUT_TABLE_FIELDS
   -- Size limit for variables is 256. If your input string exceeds the limit, parse the string directly in the call
   -- e.g. OUTPUT_TABLE_FIELDS    => 'Field_1,Field_2'
);

/* Output table view */
SELECT TOP 100 *
FROM IDENTIFIER($OUTPUT_TABLE_NAME)
ORDER BY (RECORDID);
Input Parameters#

Input parameters when calling stored procedure VERIFY_MULTIPLE_PHONES.

Parameter

Data Type

Description

Example

LICENSE

VARCHAR

Required.
The License Key with Credits issued by Melissa.
Get it here.

REPLACE_WITH_YOUR_LICENSE_KEY

OPTIONS

VARCHAR

Required. Empty string is accepted.
[OptionName:Parameter], separate by comma(,)

See more information about endpoint options here.
If omitted, see Default Input Options.

TimeToWait:5

INPUT_TABLE_NAME

VARCHAR

Required.
Name of input table

DATABASE.SCHEMA.INPUT_TABLE

OUTPUT_TABLE_NAME

VARCHAR

Required.
The output table name.
A new table will be created in the same application database if it doesn’t exist.
If the table exists, its structure must remain unchanged.

YOUR_OUTPUT_TABLE_NAME

OUTPUT_TABLE_FIELDS

VARCHAR

Required. Case-sensitive. Empty string is accepted.
Fields in the output table; fields separated by comma(,) if not ‘All’.

Field name must match in one or all in the example list.
If omitted, see Default Output Fields.

RecordID,
Results,
PhoneNumber,
AdministrativeArea,
CountryAbbreviation,
CountryName,
Carrier,
CallerID,
DST,
InternationalPhoneNumber,
Language,
Latitude,
Locality,
Longitude,
PhoneInternationalPrefix,
PhoneCountryDialingCode,
PhoneNationPrefix,
PhoneNationalDestinationCode,
PhoneSubscriberNumber,
UTC,
TimeZoneCode,
TimeZoneName,
PostalCode,
DeliveryIndicator,
DeliveryPointCheckDigit,
DeliveryPointCode,
MelissaAddressKey,
MoveEffectiveDate,
MoveTypeCode,
MoveReturnCode,
PostalCode,
Response,
Timestamp

Output Examples#

Some common output examples are shown below.

Verify a table of phones with the default output fields

USE GLOBAL_PHONE.CORE;

/* Set input parameters, replace with your values */
SET LICENSE             = '<REPLACE_WITH_YOUR_LICENSE_KEY>';
SET OPTIONS             = '';
SET INPUT_TABLE_NAME    = '<INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE_NAME>';
SET OUTPUT_TABLE_NAME   = '<OUTPUT_TABLE_NAME>';
SET OUTPUT_TABLE_FIELDS = '';

/* Map your input columns with our default schema, replace with your column names */
CREATE OR REPLACE TEMPORARY VIEW INPUT_RECORDS AS
SELECT
   RecId                            AS RECORDID
   ,COALESCE(PhoneNumber, '')       AS PHONENUMBER
   ,COALESCE(Country, '')           AS COUNTRY
   ,COALESCE(CountryOfOrigin, '')   AS COUNTRYOFORIGIN
FROM IDENTIFIER($INPUT_TABLE_NAME);

/* Call the verify procedure */
CALL VERIFY_MULTIPLE_PHONES(
    LICENSE                => $LICENSE
   ,OPTIONS                => $OPTIONS
   ,INPUT_TABLE_NAME       => TABLE(INPUT_RECORDS)
   ,OUTPUT_TABLE_NAME      => $OUTPUT_TABLE_NAME
   ,OUTPUT_TABLE_FIELDS    => $OUTPUT_TABLE_FIELDS
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-Default-Output.png
  • Query output table.

SELECT TOP 100 *
FROM IDENTIFIER($OUTPUT_TABLE_NAME)
ORDER BY (RECORDID);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-Default-Output-Table-View.png

Verify a table of phones with selected output fields

  • Call stored procedure to verify multiple phones from an input table with selected output fields.

USE GLOBAL_PHONE.CORE;

/* Set input parameters, replace with your values */
SET LICENSE             = '<REPLACE_WITH_YOUR_LICENSE_KEY>';
SET OPTIONS             = '';
SET INPUT_TABLE_NAME    = '<INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE_NAME>';
SET OUTPUT_TABLE_NAME   = '<OUTPUT_TABLE_NAME>';
SET OUTPUT_TABLE_FIELDS = '<Field_1,Field_2>';

/* Map your input columns with our default schema, replace with your column names */
CREATE OR REPLACE TEMPORARY VIEW INPUT_RECORDS AS
SELECT
   RecId                            AS RECORDID
   ,COALESCE(PhoneNumber, '')       AS PHONENUMBER
   ,COALESCE(Country, '')           AS COUNTRY
   ,COALESCE(CountryOfOrigin, '')   AS COUNTRYOFORIGIN
FROM IDENTIFIER($INPUT_TABLE_NAME);

/* Call the verify procedure */
CALL VERIFY_MULTIPLE_PHONES(
    LICENSE                => $LICENSE
   ,OPTIONS                => $OPTIONS
   ,INPUT_TABLE_NAME       => TABLE(INPUT_RECORDS)
   ,OUTPUT_TABLE_NAME      => $OUTPUT_TABLE_NAME
   ,OUTPUT_TABLE_FIELDS    => $OUTPUT_TABLE_FIELDS
   -- Size limit for variables is 256. If your input string exceeds the limit, parse the string directly in the call
   -- e.g. OUTPUT_TABLE_FIELDS    => 'Field_1,Field_2'
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-Selected-Output.png
  • Query output table.

SELECT TOP 100 *
FROM IDENTIFIER($OUTPUT_TABLE_NAME)
ORDER BY (RECORDID);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-Selected-Output-Table-View.png

Verify a table of phones with ‘ALL’ output fields

  • Call stored procedure to verify multiple phones from an input table with ‘All’ output fields.

USE GLOBAL_PHONE.CORE;

/* Set input parameters, replace with your values */
SET LICENSE             = '<REPLACE_WITH_YOUR_LICENSE_KEY>';
SET OPTIONS             = '';
SET INPUT_TABLE_NAME    = '<INPUT_DATABASE>.<INPUT_SCHEMA>.<INPUT_TABLE_NAME>';
SET OUTPUT_TABLE_NAME   = '<OUTPUT_TABLE_NAME>';
SET OUTPUT_TABLE_FIELDS = 'All';

/* Map your input columns with our default schema, replace with your column names */
CREATE OR REPLACE TEMPORARY VIEW INPUT_RECORDS AS
SELECT
   RecId                            AS RECORDID
   ,COALESCE(PhoneNumber, '')       AS PHONENUMBER
   ,COALESCE(Country, '')           AS COUNTRY
   ,COALESCE(CountryOfOrigin, '')   AS COUNTRYOFORIGIN
FROM IDENTIFIER($INPUT_TABLE_NAME);

/* Call the verify procedure */
CALL VERIFY_MULTIPLE_PHONES(
    LICENSE                => $LICENSE
   ,OPTIONS                => $OPTIONS
   ,INPUT_TABLE_NAME       => TABLE(INPUT_RECORDS)
   ,OUTPUT_TABLE_NAME      => $OUTPUT_TABLE_NAME
   ,OUTPUT_TABLE_FIELDS    => $OUTPUT_TABLE_FIELDS
);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-All-Output.png
  • Query output table.

SELECT TOP 100 *
FROM IDENTIFIER($OUTPUT_TABLE_NAME)
ORDER BY (RECORDID);
../../_images/Snowflake-GlobalPhone-Stored-Procedures-Verify-Multiple-All-Output-Table-View.png

DROP_OUTPUT_TABLE#

After the creation, output table is only allowed for:

  • Select.

SELECT TOP 100 *
FROM <OUTPUT_TABLE_NAME>
ORDER BY (RECORDID);
  • Insert.

By calling the same stored procedure without changing the input structure, new records will be inserted to the same table.

  • Drop.

Use stored procedure DROP_OUTPUT_TABLE if you wish to remove the table from the application database. Only tables created by the procedure call can be dropped.

CALL GLOBAL_PHONE.CORE.DROP_OUTPUT_TABLE('<OUTPUT_TABLE_NAME>');

Default Input Options#

If input OPTIONS is empty, default input options will be:

Parameter

Value

OPTIONS

VerifyPhone:Express,
CallerID:FALSE,
DefaultCallingCode:<blank>,
EnableBatchSuggestion:FALSE,
TimeToWait:2

These are our recommended service options for general batch processing. See more information about endpoint options here.

Additional output columns available only with CallerID:TRUE

  • CallerID (US/CA only)

Default Output Fields#

If input OUTPUT_TABLE_FIELDS is empty, output table will have a default schema as below.

Column Name

Data Type

RECORDID

NUMBER

RESULTS

VARCHAR

PHONENUMBER

VARCHAR

COUNTRYABBREVIATION

VARCHAR

INTERNATIONALPHONENUMBER

VARCHAR

CARRIER

VARCHAR

PHONEINTERNATIONALPREFIX

VARCHAR

PHONECOUNTRYDIALINGCODE

VARCHAR

PHONENATIONPREFIX

VARCHAR

PHONENATIONALDESTINATIONCODE

VARCHAR

PHONESUBSCRIBERNUMBER

VARCHAR

Versions and Updates#

Check for current version#

  • Select Data Products > Apps, the current version of the app will be on display.

    ../../_images/Snowflake-GlobalPhone-Download-App-Step4.png
  • Or, run this query in Projects > Worksheets.

    SHOW APPLICATIONS;
    

Updates#

When Melissa releases a new version of the Native App, your installed application will get updated automatically.

However, you will need to reinstall the app’s functionality after the upgrade is complete, as described in Application Configuration.

Result Codes#

Interpreting Results#

Result codes yield more granular information about a given phone number. They are returned as a comma-delimited string of 4-character alpha-numeric codes, e.g. PS01,PS07,PS18 or PS07,PE04.

SE## and GE## Codes#

The SE## and GE## codes (Transmission Service Error and General Transmission Error) are used to signify more general errors, and are returned under the key TransmissionResults in the outermost level of our responses.

PE## and PS## Codes#

Global Phone web service returns back a string of PSXX result codes in the “Results” field of the response. These result codes provide users with information about the response from the service.

In almost every case, one of the values of the “Results” string will be one of the following:

Code

Description

Recommendation

PS20

Low Confidence - This number exists within a block of registered phone numbers that the service checks against.

Medium

PS22

High Confidence - This number was verified against current dialing equipment. This result code will only be returned if the VerifyPhone option in the initial request to the service is set to Premium. (ex: &opt=VerifyPhone:Premium).

Good

With these result codes users can easily build logic for what to do with good valid phone numbers and easily distinguish good phone numbers from bad phone numbers.

There are also PEXX codes that can be returned which indicate there was an error with a part of the requested phone number.

For the full list of result codes returned by Native App Global Phone: Snowflake, please visit here.