The Dell Client Integration Pack for SCCM/ConfigMgr, the tool most guides (including our own, until now) pointed you at for pulling Dell warranty data into System Center, has been discontinued. Dell pulled it from TechDirect some time back and it no longer works against current warranty endpoints. If you’ve still got a scheduled task quietly failing against it, this is why.
The replacement is Dell’s TechDirect API: a proper REST/OAuth2 service that returns warranty entitlement data for up to 100 service tags per call. This post covers how to get access to it in 2026, how the authentication actually works, and a PowerShell script you can run against your SCCM device collection to report warranty status across the fleet, no Client Integration Pack required.
Quick Facts
- The Dell Client Integration Pack for SCCM is discontinued. Use the TechDirect API (Warranty/Asset Entitlements) instead.
- API access needs a free TechDirect account plus a separate API key request. Approval usually takes a few business days, not instant.
- Authentication is OAuth2 client credentials: you exchange a Client ID and Secret for a bearer token valid for around an hour.
- The warranty endpoint accepts up to 100 service tags per call, so a fleet-wide report is batched, not one call per device.
- Dell explicitly asks you not to request more access tokens than you need. Reuse the token for the full batch run rather than fetching one per request.
Getting API access via TechDirect
You need two separate things: a TechDirect account, and API credentials on top of it. The account alone doesn’t give you API access.
- Register or sign in at techdirect.dell.com with your company details. This needs to be tied to a real Dell customer/company account, not a personal email.
- In TechDirect, go to the APIs section and submit a key request. You’ll be asked what you’re integrating (pick Warranty/Asset entitlement) and roughly how many calls you expect to make.
- Wait for approval. This is a manual review on Dell’s side, expect a few business days rather than same-day.
- Once approved, Dell emails you a Client ID and Client Secret. Treat the secret like a password: put it in a credential manager or SCCM’s own encrypted config, never in a plain-text script committed anywhere.
How authentication actually works
The API uses standard OAuth2 client credentials flow. You POST your Client ID and Secret (Base64-encoded, Basic auth header) to Dell’s token endpoint, and get back a bearer token you attach to subsequent requests.
| Endpoint | URL |
| OAuth token | https://apigtwb2c.us.dell.com/auth/oauth/v2/token |
| Asset entitlements (warranty) | https://apigtwb2c.us.dell.com/PROD/sbil/eapi/v5/asset-entitlements |
# Get a bearer token
$ClientId = $env:DELL_CLIENT_ID
$ClientSecret = $env:DELL_CLIENT_SECRET
$AuthBytes = [System.Text.Encoding]::ASCII.GetBytes("$ClientId`:$ClientSecret")
$AuthB64 = [Convert]::ToBase64String($AuthBytes)
$TokenResponse = Invoke-RestMethod -Method Post `
-Uri "https://apigtwb2c.us.dell.com/auth/oauth/v2/token" `
-Headers @{ Authorization = "Basic $AuthB64" } `
-ContentType "application/x-www-form-urlencoded" `
-Body "grant_type=client_credentials"
$Token = $TokenResponse.access_token
That token is good for roughly an hour. Get it once at the start of a run and reuse it for every batch, rather than re-authenticating per call.
Pulling service tags from SCCM and querying warranty in bulk
SCCM already has your Dell service tags sitting in hardware inventory, under SMS_G_System_SYSTEM_ENCLOSURE.SerialNumber. Pull those, batch them in groups of 100 (the API’s per-call limit), and query each batch.
# Pull Dell service tags from the SCCM database (adjust server/DB name)
$SqlQuery = @"
SELECT DISTINCT enc.SerialNumber00 AS ServiceTag, sys.Name0 AS DeviceName
FROM v_GS_SYSTEM_ENCLOSURE enc
JOIN v_R_System sys ON enc.ResourceID = sys.ResourceID
JOIN v_GS_COMPUTER_SYSTEM cs ON cs.ResourceID = sys.ResourceID
WHERE cs.Manufacturer0 LIKE 'Dell%'
"@
$Devices = Invoke-Sqlcmd -ServerInstance "SCCMSQL01\SCCM" -Database "CM_ABC" -Query $SqlQuery
$Tags = $Devices.ServiceTag | Where-Object { $_ } | Select-Object -Unique
# Batch into groups of 100 and query warranty for each batch
$Headers = @{ Authorization = "Bearer $Token" }
$Results = foreach ($Batch in ($Tags | ForEach-Object -Begin { $i = 0 } -Process { $i++; $_ } | Group-Object -Property { [math]::Floor(($i-1) / 100) })) {
$TagList = $Batch.Group -join ","
Invoke-RestMethod -Method Get -Headers $Headers `
-Uri "https://apigtwb2c.us.dell.com/PROD/sbil/eapi/v5/asset-entitlements?servicetags=$TagList"
}
$Results | Select-Object serviceTag, shipDate, @{n='EntitlementEnd';e={($_.entitlements | Sort-Object endDate -Descending | Select-Object -First 1).endDate}} |
Export-Csv -Path "C:\Reports\DellWarrantyStatus.csv" -NoTypeInformation
Each entry in the response can carry multiple entitlements (base warranty plus ProSupport, accidental damage, and so on), so grab the latest endDate across them if you want “true” cover expiry rather than just the base warranty.
Turning it into an SCCM report
Rather than reinventing the Client Integration Pack’s old database table, the simplest route is to schedule the script (weekly is plenty, warranty dates don’t move often), write results to a SQL table or CSV, and either import that into SSRS or just push a summary to Teams/email for devices expiring within 60 days.
# Flag anything expiring soon
$Results | Where-Object { [datetime]$_.EntitlementEnd -lt (Get-Date).AddDays(60) } |
Select-Object serviceTag, EntitlementEnd
If you’d rather not run SQL queries against production SCCM at all, you can export the same service tag list from an SCCM collection (right-click, Export) and feed that CSV into the script instead of the Invoke-Sqlcmd block.
Frequently asked questions
Is the TechDirect API free to use?
Yes, there’s no charge for API access itself, but you do need an approved TechDirect account and API key request, and Dell reserves the right to throttle or revoke access if it’s abused.
Does this still work with the old Dell Command | Warranty tooling?
No. Both the Client Integration Pack and the standalone Dell Command | Warranty utility relied on an older warranty lookup mechanism that Dell has since retired. The TechDirect API with a registered key is the only supported path now.
Can I look up a single service tag without an API key?
For one-off checks, Dell’s public support site still lets you search a service tag manually at dell.com/support. The API is worth setting up once you’re checking more than a handful of devices regularly.
What happens if my token expires mid-run?
You’ll get a 401 back from the entitlements endpoint. For a large fleet where a full run might take longer than an hour, wrap the batch loop with a check that re-authenticates if a call fails on a 401, rather than fetching a fresh token for every batch.
Discover more from TechyGeeksHome
Subscribe to get the latest posts sent to your email.