MeridianMERIDIAN

Phone Number (E.164)

International phone number in strict E.164 format: plus sign followed by country code and subscriber number, digits only, no formatting. Maximum 15 digits total.

Phone Number (E.164)

identity.person.phone_e164

International phone number in strict E.164 format: plus sign followed by country code and subscriber number, digits only, no formatting. Maximum 15 digits total.

Domain
identity
Category
person
Casts to
VARCHAR
Scope
Universal

Try it

CLI
$ finetype infer -i "+61412345678"
→ identity.person.phone_e164

DuckDB

Detect
SELECT finetype('+61412345678');
-- → 'identity.person.phone_e164'
Cast expression
CAST({col} AS VARCHAR)
Safe cast pipeline
-- Normalise and cast in one step
SELECT TRY_CAST(finetype_cast(my_column) AS VARCHAR) AS clean_value
FROM my_table
WHERE finetype(my_column) = 'identity.person.phone_e164';

Struct Expansion

Expression
country_code: REGEXP_EXTRACT({col}, '^\+(\d{1,3})')
subscriber: REGEXP_EXTRACT({col}, '^\+\d{1,3}(\d+)$')

JSON Schema

finetype schema identity.person.phone_e164
{
  "$id": "https://meridian.online/schemas/identity.person.phone_e164",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "International phone number in strict E.164 format: plus sign followed by country code and subscriber number, digits only, no formatting. Maximum 15 digits total.",
  "examples": [
    "+61412345678",
    "+14155552671",
    "+442071234567",
    "+33142685300",
    "+8613800138000"
  ],
  "maxLength": 16,
  "minLength": 8,
  "pattern": "^\\+[1-9]\\d{6,14}$",
  "title": "Phone Number (E.164)",
  "type": "string",
  "x-finetype-broad-type": "VARCHAR",
  "x-finetype-pii": true,
  "x-finetype-transform": "CAST({col} AS VARCHAR)"
}

Examples

+61412345678+14155552671+442071234567+33142685300+8613800138000

Aliases

e164international_phone

Type Registry