History
Version-by-version technology changes for a specific app, including release notes and dependency diffs.
GET /v1/apps/{bundleId}/history — Version-by-version technology changes for a specific app. See what dependencies were added, removed, or updated in each release, along with release notes when available.
Plan required: Team
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
bundleId | path | yes | App bundle ID (e.g., com.figma.Desktop) |
from | string | no | Start date (ISO 8601) |
to | string | no | End date (ISO 8601) |
limit | integer | no | Max versions to return (default: 20) |
include | string | no | Comma-separated: release_notes, technologies (default: both) |
Example request
curl "https://api.desktopinsights.com/v1/apps/notion.id/history?limit=5" \ -H "Authorization: Bearer di_live_your_key_here"
Response
{
"data": {
"app": {
"name": "Notion",
"bundleId": "notion.id"
},
"versions": [{
"version": "3.5.0",
"releaseDate": "2026-03-01T00:00:00Z",
"releaseNotes": {
"raw": "## What's New\n- Migrated to native SwiftUI for faster performance\n- Removed Electron dependency\n- Updated error tracking\n\n## Bug Fixes\n- Fixed crash on startup with large workspaces\n- Resolved sync conflicts with shared pages",
"summary": "Major architecture change: migrated from Electron to native SwiftUI. Updated Sentry. Fixed startup crash and sync bugs.",
"categories": null,
"sentiment": null
},
"changes": {
"added": [{ "name": "SwiftUI", "version": null, "category": "UI Framework" }],
"removed": [{ "name": "Electron", "version": "27.1.0", "category": "Runtime" }],
"updated": [{ "name": "Sentry", "from": "7.80.0", "to": "7.91.0" }],
"unchanged": 45
},
"technologies": []
}, {
"version": "3.4.2",
"releaseDate": "2026-02-20T00:00:00Z",
"releaseNotes": null,
"changes": {
"added": [],
"removed": [],
"updated": [{ "name": "lodash", "from": "4.17.20", "to": "4.17.21" }],
"unchanged": 46
},
"technologies": []
}]
},
"meta": {
"requestId": "req_hist789",
"creditsUsed": 1,
"creditsRemaining": 9996
}
}
Release notes fields
| Field | Type | Description |
|---|---|---|
raw | string or null | Developer's original release notes (markdown). null when the app doesn't publish notes (~2/3 of apps). |
summary | string or null | AI-generated one-line summary combining release notes with dependency diff. Can be generated even without raw notes. |
categories | string[] or null | AI-classified tags: feature, bugfix, performance, security, architecture. Coming soon. |
sentiment | string or null | positive, neutral, or negative. Coming soon. |
Changes object
Each version includes a diff of what changed:
| Field | Type | Description |
|---|---|---|
added | array | Technologies added in this version |
removed | array | Technologies removed in this version |
updated | array | Technologies with version changes (includes from and to) |
unchanged | integer | Count of technologies that didn't change |
Use cases
Competitive intelligence
Track when a competitor adds or drops a technology:
# When did Figma upgrade to Electron 33? GET /v1/apps/com.figma.Desktop/history?from=2026-01-01
SDK vendor sales
Identify when an app dropped a competing SDK — the perfect moment for outreach:
# Check if Notion recently changed their error tracking GET /v1/apps/notion.id/history?include=release_notes
Investor due diligence
Review the technical evolution of a portfolio company:
# Full version history for the past year GET /v1/apps/com.linear.linear/history?from=2025-03-01&to=2026-03-01