Sophos Data Extraction Guide (for SIM Template)
This guide provides step-by-step instructions for extracting software inventory data from Sophos Endpoint (Sophos Central) for use with the Licenseware Software Inventory Management (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
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
-
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.
Recommended Query or Method
Two supported extraction methods are available.
Option 1: Sophos Central Console Export (UI)
This method is suitable for manual or ad-hoc exports.
Steps
-
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)
For automated or large-scale environments, use the Sophos Central APIs.
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_token
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 UTF8
Write-Host "Export complete: $ExportPath"
For large environments, loop through paginated results using the
pageFromKeyparameter returned by the API.
Exporting to CSV
-
Console Method:
Export directly from Reports → Inventory or the device inventory view as CSV. -
API Method:
The PowerShell script automatically generatesSophos_SIM_Export.csv.
Ensure the CSV includes the following headers:
Device Name,Software Name,Software Version,Software PublisherPreparing for SIM Import
-
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.
👉 Learn more here
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
Device Name,Software Name,Software Version,Software Publisher
LAPTOP-001,Google Chrome,129.0.6668.90,Google LLC
SERVER-02,Microsoft SQL Server 2022,16.0.432,Microsoft Corporation
LAPTOP-004,Slack,4.39.95,Slack Technologies
WS-015,Adobe Acrobat DC,24.002.20933,Adobe Inc.