mgx
2.1.2
Resilient companion for Microsoft.Graph PowerShell. Adds retry, circuit breaker, rate limiting, streaming pagination, batching, and fan-out to any Graph API endpoint.
Minimum PowerShell version
7.4
Installation Options
Owners
Copyright
(c) 2026 Thomas Maillo Grome. All rights reserved.
Package Details
Author(s)
- Thomas Maillo Grome
Tags
Microsoft Graph MicrosoftGraph API Azure EntraID Resilience PowerShell Polly Retry RateLimit Batch Delta Throttling Pagination
Cmdlets
Invoke-MgxRequest Invoke-MgxBatchRequest Export-MgxCollection Expand-MgxRelation Set-MgxOption Get-MgxOption Enable-MgxResilience Disable-MgxResilience Get-MgxResilience Get-MgxTelemetry Sync-MgxDelta Get-MgxContent
PSEditions
Dependencies
This module has no dependencies.
Release Notes
v2.1.2
Fixed
- URI handling: a '#' in a path dropped everything after it, pre-encoded query values were encoded twice, piped drive and item ids went unescaped, an absolute -Uri was mangled rather than refused, and a typed parameter could repeat an option already in -Uri.
- Body serialization: enums went out as numbers, byte arrays as integer lists, TimeSpan and a Kind-less DateTime in forms Graph refuses, and a PSCustomObject body lost every property that was not a NoteProperty.
- Headers: content headers from -Headers were dropped, arrays were sent as System.String[], names merged case-sensitively, and a caller's client-request-id was doubled.
- Failed batch items wrote no error records, so -ErrorAction Stop did not stop.
- An empty, non-JSON or malformed response body ended the cmdlet with an unhandled error.
- An unexpected failure discarded the retry history explaining it, and a timed-out attempt could retry after Ctrl-C.
v2.1.1
Patch release. One fix; no feature or API changes.
Fixed
- Enable-MgxResilience ignored throttling: pacing never slowed, telemetry reported no retries, and a throttled request could fail outright.
Changed
- Under Enable-MgxResilience, a 503 or 504 on a write is no longer retried. Throttling (429) is unaffected.
FileList
- mgx.nuspec
- mgx.psd1
- Mgx.Cmdlets.pdb
- Dependencies\Polly.Core.dll
- en-US\about_Mgx.help.txt
- help\Disable-MgxResilience.md
- help\Export-MgxCollection.md
- help\Set-MgxOption.md
- help\Invoke-MgxRequest.md
- help\Sync-MgxDelta.md
- mgx.Format.ps1xml
- Mgx.Cmdlets.dll
- Mgx.Cmdlets.deps.json
- Dependencies\System.Threading.RateLimiting.dll
- en-US\about_Mgx_Tuning.help.txt
- help\Enable-MgxResilience.md
- help\Invoke-MgxBatchRequest.md
- help\Get-MgxResilience.md
- help\Expand-MgxRelation.md
- help\Get-MgxTelemetry.md
- mgx.psm1
- Mgx.Engine.dll
- Mgx.Engine.pdb
- en-US\Mgx.Cmdlets.dll-Help.xml
- help\Get-MgxContent.md
- help\Get-MgxOption.md