LatticeOne
Normalize · data migration

Years of messy data,one clean schema.

Drop an export. See every column matched, every value fixed, and proof that no row went missing. Rather keep your files on your own computer?

Processed on our server without AI. Usage metadata is logged. Data handling and limits.

Offline edition

Run it on your own computer.

Same engine, same proof, nothing uploaded. Install one file, point it at a hotfolder, and drop exports in. Your files never leave your computer. Activation and renewal check your license key online.

  • Subscription grace defaults to 7 days; managed licenses default to 14. Run lattice-normalize status for your license’s actual offline deadline.
  • No AI in the offline edition: values come only from fixed rules.
  • Approved mappings replay exactly on every later drop.
  1. 1

    Install

    Open Terminal and paste:

    curl -fsSL https://teamlattice.ai/normalize/install.sh | sh
  2. 2

    Make the hotfolder and activate

    Activation and periodic renewal send your license key, not your files. Normal network request metadata reaches our server.

    lattice-normalize setup && lattice-normalize activate lic_…
  3. 3

    Drop files in Inbox

    Leave it watching, then drop exports in ~/Lattice Normalize/Inbox. Clean files, the audit and anything to review appear in Out and Review.

    lattice-normalize watch

Need a license? Start a Normalize project with Lattice. Setup and activation guide. Installers use checksum verification; macOS binaries are ad-hoc signed, not Apple notarized.

macOS 12 or later, Apple Silicon or Intel. One file, no other software needed. Checksums · Read the installer

Whole data drop

A folder of everything? Drop it all.

Like files are grouped, ranked least used first and normalized one set at a time. Approve each mapping; what you approve teaches the next set.

Built for migrations that cannot be wrong

Nothing lost

Every source row lands in exactly one place: clean, needs a human, or set aside with a reason. Rows in must equal rows out or the run fails.

Nothing invented

Values come only from fixed, logged rules. AI may suggest which column is which, but it never writes a value. Extracted text must quote the source word for word.

Same answer every time

The mapping is a file you keep. Identical input files, the same reviewed mapping and the same engine version produce the same output hash.

The same engine, as an API

Your Lattice license key is the API key. Profile files, propose a mapping, run it, and pull PDFs and emails into records. Up to 100,000 rows per run, CSV, JSON or NDJSON out, with the full reconciliation report every time.

API documentation, limits and examples

  • GET /api/v1/normalize/schemas
  • POST /api/v1/normalize/profile
  • POST /api/v1/normalize/propose
  • POST /api/v1/normalize/run
  • POST /api/v1/normalize/pipeline
  • POST /api/v1/normalize/extract
curl https://teamlattice.ai/api/v1/normalize/run \
  -H "Authorization: Bearer lic_…" \
  -F file=@customers-2019.xlsx \
  -F target=customer \
  -F "mapping=<mapping.json" \
  -F format=csv