Docs

API + Batch reference, operational notes, and examples.

Authentication

If enabled for your project, send an API key via x-api-key. The web UI stores the key locally in your browser (sessionStorage).

curl -s \
  -H "x-api-key: e164_..." \
  https://e164.it/v1/parse
POST /v1/parse

Parse a single phone number. The service returns a JSON envelope with ok and a result object.

Request
{
  "input": "0039 333 123 4567",
  "default_region": "IT",
  "options": {
    "format": ["e164","international","national","rfc3966"],
    "classify": true,
    "mask": { "mode": "none" },
    "hash": { "enabled": false }
  }
}
Example
curl -s \
  -H "content-type: application/json" \
  -H "x-api-key: e164_..." \
  -d '{"input":"0039 333 123 4567","default_region":"IT","options":{"format":["e164","rfc3966"],"classify":true,"mask":{"mode":"last4"},"hash":{"enabled":true}}}' \
  https://e164.it/v1/parse
POST /v1/batch/parse

Upload a CSV via multipart/form-data. The response body is a CSV with extra columns added.

Form fields
file            (CSV file)
phone_column    (header name or 1-based index)
default_region  (e.g. IT, US, GB; or empty for auto)
has_header      ("true" or "false")
delimiter       ("auto", ",", ";", or "" for tab)
mask_mode       ("none", "last2", "last4")
hash_enabled    ("true" or "false")
Example
curl -s \
  -H "x-api-key: e164_..." \
  -F "[email protected]" \
  -F "phone_column=phone" \
  -F "default_region=IT" \
  -F "has_header=true" \
  -F "delimiter=auto" \
  -F "mask_mode=last4" \
  -F "hash_enabled=true" \
  https://e164.it/v1/batch/parse \
  -o result.csv
Rate limiting headers

When rate limiting is enabled, responses may include: x-ratelimit-limit, x-ratelimit-remaining, x-ratelimit-reset.