Skip to content
Sign in

Device42

File Upload

Extract device name, software name, software version and software vendor from Device42 with DOQL (Device42 Object Query Language), then upload them with the SIM template.

The exported dataset will align directly with the SIM template columns, allowing you to copy and paste the CSV output into the corresponding SIM tab without modification.

SIM ColumnDevice42 FieldDescription
Device Nameview_device_v1.nameHostname or asset identifier
Software Nameview_software_v1.nameDiscovered application name
Software Versionview_softwaredetails_v2.version or view_softwaredetails_v1.details->>'version'Version or build number
Software Vendorview_vendor_v1.namePublisher or manufacturer

The following Device42 DOQL views contain the required data:

Data ViewPurposeKey Columns
view_device_v1Device detailsdevice_pk, name, in_service
view_software_v1Software metadatasoftware_pk, name, vendor_fk
view_vendor_v1Vendor/publisher detailsvendor_pk, name
view_softwareinuse_v1Link between devices and installed softwaresoftwareinuse_pk, device_fk, software_fk
view_softwaredetails_v1 / v2Software version detailssoftwareinuse_fk, version or JSON details
  • Device42 credentials with DOQL access
  • Access to either the Device42 Web UI or API
  • Permission to export data in CSV format

Use the following DOQL query to extract a clean, deduplicated dataset suitable for the SIM template:

WITH software_entries AS (
SELECT
d.device_pk,
d.name AS device_name,
s.software_pk,
s.name AS software_name,
COALESCE(sd2.version, sd1.details->>'version') AS software_version,
v.name AS software_vendor,
GREATEST(
COALESCE(sd2.last_changed, 'epoch'::timestamptz),
COALESCE(sd1.last_changed, 'epoch'::timestamptz)
) AS last_changed
FROM view_softwareinuse_v1 siu
JOIN view_device_v1 d ON d.device_pk = siu.device_fk
JOIN view_software_v1 s ON s.software_pk = siu.software_fk
LEFT JOIN view_vendor_v1 v ON v.vendor_pk = s.vendor_fk
LEFT JOIN view_softwaredetails_v2 sd2 ON sd2.softwareinuse_fk = siu.softwareinuse_pk
LEFT JOIN view_softwaredetails_v1 sd1 ON sd1.softwareinuse_fk = siu.softwareinuse_pk
)
SELECT DISTINCT
device_name,
software_name,
software_version,
software_vendor
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY device_pk, software_pk ORDER BY last_changed DESC) AS rn
FROM software_entries
) t
WHERE rn = 1
ORDER BY device_name, software_name;
  • Cross-version compatibility: Works across v1 and v2 schema versions.
  • Deduplication: Keeps only the most recent record per device_pk + software_pk pair.
  • No cross-device merging: Software is reported per device independently.
  • Compatible output: Columns match the SIM template field order exactly.
  1. Navigate to Reports → DOQL.
  2. Paste the query above.
  3. Click Run Query.
  4. Select Export → CSV.
Terminal window
curl -k -s -X POST \
-d 'output_type=csv' \
--data-urlencode "query=SELECT ... <paste full query here> ..." \
-u 'user:password' \
'https://<your-device42-instance>/services/data/v1.0/query/'
  1. Open the exported CSV.
  2. Confirm headers match: device_name, software_name, software_version, software_vendor.
  3. Copy all data (excluding header row) into the Software Inventory tab of the SIM Template.
  4. Save the updated SIM file before upload to Licenseware.

Then upload it on the SIM - Template data source. See SIM template.

IssueLikely CauseResolution
No dataMissing discovery mappingsEnsure discovery jobs ran successfully.
Null versionsMissing version in JSONVerify details JSON includes version key.
DuplicatesMultiple scans reporting same softwareKeep rn = 1 condition to remove duplicates.
device_namesoftware_namesoftware_versionsoftware_vendor
APP-SVR-01Microsoft SQL Server2019Microsoft
APP-SVR-01.NET Framework4.8Microsoft
WEB-02Apache HTTP Server2.4.54Apache