Sophos
Export software inventory from Sophos Endpoint (Sophos Central) and upload it with the SIM template.
Sophos Endpoint collects device and application information through its endpoint agent and reports it to Sophos Central. The relevant data sources for SIM import are:
- Endpoints (Computers / Servers), Device name, operating system, and status.
- Installed Applications, Software name, version, and publisher detected on endpoints.
- Sophos Central REST API, Programmatic access to endpoint and application inventory data.
Note: Visibility of installed applications requires Endpoint Inventory to be enabled in Sophos Central.
Prerequisites
Section titled “Prerequisites”For console (UI) method
Section titled “For console (UI) method”- Access to Sophos Central Admin.
- Role with permission to view Endpoints and Inventory data.
- Endpoint agents actively reporting and in a healthy state.
- Permission to export inventory data (CSV).
For API method
Section titled “For API method”- Sophos Central API credentials (Client ID and Client Secret).
- Access to the Sophos Central API endpoint (
https://api.central.sophos.com). - A PowerShell, curl, or Postman environment to execute REST API calls.
- (Recommended) Understanding of pagination and rate limits for large estates.
Export methods
Section titled “Export methods”Option 1: Sophos Central console export (UI)
Section titled “Option 1: Sophos Central console export (UI)”This method is suitable for manual or ad-hoc exports.
- Log in to Sophos Central Admin.
- Navigate to Devices → Computers.
- Select one or more devices, then open View details → Software / Applications.
- Use the Export option (where available) or switch to Reports → Inventory.
- Ensure the following fields are included:
- Device Name
- Application Name
- Version
- Publisher
- Export the report as CSV.
- Save the file as
Sophos_SIM_Export.csv.
Tip: For recurring exports, create a custom Inventory Report under Reports.
Option 2: Sophos Central REST API (recommended for automation)
Section titled “Option 2: Sophos Central REST API (recommended for automation)”For automated or large-scale environments, use the Sophos Central APIs.
Step 1: Authenticate to Sophos Central
Section titled “Step 1: Authenticate to Sophos Central”# Sophos Endpoint SIM Template Export Script# Requires Sophos Central API credentials
$ClientId = "YOUR_CLIENT_ID"$ClientSecret = "YOUR_CLIENT_SECRET"$TenantId = "YOUR_TENANT_ID"$ExportPath = "C:\Exports\Sophos_SIM_Export.csv"
# Get OAuth token$TokenResponse = Invoke-RestMethod -Method Post ` -Uri "https://id.sophos.com/api/v2/oauth2/token" ` -Headers @{ "Content-Type" = "application/x-www-form-urlencoded" } ` -Body "grant_type=client_credentials&client_id=$ClientId&client_secret=$ClientSecret"
$AccessToken = $TokenResponse.access_tokenStep 2: Retrieve endpoint and application data
Section titled “Step 2: Retrieve endpoint and application data”$Headers = @{ "Authorization" = "Bearer $AccessToken" "X-Tenant-ID" = $TenantId "Accept" = "application/json"}
# Get endpoints$Endpoints = Invoke-RestMethod -Uri "https://api.central.sophos.com/endpoint/v1/endpoints?pageSize=100" ` -Headers $Headers -Method Get
$ExportData = @()
foreach ($Endpoint in $Endpoints.items) { # Get installed applications per endpoint $Apps = Invoke-RestMethod -Uri "https://api.central.sophos.com/endpoint/v1/endpoints/$($Endpoint.id)/applications" ` -Headers $Headers -Method Get
foreach ($App in $Apps.items) { $ExportData += [PSCustomObject]@{ "Device Name" = $Endpoint.hostname "Software Name" = $App.name "Software Version" = $App.version "Software Publisher" = $App.publisher } }}
# Export to CSV$ExportData | Export-Csv -Path $ExportPath -NoTypeInformation -Encoding UTF8Write-Host "Export complete: $ExportPath"For large environments, loop through paginated results using the
pageFromKeyparameter returned by the API.
Preparing for SIM import
Section titled “Preparing for SIM import”The CSV header row must be exactly Device Name,Software Name,Software Version,Software Publisher.
- Open the Licenseware SIM Template.
- Go to the Software Inventory tab.
- Paste the CSV data into the template
Remove blank or extraneous rows before saving.
Then upload it on the SIM - Template data source. See SIM template.
Troubleshooting
Section titled “Troubleshooting”| Issue | Cause | Resolution |
|---|---|---|
| No application data returned | Inventory not enabled or endpoints not reporting | Verify endpoint health and inventory configuration in Sophos Central. |
| Missing publisher information | Application metadata incomplete | Leave blank or enrich after import if required. |
| 401 / 403 API errors | Invalid credentials or tenant ID | Verify Client ID, Secret, and Tenant ID values. |
| Partial data | API pagination not handled | Implement pagination using pageFromKey. |
| Encoding issues | CSV not saved as UTF-8 | Re-save file as UTF-8 before SIM import. |
Example output
Section titled “Example output”Device Name,Software Name,Software Version,Software PublisherLAPTOP-001,Google Chrome,129.0.6668.90,Google LLCSERVER-02,Microsoft SQL Server 2022,16.0.432,Microsoft CorporationLAPTOP-004,Slack,4.39.95,Slack TechnologiesWS-015,Adobe Acrobat DC,24.002.20933,Adobe Inc.