Docs

API + Batch reference, operational notes, and examples.

POST /v1/batch/parse

Upload a CSV via multipart/form-data. Response body is a CSV with extra columns appended. The response may also include batch counters in headers.

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 \
  -F "file=@sample.csv" \
  -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

Batch stats headers

x-batch-rows-total
x-batch-rows-ok
x-batch-rows-failed

Output column names are defined by the response header row of the returned CSV. The service preserves your input columns and appends derived fields (E.164, validity, optional masking/hash, and per-row error info when needed).

CSV gotchas

  • phone_column: if has_header=false, it must be a 1-based index (e.g. 3).
  • delimiter=auto is recommended unless you know the source format.
  • For large files, consider chunking client-side (the UI currently targets small-ish batches).