C#/PowerShell interface for interacting with the PRTG HTTP API

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name PrtgAPI -RequiredVersion 0.7.2

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deloy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More




(c) 2015 lordmilko. All rights reserved.



Prtg Sensor Device Group Probe Channel Notification Action Trigger Remove Pause Resume Check Acknowledge PowerShell Setting Property


Disable-PrtgProgress Enable-PrtgProgress Get-ObjectLog Add-Sensor Get-SensorFactorySource New-SensorParameters Copy-Sensor Copy-Group Copy-Device Get-SensorHistory Move-Object Set-ObjectPosition Test-ErrorStatus Start-SortPrtgObject Open-PrtgObject Start-AutoDiscovery New-SensorFactoryDefinition Add-NotificationTrigger Set-NotificationTrigger Edit-NotificationTriggerProperty Get-NotificationAction Get-PrtgStatus Get-NotificationTrigger Get-ModificationHistory New-NotificationTriggerParameters Remove-NotificationTrigger Set-ObjectProperty Confirm-Sensor Get-Channel Get-Group Get-Probe Get-ObjectProperty Get-PrtgClient Get-SensorTotals Update-Object Suspend-Object Rename-Object Resume-Object Set-ChannelProperty Remove-Object Get-Device Connect-PrtgServer Disconnect-PrtgServer Get-Sensor New-SearchFilter


New-Credential Connect-GoPrtgServer Get-GoPrtgServer Install-GoPrtgServer Set-GoPrtgAlias Uninstall-GoPrtgServer Update-GoPrtgCredential


This module has no dependencies.

Release Notes

New Features
-Sensors can now be created from scratch. For sensor types supported by PrtgAPI, a sensor parameters type can be used to specify all the settings that will be used for the sensor, with PrtgAPI validating that all required fields have values. For sensor types currently unsupported by PrtgAPI, facilities are provided for constructing a set of custom parameters, optionally including full levels of type safety
-PRTG event logs can now be retrieved from any object. If no object is specified, PrtgAPI automatically retrieves logs for today from the root node. Logs can be retrieved from a specific time frame, with a specific status, and can also be limited so that only a certain number of logs are retrieved

New Methods
-C#: AddSensors: Create a new sensor from a set of sensor parameters
-C#: GetLogs: Retrieve event logs for a PRTG object
-C#: GetStatus: retrieve the status, configuration and version info of a PRTG Server

New Cmdlets
-Add-Sensor: create a new sensor from a set of sensor parameters
-New-SensorParameters: create a new set of sensor parameters of a specified type
-Get-SensorFactorySource: retrieve the source sensors or channels of a Sensor Factory sensor
-Get-ObjectLog: retrieve event logs for a PRTG object (or if no object is specified, for the whole server)
-Get-PrtgStatus: retrieve the status, configuration and version info of a PRTG Server

-PS: Move-Object, Set-ObjectPosition, Simulate-ErrorStatus, Sort-PrtgObject and Start-AutoDiscovery now support -WhatIf
-PS: Clone-Sensor, Clone-Group and Clone-Device now only make 4 retries when the new object can't be resolved instead of 5
-PS: Implemented Get-ObjectSetting alias for Get-ObjectProperty
-PS: Cmdlets that perform streaming now only calculate the total number of objects needed to retrieve once instead of twice
-ExeName of EXE/XML sensors can now be retrieved and modified
-InheritTriggers property of objects can now be modified
-If PrtgAPI detects more than 20,000 objects will need to be streamed, PrtgAPI will instead stream objects "serially" (500 items at a time)
-If PrtgAPI fails to deserialize an enum value due to it posessessing a value unknown to PrtgAPI, an exception will now be thrown describing the value that was missing

-C#: Fixed a bug in GetObjectTotals wherein totals for probe objects would not be properly calculated
-C#: Fixed a bug wherein AddNotificationTriggersAsync and SetNotificationTriggersAsync were validating arguments with a synchronous method instead of an async one
-PS: Edit-NotificationTriggerProperty now throws an an exception when the specified property does not exist on the target trigger parameter type
-PS: Fixed an issue wherein New-SearchFilter would not work when specifying enum properties whose values require serialization
-SetObjectProperty now properly validates values for numeric types
-Fixed a bug wherein PrtgUrl construction would crash when an array of zero SearchFilter objects is specified
-Fixed a bug wherein NotificationTypes property of sensors, devices, groups and probes did not properly report when sensors aren't inherited
-Fixed a bug wherein PrtgAPI would crash attempting to parse a webpage containing an empty dropdown list
-Fixed an issue wherein progress would fail when performing variable progress on a chain containing Action -> Action or Action -> Object -> Action
-Fixed incorrect XmlEnum values for Access.None and Access.Inherited types

Breaking Changes
-C#: Renamed SensorParameters.StatusFilter to SensorParameters.Status
-PS: Renamed New-NotificationTriggerParameter to New-NotificationTriggerParameters
-Renamed NotificationTypes.TriggerInheritance to NotificationTypes.InheritTriggers
-SearchFilter objects now prevent specifying null as a value. If you wish to specify no value, specify an empty string
-Moved Comments property from base type ObjectTable to more derived type SensorOrDeviceOrGroupOrProbe
-Moved property Status from SensorOrDeviceOrGroupOrProbeOrMessageOrTicket to more derived type SensorOrDeviceOrGroupOrProbe


PrtgAPI is a C#/PowerShell library that abstracts away the complexity of interfacing with the PRTG HTTP API.

PrtgAPI implements a collection of methods and enumerations that help create and execute the varying HTTP GET requests required to interface with PRTG. All responses from PRTG are automatically deserialized by PrtgAPI and formatted appropriately when output to the pipeline (when using PowerShell)

All cmdlets in PrtgAPI support some level of piping, allowing you to directly chain multiple cmdlets together, further filtering search results as you go.

PrtgAPI supports a number of undocumented features, including manipulating notification triggers, and viewing and editing channel properties (error limits, etc).

PrtgAPI includes full Cmdlet Comment/XmlDoc documentation. Detailed information on any cmdlet can be found within PowerShell by running Get-Help <cmdlet> or Get-Help <cmdlet> -Full

For examples and usage scenarios, please see the Project Site.

Version History

Version Downloads Last updated
0.9.5 1,146 1/13/2019
0.9.4 114 1/3/2019
0.9.3 43,299 11/20/2018
0.9.2 409 11/1/2018
0.9.1 252 10/3/2018
0.9.0 192 8/27/2018
0.8.6 588 5/4/2018
0.8.5 34 4/23/2018
0.8.4 5 4/23/2018
0.8.3 46 4/2/2018
0.8.2 5 3/30/2018
0.8.1 56 3/11/2018
0.8.0 85 2/23/2018
0.7.3 149 11/20/2017
0.7.2 (current version) 28 11/13/2017
0.7.1 30 10/15/2017
0.7.0 13 10/6/2017
0.6.10 46 8/2/2017
0.6.9 72 4/24/2017
0.6.8 25 4/19/2017
0.6.7 12 4/11/2017
0.6.6 5 4/10/2017
0.6.5 5 4/10/2017
0.6.4 13 3/25/2017
0.6.3 5 3/22/2017
0.6.2 6 3/19/2017
0.6.1 7 3/14/2017
Show less