Importing addresses from files
Load a file of addresses into a country's registry from the console: map its columns, check every row, then publish.
Base URLhttps://makani-k8s.lamah.com
How it works
Imports run from Imports in the console and need the import permission. There is no API-key endpoint for them: the file goes from your browser straight to storage, is processed in the background and is published only when you say so.
Prepare the file
Download the country's template from the Imports screen: it has the country's address fields, an optional public_code and source_record_id, and latitude and longitude, with two example rows.
- Formats: CSV or TSV, NDJSON and GeoJSON.
- Encodings: UTF-8, with or without a byte order mark, and Windows-1256.
- Size: up to 2 GiB per file. A large upload resumes where it stopped.
Map the columns
The screen reads the start of the file, detects its format and suggests which column feeds each address field, matching Arabic and English column names. A field can also take a fixed value or a template built from several columns. Coordinates come from two columns, a WKT point column or the GeoJSON geometry.
The preview shows the first 20 rows as they will be stored, with their errors. A mapping can be saved as a preset for the next file from the same source.
Check the rows
Starting the import checks every row against the country's rules and stages the valid ones. You see progress as it runs, and a failed run resumes from its last saved point. A dry run checks the whole file without staging anything.
Rejected rows are written to a CSV report with the row number, the original columns and the reason. Rows that repeat an earlier row or an address already in the registry are counted as duplicates.
Publish
Publishing writes the staged rows to the registry and skips addresses that already exist. From then on they are found by search, lookup and reverse lookup. An import that published nothing can be deleted with its file.