Search
Search for desktop apps by SDK usage, runtime, platform, and more. Find apps missing a specific SDK (greenfield) or using a competitor.
GET /v1/search — Find desktop apps by what technologies they use (or don't use). The core endpoint for sales prospecting, competitive intelligence, and TAM sizing.
API at a glance
- Base URL:
https://desktopinsights.com/api/v1/search - Method:
GET - Auth:
Authorization: Bearer <API_KEY> - Required: At least one filter param (see below)
- Key filters:
errorTrackingSdk,analyticsSdk,featureFlagSdk,runtime,platform,developer - Greenfield: Pass
nullas a filter value to find apps without an SDK (e.g.,errorTrackingSdk=null) - Pagination:
limit(default 50, max 500) andoffset - Response: JSON with
data[]array of app objects withsdkSummary, plusmeta.totalCount
Parameters
All parameters are optional, but at least one filter is required. Multiple filters are AND-ed together.
SDK filters
Pass any SDK category to filter by. Use a specific value like Sentry to find apps using that SDK, or null to find apps without any SDK in that category (greenfield prospecting).
| Parameter | Example values |
|---|---|
errorTrackingSdk | Sentry, Bugsnag, Crashpad, Datadog, null |
analyticsSdk | Amplitude, PostHog, Mixpanel, Segment, null |
featureFlagSdk | LaunchDarkly, Statsig, Unleash, null |
databaseSdk | SQLite, Realm, electron-store, null |
uiFramework | React, Vue, Angular, Qt, null |
stateManagement | Redux, MobX, Zustand, null |
paymentsSdk | Stripe, null |
authSdk | Auth0, null |
observabilitySdk | OpenTelemetry, Winston, null |
realtimeSdk | Socket.IO, WebRTC, null |
autoUpdateSdk | electron-updater, Sparkle, null |
Other filters
| Parameter | Type | Description |
|---|---|---|
runtime | string | electron, native, qt, flutter, dotnet, jvm, etc. |
platform | string | macos or windows |
developer | string | Partial match on developer/company name |
Pagination
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | integer | 50 | Max results per page (max 500) |
offset | integer | 0 | Skip this many results |
Use cases
Greenfield prospecting
Find Electron apps with no error tracking SDK — prime targets for Sentry, Bugsnag, etc.:
curl "https://desktopinsights.com/api/v1/search?errorTrackingSdk=null&runtime=electron&platform=macos" \ -H "Authorization: Bearer di_live_your_key_here"
Competitive intelligence
Find every app using Sentry for error tracking:
curl "https://desktopinsights.com/api/v1/search?errorTrackingSdk=Sentry" \ -H "Authorization: Bearer di_live_your_key_here"
TAM sizing
Count all Electron apps across both platforms:
curl "https://desktopinsights.com/api/v1/search?runtime=electron&limit=1" \ -H "Authorization: Bearer di_live_your_key_here"
Check meta.totalCount in the response for the full count without fetching all results.
Combined filters
Find macOS Electron apps using React but no analytics SDK:
curl "https://desktopinsights.com/api/v1/search?uiFramework=React&analyticsSdk=null&runtime=electron&platform=macos" \ -H "Authorization: Bearer di_live_your_key_here"
Example response
{
"data": [{
"name": "Linear",
"slug": "linear",
"platform": "macos",
"developer": "Linear Orbit, Inc.",
"developerWebsite": null,
"runtime": "electron",
"currentVersion": "1.55.0",
"electronVersion": "35.2.1",
"appSizeBytes": 268435456,
"architectures": ["arm64"],
"dependencyCount": 38,
"sdkSummary": {
"errorTrackingSdk": null,
"analyticsSdk": null,
"featureFlagSdk": null,
"databaseSdk": "SQLite",
"uiFramework": "React",
"stateManagement": "MobX",
"paymentsSdk": null,
"authSdk": null,
"observabilitySdk": "electron-log",
"realtimeSdk": null,
"autoUpdateSdk": "electron-updater"
},
"extractedAt": "2026-03-29T20:57:11.783Z"
}],
"meta": {
"requestId": "req_f0480c69ab12",
"resultCount": 1,
"totalCount": 247,
"limit": 50,
"offset": 0,
"filters": {
"errorTrackingSdk": null,
"runtime": "electron"
}
}
}
Response fields
App object (compact)
Search results return a compact app object. Use Lookup for the full profile including technologies array.
| Field | Type | Description |
|---|---|---|
name | string | Display name |
slug | string | URL-safe identifier |
platform | string | macos or windows |
developer | string or null | Developer/company name |
developerWebsite | string or null | Developer website URL |
runtime | string | App runtime/framework |
currentVersion | string | Latest detected version |
electronVersion | string or null | Electron version if applicable |
appSizeBytes | integer | App bundle size in bytes |
architectures | string[] | CPU architectures |
dependencyCount | integer | Total detected dependencies |
sdkSummary | object | SDK detection results (see Lookup docs) |
extractedAt | string | ISO 8601 timestamp |
Meta object
| Field | Type | Description |
|---|---|---|
requestId | string | Unique request identifier |
resultCount | integer | Number of results in this page |
totalCount | integer | Total matching apps across all pages |
limit | integer | Page size used |
offset | integer | Offset used |
filters | object | Echo of applied filters (null values indicate greenfield filters) |
Pagination
Use limit and offset to page through results:
# Page 1 (first 50) curl "https://desktopinsights.com/api/v1/search?runtime=electron&limit=50&offset=0" \ -H "Authorization: Bearer di_live_your_key_here" # Page 2 (next 50) curl "https://desktopinsights.com/api/v1/search?runtime=electron&limit=50&offset=50" \ -H "Authorization: Bearer di_live_your_key_here"
Tips for Clay users
Use this endpoint with Clay's HTTP API enrichment to build prospecting lists. See the Clay Integration guide for setup instructions.
Example Clay workflow:
- Use Search to find all Electron apps without error tracking
- Map
developeranddeveloperWebsitecolumns - Chain with Apollo or Hunter enrichment to find contacts at those companies
- Build your outreach sequence