Overview
The Assets page lets admins manage the Forager asset roster in bulk. Use it to:- Import from CMDB — upload a CSV exported from ServiceNow or another CMDB to seed or update the asset list. No manual entry required.
- Export asset roster — download the full roster as CSV, including both the CMDB-recorded location and Forager’s confirmed location side by side.
Importing from CMDB
Prepare your CSV
Download the import template from the Assets page (“Download template” link) and use it as a reference. The template includes three example rows with correct column names and formatting. Required column:
Optional columns:
Column headers are matched case-insensitively. Extra columns in your export are ignored.
PMI columns
next_pmi_date and pmi_interval_days enable the PMI Compliance report. Once set, assets appear in the PMI Compliance tab sorted by due date, and overdue devices are flagged immediately.
How to populate PMI data:
- Export your current asset roster (see below) — it now includes
next_pmi_dateandpmi_interval_dayscolumns - Fill in the PMI dates and intervals from your CMDB or biomedical equipment management system
- Re-import the file — existing
next_pmi_dateandpmi_interval_daysvalues are updated; all other confirmed location data is preserved
YYYY-MM-DD (e.g. 2026-09-15). Rows with malformed dates are flagged with a row-level warning; the rest of the file continues to import normally.
If pmi_interval_days is blank: Forager stores the next_pmi_date without a recurrence interval. The asset will appear in the PMI Compliance report but will not automatically advance to the next due date when marked complete.
The import template (downloaded from the Assets page) includes example rows showing both PMI columns filled in for a medical device.
Limits: Maximum 10,000 rows per file. Files over this limit are rejected before any rows are processed.
Upload the file
- In the dashboard, go to Assets
- Drag your CSV onto the drop zone, or click the zone to browse for a file
- Forager processes the file server-side — a spinner indicates upload in progress
- When complete, a summary appears: N imported · N updated · N skipped
What “imported” vs “updated” means
- Imported — new assets added to the roster (no prior record with that asset tag)
- Updated — existing assets whose name, description, serial number, CMDB ID, or CMDB location were refreshed
- Skipped — rows with a blank
asset_tagafter trimming whitespace (not counted as errors)
asset_tag — existing records are updated, not duplicated.
What import never touches
Importing from CMDB only writes CMDB-sourced fields. Forager’s confirmed location data is never affected:last_seen_location— the location a tech confirmed when scanning the asset — is never overwritten by importlast_seen_at— the timestamp of the most recent confirmation — is never overwritten by import
Exporting the asset roster
Click Download CSV to download the full asset roster. The file is namedforager-assets-YYYY-MM-DD.csv with today’s date.
Export columns
Understanding the two location columns
The export includes bothcmdb_location and last_seen_location so you can compare the CMDB-recorded location against Forager’s confirmed location:
cmdb_locationis what your CMDB says about where the device should be. It is set at import time and never modified by Forager’s field workflows.last_seen_locationis where a Forager tech actually confirmed the device during normal field work. It updates every time a tech successfully attests the device’s location.
Error reference
If individual rows have errors (for example, a database constraint violation), they appear in an expandable list below the summary banner. Other rows in the file are still processed.