Importing product data
Product data arrives the way it already exists: in spreadsheets and exports. Every row you import becomes a draft passport, checked before anything is signed.
Start from a template
Section titled “Start from a template”Each product group has a CSV template: the header row the import expects.
odal template battery -o battery.csvTemplates and bulk import cover nine of the eleven product groups today; phones and tablets, and detergents, are still to come. The JSON Schema behind each group is available too, with odal schema show <group>.
Import, with a trial run first
Section titled “Import, with a trial run first”odal passport import battery.csvThe CLI imports CSV, TSV or JSON files; the import service also accepts Excel workbooks. Send an import with mode=dry_run to the import endpoint to validate every row without creating anything, and get back the results the real run would produce.
The node reports problems row by row instead of rejecting the whole file, so one bad row does not hold up the rest.
Check before you publish
Section titled “Check before you publish”odal passport validate # check the draftsodal passport validate p.json # dry-run one passport body from a fileodal passport lint <id> # re-run the plausibility checksValidation runs the product group’s schema and its sandboxed rules. Plausibility checks flag values that look unlikely; they are advisory and never block publishing.
What the node keeps
Section titled “What the node keeps”An import creates the draft passports and a job record with each row’s validation findings; the node deletes the job record after 30 days. See What Odal can and cannot see.
Read next
Section titled “Read next”- A passport’s lifecycle: publishing and everything after it.
- Product groups & plugins: what each group checks.
Information on this site is not legal advice. Legal noticePrivacy policy