Skip to main content

Ingestion

Bulk-load data into the platform from CSV files — create assets, systems, parts, contacts, quotes, dealers, and more in a single upload instead of entering records one by one.


📐 How It Works — The 5-Step Wizard

Every ingestion follows the same five-step wizard. Completed steps show a ✅ blue checkmark. The current step is highlighted in blue.

1 — Ingestion Type  →  2 — Select File  →  3 — Map Columns  →  4 — Validate Data  →  5 — Submit

📋 Supported Ingestion Types

The Ingestion Type dropdown is organized into two groups: Create (net-new records) and Update (modify existing records).

Create

Ingestion TypeWhat It Creates
Create AssetsEquipment records with serial number, make, model, address, and metadata
Create SystemsSystem records to group assets
Create Asset PartsParts associated with assets
Create Asset Custom PropertiesCustom property fields for assets
Create Asset ModelsAsset model definitions
Create Asset SensorSensor definitions linked to assets
Create Asset ContractsContracts associated with assets
Create Asset ManualsManuals linked to assets
Add Asset Timeline EventsLifecycle events on the asset timeline
Create DealersDealer records for the dealer locator
Create ProductsProducts available in the ecommerce store
Insert Sensors Timeseries DataHistorical sensor readings
Insert Maintenance Historical DataHistorical maintenance records
Create Asset QR CodesQR code entries for assets
Create Assets HierarchyParent-child relationships between assets
Create OrganizationsOrganization records
Create ContactsContact records
Create QuotesQuote records
Create Quote ItemsIndividual line items within quotes

Update

Ingestion TypeWhat It Updates
Update Asset ModelsModify existing asset model records
Update PartsModify existing parts records
Update AssetsModify existing asset records
Update Asset ImagesReplace or add images on existing assets
Map Assets with SystemAssociate existing assets to systems
Update SystemsModify existing system records
Update OrganizationsModify existing organization records
Update Product PricesChange prices on existing products
Update Product ImagesReplace or add images on existing products
Update Asset Models ImageReplace or add images on existing asset models
Update QuotesModify existing quote records
Update Quote ItemsModify line items on existing quotes

⚠️ Non-obvious: When Create Assets is selected, the page shows a recommended sequence: Create Organization → Create System → Create Asset Model → Create Asset → Create Parts. This is the dependency order — assets need an asset model; parts need an asset. If upstream records don't exist yet, create them first via their own ingestion type before running Create Assets.


🔄 Step-by-Step Guide

Step 1 — Ingestion Type

  1. Open the Ingestion Type dropdown and select either Create or Update to expand that group
  2. Select the specific ingestion type you need
  3. A description of the selected type appears below the dropdown — read it to confirm the right type is selected
  4. Click ⬇ DOWNLOAD TEMPLATE to get the CSV template for this ingestion type
  5. Fill in the template with your data, keeping the column headers exactly as they are
  6. Click → NEXT

⚠️ Non-obvious: Always use the downloaded template for the specific ingestion type you selected. Column names must match exactly — the system maps your CSV columns to destination fields in Step 3, and mismatched headers will show as unmapped.


Step 2 — Select File

Upload the completed CSV file. The system accepts the file and passes it to the column mapping step.


Step 3 — Map Columns

The Map Columns step shows your CSV column names on the left (Imported Column) and the required destination fields on the right (Destination Column). Columns that match the template exactly are auto-mapped with a → arrow.

Fields marked with * are required. Review all mappings before proceeding.

Click → NEXT to proceed to validation.

⚠️ Non-obvious: If you used the downloaded template without renaming columns, all mappings should be pre-filled automatically. If any destination column shows blank or mismatched, use the dropdown on the right side to manually assign the correct destination field.


Step 4 — Validate Data

The Validate Data step shows a preview of all records parsed from your CSV, with tabs for All, Valid, and Invalid records.

TabDescription
AllAll records from the CSV
ValidRecords that passed validation — ready to upload
InvalidRecords with validation errors — must be corrected before uploading

Toolbar actions on this step:

ControlFunction
🔍 SearchSearch records within the preview
🗑️ DeleteRemove selected rows before uploading
➕ AddAdd a new row inline
⬇️ DownloadDownload the current data as CSV
Filter by errorFilter the list to show only rows with specific error types

You can edit cell values inline to fix validation errors directly in the browser without re-uploading the file.

When all required records are Valid, click ☁ UPLOAD to submit.

⚠️ Non-obvious: You do not need all records to be valid to upload — you can delete invalid rows and upload only the valid ones. Fix the deleted rows separately and run a second ingestion for the remaining records.


Step 5 — Submit (Processing & Results)

After uploading, the page shows a processing indicator while the file is handled. The system updates automatically — you do not need to refresh the page.

On success: A green ✅ checkmark appears with a success count.

On failure or partial failure: A summary appears showing:

FieldDescription
Success countNumber of records created or updated successfully
Failed countNumber of records that failed
Total RecordsTotal records in the submission

Below the summary, a per-record error table shows:

ColumnDescription
Row NumberRow number from the submission
Reference FieldThe record identifier (e.g., asset name)
Error MessageWhy the record failed (e.g., "Serial number already exists")

Buttons on the result screen:

ButtonFunction
⬇ DOWNLOAD LOGSDownload the full processing log file for this request
☁ RE-UPLOAD FILEGo back and upload a corrected version of the file

⚠️ Non-obvious: A partial success is possible — some records may succeed while others fail. The Success count and Failed count show the split. Only fix and re-upload the failed records — the error table tells you exactly which ones and why.

⚠️ Non-obvious: Request history and logs are also accessible from Settings → Requests, so you can review past ingestion results without re-running the wizard.


🔄 Workflows

Workflow 1 — Bulk Create Assets for a New Customer

  1. Open Settings → Ingestion from the top navigation
  2. Select Create → Create Organizations — download the template, fill it, and complete the wizard. Wait for success confirmation.
  3. Repeat for Create Systems (if needed)
  4. Repeat for Create Asset Models (if needed)
  5. Select Create → Create Assets — download the template, fill it with asset data including the organization and model references
  6. Upload, map columns, validate, and submit
  7. Verify the new assets appear in the platform

Result: All assets are created in bulk in the correct dependency order — organizations and models exist before assets reference them.


Workflow 2 — Fix and Re-Upload a Failed Ingestion

  1. On the Step 5 result screen, review the error table
  2. Note the Reference Field and Error Message for each failed row
  3. Open your original CSV file
  4. Correct the rows identified in the error table (e.g., remove duplicate identifiers, fix missing required fields)
  5. Save the corrected CSV
  6. Click RE-UPLOAD FILE to return to Step 2
  7. Upload the corrected file and proceed through the wizard again

Result: Only the previously failed records are re-submitted. Successfully ingested records from the first run are not duplicated.


Workflow 3 — Update Existing Product Prices in Bulk

  1. Open Settings → Ingestion from the top navigation
  2. Select Update → Update Product Prices
  3. Download the template — it includes the fields needed to identify products and set new prices
  4. Fill in the product identifiers and new prices
  5. Upload, map columns, validate, and submit
  6. Confirm updated prices in the Ecommerce app

Result: All product prices are updated in a single operation without editing each product individually.


✅ Best Practices

  • Always start with the downloaded template. Do not create your own CSV headers or reuse templates from a different ingestion type. Download fresh each time to avoid mapping errors.
  • Follow the dependency order for new account setup. Run ingestion types in this sequence: Organizations → Systems → Asset Models → Assets → Parts. Creating assets before their model exists will cause failures.
  • Fix errors in the original file, not just the inline editor. The inline editor in Step 4 is useful for fixing a few cells quickly, but for large batches of errors it is faster to correct the source CSV and re-upload. Keep your source files so you have a correctable copy.
  • Use partial uploads strategically. If a CSV has a mix of valid and invalid rows, delete the invalid rows in Step 4 and upload the valid ones immediately. Fix and re-upload the failed rows separately.
  • Check Settings → Requests for ingestion history. Every ingestion request is logged with its status and a downloadable log file. Use this to audit what was loaded, when, and by whom — without needing to re-run the wizard.

💡 Tips & Shortcuts

TipHow
Access ingestion⚙️ Settings icon (top right) → Ingestion
Review past ingestion jobs⚙️ Settings → Requests
Download logs for a past runSettings → Requests → find the request → download log
Fix a few bad rows without re-uploadingEdit cells inline in Step 4 — Validate Data
Find which records failedStep 5 error table shows Reference Field + Error Message per row
Re-upload after fixing errorsClick RE-UPLOAD FILE on the Step 5 result screen