Microsoft 365 Apps Update History
Endpoint
GET https://api.datafornerds.io/v2/microsoft/m365-apps-update-history.json
Version history for Microsoft 365 Apps (formerly Office 365) across all update channels: Current Channel, Monthly Enterprise Channel, Semi-Annual Enterprise Channel, and Semi-Annual Enterprise Channel (Preview).
Schema
| Field | Type | Description | Example |
|---|---|---|---|
ReleaseDate | date | Release date in ISO 8601 format | 2026-05-13 |
ChannelName | string | Update channel name | Current Channel |
Version | string | Version number (4-digit year+month identifier) | 2604 |
Build | string | Build number | 19929.20172 |
FullBuild | string | Full build number prefixed with 16.0 | 16.0.19929.20172 |
Example response
{
"metadata": {
"provider": "DataForNerds",
"apiVersion": "v2",
"dataset": "m365-apps-update-history",
"recordCount": 856,
"sourceUrls": [
"https://learn.microsoft.com/en-us/officeupdates/update-history-microsoft365-apps-by-date"
],
"lastModified": "2026-05-25T06:30:00.0000000Z",
"lastCollected": "2026-05-25T06:30:00.0000000Z"
},
"data": [
{
"ReleaseDate": "2026-05-13",
"ChannelName": "Current Channel",
"Version": "2604",
"Build": "19929.20172",
"FullBuild": "16.0.19929.20172"
}
]
}
Code examples
$response = Invoke-RestMethod 'https://api.datafornerds.io/v2/microsoft/m365-apps-update-history.json'
$response.data | Where-Object { $_.ChannelName -eq 'Current Channel' } |
Sort-Object ReleaseDate -Descending | Select-Object -First 5 import requests
data = requests.get("https://api.datafornerds.io/v2/microsoft/m365-apps-update-history.json").json()["data"]
channels = set(r["ChannelName"] for r in data)
for ch in sorted(channels):
count = sum(1 for r in data if r["ChannelName"] == ch)
print(f"{ch}: {count} releases") const { data } = await fetch('https://api.datafornerds.io/v2/microsoft/m365-apps-update-history.json')
.then(r => r.json());
const current = data
.filter(r => r.ChannelName === 'Current Channel')
.sort((a, b) => b.ReleaseDate.localeCompare(a.ReleaseDate));
console.log(`Latest: Version ${current[0].Version} (Build ${current[0].Build})`); curl -s https://api.datafornerds.io/v2/microsoft/m365-apps-update-history.json \
| jq '[.data[] | select(.ChannelName == "Current Channel")] | sort_by(.ReleaseDate) | last'